Kennt jemand eine knackige Methode,
mit der ich in einer DB doppelte Dokumente finden und die überzähligen Dokumente löschen kann?
Doppler finden
- lotusfee
- Erledigt
-
-
Hi,
Was sind in einer Datenbank doppelte Dokumente?
Anhand welcher Kriterien willst Du dieses festlegen?Andreas
-
ich habe eine DB, in die ich regelmäßig dokumente importiere.
Dabei wurde aber in der Vergangenheit nicht geprüft, ob es Dokumente mit diesen Feldinhalten (wir sprechen von 5 Feldern, die verglichen werden müßten) schon gibt.
Jetzt möchte ich einen Agenten schreiben, der mir diese Dokumente durchgeht, vergleicht und dann die überzähligen Dokumente löscht.
-
Ansicht, kategorisiert nach diesen 5 Feldern als ein Text, dann eine Spalte mit Anzahl und dann kannst du per ViewNavigator die Kategorien durchgehen und überall wo dann ein Wert > 1 steht hast du doppelte und kannst diese dann entfernen
-
Der Teil mit "und kannst diese dann entfernen" interessiert mich genauer.
Ich müßte ja doch eins davon behalten....
PutAllInFolder oder RemoveAll verarbeitet ja alle. -
Überlegung:
Wenn man mehrere Dokumente findet (collection), dann könnte man doch das erste davon in ein neues Dokument kopieren und dann die gesamte Collection löschen (da sich das neue Dokument ja nicht darin befindet.
Oder? -
Oder man überspringt einfach das erste und löscht alle weiteren
-
aber die mußt du ja dann einzeln löschen, oder?
-
Ja und ?
-
wieso einzeln?
Mit Call notesDocumentCollection.DeleteDocument( document ) kannst du ein Dokument aus einer Collection entfernen (nicht aus der DB!) und dann mit Call notesDocumentCollection.RemoveAll( force ) alle Dokumente, die noch in der Collection sind löschen.
Gruß
Dirk -
Hey!
Das kling gut. Das muß ich mal ausprobieren. -
Wieso geht das nicht mit einer NotesViewEntryCollection????
-
Hat doch keiner gesagt.
Klar geht das auch mit einer ViewEntryCollection -
Oh!
Du meinst Call notesViewEntryCollection.DeleteEntry( deleteentry )
anstelle von ...DeleteDocument?! -
btw
Was ist günstiger/schneller?
NotesViewEntryCollection oder NotesDocumentCollection? -
Solange dir die Einträge im ViewEntry ausreichen ist die Variante schneller weil sie eben nur über den View Index gehen.
Sobald du dir aber das darunterliegende Dokument holen musst ist es ziemlich egal -
Ich brauche ja nur dann die Dokumente, wenn der Count mehr als 1 Eintrag vermeldet....