Erst mal ein Frohes Neues Jahr, ich hoffe ihr seid alle gut reingerutscht.
So, ich sitzte leider immer noch an dem oben genannten Problem.
Ich schaffe es zwar Dokumente auf der Kalender-Ansicht zu erstellen, aber leider nicht sie Automatisch zu löschen.
Ich habe jetzt einfach mal den ganzen Code hier rein Kopiert, vielleicht fällt ja jemandem ein Fehler auf.
Das ganze läuft so ab das ich von der Kalenderansicht eine Maske öffne in der Datum1 , Datum2 , Bewirtung und Alternative Bewirtung angegeben werden können.
Beim Aufrufen des Agenten soll für jedes Datum ein Dokument erstellt werden.
Gleichzeitig sollen alte Dokumente auf dem Datum gelöscht werden.
Sub Initialize
Dim db As NotesDatabase
Dim session As New Notessession
Dim workspace As New NotesUIWorkspace
Dim view As NotesView
Dim view2 As NotesView
Dim uidoc As NotesUIDocument
Dim doc As NotesDocument
Dim dc As NotesDocumentCollection
Set db = session.CurrentDatabase
Set uidoc = workspace.CurrentDocument
Set view = db.GetView("Als Kalender")
datum1 = uidoc.FieldGetText( "InputVon" )
datum2 = uidoc.FieldGetText( "InputBis" )
bewirtung = uidoc.FieldGetText( "InputBewirtung" )
alternative = uidoc.FieldGetText( "InputAlternative" )
If datum1 > datum2 Then
Messagebox( "Das Datum ist falsch eingegeben")
End If
While Not( datum1 > datum2)
Set dc = view.GetAllDocumentsByKey( datum1, False)
Messagebox(datum1)
Set doc = dc.GetFirstDocument
'[color=993333]-----Hier ist das Problem, er kommt gar nicht in die While schleife rein-----[/color]
While Not( doc Is Nothing)
doc.Remove( True )
Wend
'------------ Erstelle Dokument-----------------
Set docText = db.CreateDocument
docText.Form = "Termineintrag"
'-------------------------------------------------------
wd = Weekday( datum1 )
If wd = 6 Then
docText.TK_HalleBelegt = "Feiertag"
End If
If wd = 7 Then
docText.TK_HalleBelegt = "Feiertag"
End If
If wd = "1" Then
docText.TK_HalleBelegt = "Feiertag"
End If
docText.TK_Datum = Datevalue( datum1 )
docText.TK_Bewirtung = bewirtung
docText.TK_Alternative = alternative
Call docText.Save(True, True)
SKIPSAVE:
Dim dateTime As New NotesDateTime( datum1 )
Call dateTime.AdjustDay( 1 )
datum1 = dateTime.DateOnly
Wend
Call view.Refresh
Gruß und Dank
Christian