Hallo Notes-Forum,
ich programmier gerade an einem Agenten rum, der im Backend laufen soll und bei bestimmten Dokumenten Feldinhalte löschen soll. Das Ganze dient der Anonymisierung von Daten. Hier ist zunächst mal der komplette Code:
Sub Initialize
Dim session As New NotesSession
Dim db As NotesDatabase
Dim view As NotesView
Dim doc As NotesDocument
Dim weekDateTime As NotesDateTime
Dim modifiedDateTime As NotesDateTime
Set weekDateTime = New NotesDateTime( "Today" )
Set modifiedDateTime = New NotesDateTime( "" )
Call weekDateTime.AdjustDay( -1 )
Set db = session.CurrentDatabase
Set view = db.GetView ("Abgeschlossene Dokumente")
Set doc = view.GetFirstDocument
While Not doc Is Nothing
modifiedDateTime.LSLocalTime = doc.LastModified
If weekDateTime.TimeDifference( modifiedDateTime ) > 0 Then
doc.Namenserweiterung = "Daten gelöscht"
doc.Anschrift = "Daten gelöscht"
doc.GebDatum = "Daten gelöscht"
doc.Kontonummer = "Daten gelöscht"
doc.Vorhaben = "Daten gelöscht"
doc.Ansatz_1 = "Daten gelöscht"
doc.angesprochen_1 = "Daten gelöscht"
doc.Ansatz_2 = "Daten gelöscht"
doc.angesprochen_2 = "Daten gelöscht"
doc.Ansatz_3 = "Daten gelöscht"
doc.angesprochen_3 = "Daten gelöscht"
doc.anonymisiert = "ja"
doc.History = doc.History(0) & Chr(13) & Str (Now) & " Dokument anonymisiert"
Call doc.Save (True, True)
End If
Set doc = view.GetNextDocument(doc)
Wend
End Sub
Der Agent läuft fehlerfrei durch und im Debugger kann ich auch sehen, dass die entsprechenden Items gesetzt (anonymisiert) werden, aber wenn ich die Dokumente später im Client öffne, stehen noch die alten Werte in den Feldern.
Irgendwie stehe ich gerade total auf dem Schlauch. Kann mir vielleicht jemand auf die Sprünge helfen?
Viele Grüße
Kirschi