Autor Thema: Dokumente nach Bedingung archivieren bzw. in andere DB kopieren/verschieben  (Gelesen 2935 mal)

Offline bob

  • Aktives Mitglied
  • ***
  • Beiträge: 166
  • Geschlecht: Männlich
  • R5
Hi,

den Tipp von Ata (Beitrags-Link) halte ich für wertvoll, daher poste ich das hier nochmal  :)

Also wie z.B. alle Dokumente archivieren, die den Status "Archiv" haben?

Mit diesem angepassten Agenten werden alle Doks der DB in eine andere DB kopiert und in der ursprünglichen DB gelöscht:


Sub Initialize
   '##############################################################################
   'Archiviert die Dokumente in die angegebene arcdb, wenn diese den Status "Archiv" haben.
   '##############################################################################   
   
   Dim session As New NotesSession
   Dim db As NotesDatabase
   Dim arcdb As New NotesDatabase("" , "archiv.nsf")
   Dim dc As NotesDocumentCollection
   Dim doc As NotesDocument
   Dim wert As Variant
   Dim nextdoc As notesdocument
   
   Set db = session.CurrentDatabase
   Set dc = db.AllDocuments
   Set doc = dc.GetFirstDocument
   
   Do Until doc Is Nothing
      Set nextdoc = dc.getnextdocument(doc)
      '## Hier das Feld angeben welches das Kriterium zum Archivieren enthalten soll      
      wert = doc.GetItemValue("Status")
      '## Hier den Wert angeben den das oben angegebene Feld enthalten soll zum archivieren
      If wert(0) = "Archiv" Then
         Call doc.CopyToDatabase(arcdb)                
         '## folgenden Befehl rausnehmen, wenn das archivierte Dok nicht in der Quell-DB gelöscht werden soll !!         
         Call Doc.Remove( True )      
      End If
      Set doc = nextdoc
   Loop
   
End Sub   


bye,
Bob
« Letzte Änderung: 22.06.03 - 00:16:50 von bob »

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz