1) Schon mal mit dem Debugger durchgesteppt, in welcher Zeile der Fehler auftritt?
2) Ein bissl Errorhandling würde auch nicht schaden.
3) DENKEN !!!!
Dim doc As NotesDocument
...
Forall item In doc.Items
Wo weist Du denn doc einen Wert zu???????
Damit bist du micht mehr im Frontend, also alles was mit UIDoc zu tun hat fällt schon mal flach.
Im Agent gibt es eine Eigenschaft auf was der abzielen soll.
Auslöser: Ereignis, Auswahl im Menü Aktionen, Ziel alle ausgewählten Dokumente.
Script Rumpf, ohne Anspruch auf Vollständigkeit und Fehlerfreiheit:
doccollection = db.unprocesseddocuments
set doc = doccollection.getfirstdocument
do while not doc is nothing
set olddoc = doc
' mach deine überprüfung hier.
call doc.save(true,false)
set doc = doccollection.getnextdocument(olddoc)
loop