1 (a): Zu Beginn des Agents fragst Du als erstes das aktuelle Datum ab und beendest den Agent, wenn das nicht der 1. des Monats ist
(b): Du stellst sicher, dass der Agent auch an einem späteren Tag läuft, wenn der Agent am 1. des Monats "verhindert" war
(Speicherung des letzten erfolgreichen Agentlaufs)
(c) Du stellst sicher, dass der Agent nicht "aus Versehen" am 1. ein zweites Mal laufen kann (siehe 1 (b))
2: Beispielsweise mit einem NotesDatabase.Search (Formelvergleich von Monat und Jahr des Werts des Wiedervorlage-Items).
HTH,
Bernhard
also das unter 1 jetzt mal außen vor gelassen. Da ich leider noch nie ein Lotus-Script-Seminar hatte, stehe ich da leider etwas auf dem Schlauch. Vielleicht könnt ihr mir dabei helfen. Mein Code (fehlerhaft) sieht jetzt so aus:
Sub Initialize
Dim session As New NotesSession
Dim db As NotesDatabase
Dim collection As NotesDocumentCollection
Dim newsletter As NotesNewsLetter
Dim doc As NotesDocument
Dim Wiedervorlage As NotesDateTime
Set MonthWV = Month(Wiedervorlage)
Set YearWV = Year (Wiedervorlage)
Dim profiledoc As NotesDocument
Set profiledoc = db.GetProfileDocument("Konfiguration")
Set db = session.CurrentDatabase
Set collection = db.Search (MonthWV=Month(Today) & YearWV=Year(@Today))
If ( collection.Count > 0 ) Then
Set newsletter = New NotesNewsLetter( collection )
Set doc = newsletter.FormatMsgWithDoclinks( db )
doc.Form = "Memo"
doc.Subject = "Wiedervorlage Fortbildung(en)"
Call doc.Send( False, profiledoc )
End If
End Sub