Das Notes Forum

Domino 9 und frühere Versionen => Administration & Userprobleme => Thema gestartet von: Christian am 14.06.02 - 18:49:17

Titel: Agent der vergangene Einträge löscht
Beitrag von: Christian am 14.06.02 - 18:49:17
Hallöchen,

ich bin ein totaler Frischling und brauche Hilfe. Gibt es eine Möglichkeit einen Agenten in LN R5 zu schreiben, der die vergangenen Kalender- und Aufgabeneinträge automatisch nach einem Monat löscht, außer die Wiederholungseinträge? Wer kann mir dabei helfen oder vielleicht hat sogar jemand diesen Agenten bereits geschrieben?

Vielen Dank
Christian
Titel: Re: Agent der vergangene Einträge löscht
Beitrag von: StanPete am 15.06.02 - 17:20:40
Hi

ich hab da schon einen aber im Moment bin ich nicht auf der Arbeit , am Montag kann ich dir den mal posten.

bis denn
schönes WE @all
Titel: Re: Agent der vergangene Einträge löscht
Beitrag von: Christian am 17.06.02 - 16:45:14
Hier die Lösung:

Sub Initialize
     Dim db As NotesDatabase
     Dim NotesView As notesview
     Dim session As New NotesSession
     Dim boxType As Long, answer As Integer
     Dim collectionB As NotesDocumentCollection
     Dim doc As NotesDocument
     
     Set db = session.CurrentDatabase
     Set NotesView = db.GetView( "($Calendar)" )
     On Error Goto Errhandle
     
     Datum = Cdat(Inputbox$("Bitte geben Sie ein Datum ein. (Bsp:      17.06.2002)","Termine aufräumen","17.06.2002"))
     Set doc = NotesView.Getfirstdocument
     Messagebox "Alle Termine vor dem " +Datum +" werden jetzt ermittelt. Jahrestage werden nicht ermittelt. Bitte warten Sie.",0,"Termine aufräumen"
     Set collectionB = db.FTSearch("Business reports",1)
     
     
     Do  Until Doc Is Nothing
           If Doc.StartDate(0)  <>"" And Doc.Repeats(0) = "" Then
                 If  Cdat(Doc.StartDate(0)) < Datum Then
                       DateCounter = DateCounter +1
                       Call collectionB.AddDocument(doc)
                 End If
           End If
           
           Set Doc = NotesView.GetnextDocument (doc)
           
     Loop
     
     
     
     If DateCounter = Cint(0) Then
           Messagebox "Keine Termine gefunden",0,"Information"
     Else
           answer1% = Messagebox(DateCounter + " Termine gefunden. Alle Termine bis zum "+Str(datum)+" löschen ?", 4, _
           "Termine löschen?")
           If answer1% = 6 Then
                 
                 answer2% = Messagebox("Dieser Vorgang kann nicht Rückgängig gemacht werden. Sind Sie sicher ?", 4, "Termine löschen?")
                 If answer2% = 6 Then
                       Call collectionB.RemoveAll(True)
                       Messagebox "Es wurden "+DateCounter + " Dokumente gelöscht.",0,"Gelöscht."
                 End If
           End If
     End If
     
     Exit Sub
  ' The user did not make a valid entry.
  ' Display the error number and error message.
Errhandle:
  ' Use the Err function to return the error number and
  ' the Error$ function to return the error message.
     Messagebox "Fehler bei Eingabe. ",0,"Fehler"
     Exit Sub
     
     
End Sub
Titel: Re: Agent der vergangene Einträge löscht
Beitrag von: luna am 18.06.02 - 10:59:52
hallo christian,

und wo GENAU stellt man das jetzt rein?

gruss,
daniela  ::)
Titel: Re: Agent der vergangene Einträge löscht
Beitrag von: StanPete am 18.06.02 - 12:52:09
Hi

du kannst den Code einfach hinter einen Button legen oder einen Agenten damit beauftragen  :) (wollt ich schon immer mal so sagen)

Wenn du einen Agenten mit diesem ScriptCode füllst dann sollte der Agent aus dem Menü aufgerufen werden können.

Ich hab den Code bei mir hinter einem Button in der Ansicht Calender liegen.

Ich hoffe das hilft dir weiter


Gruß

Achim
Titel: Re: Agent der vergangene Einträge löscht
Beitrag von: luna am 18.06.02 - 13:25:59
jou, danke  ;D