Domino 9 und frühere Versionen > Entwicklung

Agent doppelte Dokumente löschen

(1/5) > >>

MrMagoo:
Hallo,

ich versuche gerade einen Agenten zu programmieren, der eine Ansicht nach doppelten Dokumenten durchsucht. Z.B. alle Dokumente löscht, die den gleichen Titel haben (Id geht leider nicht, da es sich um Kopien handelt.) Also ich schaffe es bis jetzt bestimmte Dokumente zu löschen. Wie bekomme ich den Vergleich von Titel1 zu Titlel2 und zu allen anderen Titeln hin?

Danke und Gruß

klaussal:
... mal so ins unreine gedacht:
erstes doc in der ansicht greifen, titel in einen string schieben. dann in einer inneren schleife den rest der docs lesen und bei = löschen. viewrefresh nicht vergessen. jetzt das nächste doc lesen und wieder die innere schleifen laufen lassen. :-\

Don Pasquale:
Hallo Magoo,

ich habe hier eine Funktion die auf DOC_ID überprüft.
Überall wo DOC_ID steht mußt Du deinen Titel
einsetzen. Teste das doch mal.

Ciao
Don Pasquale


Function DoesDOC_IDexists(Byval DOC_ID As String) As Integer
   
   Dim VIEW_BY_DOC_ID As String
   VIEW_BY_DOC_ID   = "DOC_ID"
   
   Dim Anzahl As Integer
   Dim session As New NotesSession    
   Set db = session.CurrentDatabase
   Set view = db.GetView(VIEW_BY_DOC_ID)
   Dim dc As notesdocumentcollection
   Set dc = view.GetAllDocumentsByKey(DOC_ID, False)
   
   Print DOC_ID
   ANZAHL = dc.Count
   
   If ANZAHL = 0 Then
      DoesDOC_IDexists = 0
   Else
      DoesDOC_IDexists = 1
   End If
End Function

MrMagoo:
@Don Pasquale

habe ich versucht, der macht aber irgendwie nix. Was passiert genau, sollte da ne Ausgabe oder so kommen?

Gruss

klaussal:
... nö, das teil von donpasquale setzt nur ein feld auf 0 oder 1, je nachdem ob die doc_id mehrmals vorkommt oder nicht...

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln