Hallo zusammen.
Ich habe in einer Datenbank eine Ansicht erstellt, die Dokumente selektiert, dessen Feld "Fällig am" älter oder gleich mit dem Tagesdatum ist. In diesen Dokumenten gibt es jeweils auch ein Feld "nächster verantwortlicher Bearbeiter". Ich möchte nun mit einem Agenten alle Dokumente dieser Ansicht bearbeiten und jeweils dem "nächsten Bearbeiter" ein Erinnerungsmail einschließlich DokLink senden.
Ich habe dazu NotesViewEntryCollection genutzt, aber irgendwie habe ich noch etwas vergessen oder nicht beachtet (ich bin noch nicht so firm im Script.)
Beim Aufruf des Agenten arbeitet er alle Doks ab und verschickt auch das gewünschte Mail, aber der Agent findet anscheinend das Ende der Ansicht nicht, denn ich erhalte zu guter Letzt immer die Fehlermeldung "Function requires a valid ADT argument".
Weiß jemand von Euch Rat? Ich hab mein Script mal unten aufgeführt.
Danke im voraus.
Grabby
Sub Initialize
Dim session As New NotesSession
Dim db As NotesDatabase
Dim view_collection As NotesViewEntryCollection
Dim entry As NotesViewEntry
Dim doc As NotesDocument
Dim Maildocument As NotesDocument
Dim Bearbeiter As NotesItem
Dim Faellig As NotesItem
Dim Prozess As NotesItem
Dim Activity As NotesItem
Dim Vorgang As NotesItem
' Zugriff auf Archiv-Datenbank
Set db = New NotesDatabase("SDEBGMS0010","APPL\\L\\LWF_HelpDesk.nsf")
Set Maildocument = New NotesDocument(db)
' Zugriff auf Ansicht (OU_Terminueberwachung)
Set view = db.getview("(OU_Terminueberwachung)")
' Collection aus allen Dokumenten der gewählten Ansicht
Set view_collection = view.AllEntries
' Wenn kein Eintrag vorhanden, dann Script verlassen
If (view_collection.count < 0) Then
Exit Sub
End If
' Zugriff auf erstes Dokument der Collection
Set entry = view_collection.GetFirstEntry()
Set doc = entry.document
' Abarbeitung aller Doks in der Collection
' (Auslesen von Datum, nächstem Bearbeiter und Text + DokLink)
While Not(doc Is Nothing)
' Erstellung des RT-Items (Body-Feld)
Dim rtfItem As New NotesRichtextItem(Maildocument,"Body")
Call rtfItem.AppendText("Guten Tag. ")
Call rtfItem.AddNewline(2)
Call rtfItem.AppendText("Eine Aktivität ist zu bearbeiten, die ihr Fälligkeitsdatum erreicht hat.")
Call rtfItem.AddNewline(2)
Call rtfItem.AppendText("Vorgang: ")
' Füllen der Variablen Vorgang mit dem Vorgangsnamen
Set Vorgang = doc.GetFirstItem("InstanceOS")
Call rtfItem.AppendText(Vorgang.text)
Call rtfItem.AddNewline(2)
Call rtfItem.AppendText("Link zum Dokument: ")
Call rtfItem.AppendDocLink(doc, "Link zum Dokument")
Call rtfItem.AddNewline(2)
' Füllen der Variablen Bearbeiter mit dem Feld supOwners
Set Bearbeiter = doc.GetFirstItem("supOwners")
' Füllen der Variablen Fällig, Prozess u. Activity
Set Faellig = doc.GetFirstItem("DueDateOS")
Set Prozess = doc.GetFirstItem("ProcessOS")
Set Activity = doc.GetFirstItem("ActivityOS")
' Bearbeitung der Nachricht (Kopf)
Call maildocument.ReplaceItemValue("Form","Memo")
Call maildocument.ReplaceItemValue("Subject","Workflow: " + Prozess.text + ", Aktivität: " + Activity.text + " , Vorgang: " + Vorgang.text + ".")
' Senden der Nachricht
Call maildocument.send(True,Bearbeiter)
' Gehe zu nächstem Eintrag in der Ansicht
Set entry = view_collection.GetNextEntry(entry)
Wend
End Sub