Domino 9 und frühere Versionen > ND8: Entwicklung

[gelöst] User defined Error 4207 in Agent

(1/1)

werfi:
Hi,

ich arbeite mich gerade in LS ein und erstelle einen eigentlich simplen Agenten zum Löschen von Dokumenten.
In der Schleife fällt der Agent beim holen des zweiten Dokuments aus die Nase.

-- Code --
Set db = s.CurrentDatabase
Set view = db.GetView("$ReplyStat")
view.AutoUpdate = False
z = 0
   
Set doc = view.GetFirstDocument
   
Do While Not doc Is Nothing
   If doc.form (0) = "OutOfOfficeStat" Then
      vDate = doc.Created
      If vDate < Today () Then
         z = z +1
         Print "Lösche Dokument Nr. " & z & "  - Benutzer: " & doc.user (0)
         Call doc.Remove (True)
      End If         
   End If
   Set doc = view.GetNextDocument (doc)
Loop
-- Ende Code ---

In der Zeile "Set doc = view.GetNextDocument (doc)" bekomme ich ein "User defined Error 4207",  -> lsERR_NOTES_NEED_ADT =  4207.

Kann mir jemand sagen, was ich hier falsch mache?

Danke & Gruß
Markus

Tode:
Ja, Du ziehst Dir selbst Deine Referenz unter dem Hintern weg....

Hier:
Set doc = view.GetNextDocument (doc)
Referenzierst Du auf ein Doc, das bereits gelöscht wurde.

Also:

--- Code: ---Set db = s.CurrentDatabase
Set view = db.GetView("$ReplyStat")
view.AutoUpdate = False
z = 0
   
Set doc = view.GetFirstDocument
   
Do While Not doc Is Nothing
   Set docNext = view.GetNextDocument (doc)
   If doc.form (0) = "OutOfOfficeStat" Then
      vDate = doc.Created
      If vDate < Today () Then
         z = z +1
         Print "Lösche Dokument Nr. " & z & "  - Benutzer: " & doc.user (0)
         Call doc.Remove (True)
      End If         
   End If
   Set doc = docNext
Loop
--- Ende Code ---

werfi:
Danke!
Es hat funktioniert!

Navigation

[0] Themen-Index

Zur normalen Ansicht wechseln