Domino 9 und frühere Versionen > ND6: Entwicklung
Nicht indizierte Dokumente
Badhei:
Hallo,
wie kann ich über Script ermitteln wieviele Dokumente einer Datenbank nicht indiziert sind?
Ich möchte sicherstellen das alle Dokumente indiziert sind bevor ich meine Script laufen lasse damit auch alle Suchergebnisse richtig sind.
Ich hoffe jemand hat eine Idee.
Danke!
koehlerbv:
Die NotesDatabase class bietet Dir hierzu keine Möglichkeiten. Du kannst aber mit NotesDatabase.UpdateFTIndex zwangsweise eine Aktualisierung des FTI vornehmen (und dies mit LastFTIndexed auch überprüfen.
Bernhard
Badhei:
Wenn ich ein UpdateFTIndex mache habe ich für den aktuellen Scriptlauf nicht alle Dokumente im Index. Was bedeutet das die Suchergebnisse teilweise nicht richtig sind.
Ich möchte dann aber abbrechen und dem Benutzer einen Hinweis geben das zuerst ein Update des Index laufen muß. Es ist leider wichtig das alle Dokumente im Index enthalten sind damit der Benutzer richtige Ergebnisse erhält.
Über die Eigenschaften der Datenbank kann ich mir Anzeigen lassen wieviele Dokumente nicht indiziert sind. Es muß doch also irgendwie eine möglich geben dies nachzubilden. Dann werd ich mal weitersuchen.
Badhei:
hier meine Lösung:
Dim T As New NotesDateTime("")
T.LSLocalTime = db.LastFTIndexed
UnindexedCount = db.Search({@All}, T, 0).Count
If UnindexedCount > 0 Then
Call db.UpdateFTIndex(True)
Msgbox "Der Index der Datenbank ist nicht aktuell!",48,"HINWEIS"
Exit Sub
End If
koehlerbv:
Von hinten durch die Brust ins Auge - nicht schlecht !
Hast Du schon geprüft, ob das auch bei Repliken funktioniert ? Das Modifikationsdatum der Dokumente hat dann ja nicht zwangsweise etwas zu tun mit dem jeweiligen FTI der DB (falls die Docs woanders erstellt / modifiziert wurden) ? Bin mir da aber nicht sicher, wie dbSearch da genau verfährt.
Was machst Du konkret, wenn der FTI nicht auf dem aktuellsten Stand ist ? Nur diese Meldung ausgeben ?
Bernhard
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln