Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: PAR003 am 18.06.03 - 11:27:44
-
Hi Hallo,
Ich bin FOS-Praktikant und beschäftige mich derzeit mit der Notesprogrammierung.
Meine Frage ist, wie kann Ich einen Agent aufbauen, so dass er alle Dokumente überprüft und diese nach Kriterien ändert.
Des weiteren haeb Ich vorher noch nie einen Agent erstellt.
Ich weiss nur das man unter Declarations seine Variablen deklariert und unter Initialize seine Funktionen aufruft. Unter Options bindet man seine Libbrarys ein.
Aber wofür steht das Terminate?
Zurück zum Agent.
Meine Frage lautet, wie sehe die Syntax für eine Funktion(in Lotus Script) aus, wenn man alle Dokumente überprüfen will?
Die Kriterien sind folgende, es geht nach Zeit, nach Urlaub und nach einem Status (Sind alles Felder).
Dieser Agent soll alle Dokumente ("IMMER") überprüfen und aktualisieren( Wenn der Status wieder geändert werden soll) und auf jeden Fall eine Infomail an den User schicken, der als nächstes auf das Dokument zugreifen will.
Die Datenbank ist eine digitalisierte Bücherei.
Ich hoffe Ich konnte Ihnen ein paar nützliche Informationen vermitteln und Ich hoffe Sie sind davon nicht genervt, das Ich mit so etwas ankomme.
Ich danke Ihnen schon einmal im Voraus.
MfG PAR003
-
... meine idee (es gibt bestimmt noch andere):
view erstellen, in der alle in frage kommende dokumente stehen.
im agenten (initialize) alle dokumente mit getfirstdocument/getnextdocument bearbeiten und save.
dazu gibt es in der hilfe ganz gute beispiele.
-
Hi, Ich habe mal versucht erst mal einen Agent zu entwickeln.
Ich will erstmal zwei Werte aus der Maske auslesen lassen. Dannach soll überprüft werden, ob der Status verändert wurde, oder ob es Urlaub gibt und man das Buch später abholen kann.
Hier ist mein Anfangs - Code:
In Options steht:
Option Declare
Option Public
Option Base 1
Option Compare Text
in Declarations steht:
Dim strName_T As String
Dim strTel_T As String
Dim strserver As String
Dim strview As String
Dim strForm As String
Dim strdbPath As String
Dim strMSGbox As String
Dim strUmbruch As String
Dim db As NotesDatabase
Dim doc As NotesDocument
Dim View As NotesView
Dim entry As NotesViewEntry
Dim nav As NotesViewNavigator
in Initialize steht folgendes:
Sub Initialize
Dim strName_T As String
Dim strTel_T As String
Dim strserver As String
Dim strview As String
Dim strForm As String
Dim strdbPath As String
Dim strMSGbox As String
Dim strUmbruch As String
Dim entry As NotesViewEntry
Dim nav As NotesViewNavigator
Dim db As NotesDatabase
Dim doc As NotesDocument
Dim s As New NotesSession
Dim ws As New NotesUIWorkspace
Dim View As NotesView
strUmbruch=Chr(13)+Chr(10)
Set doc=ws.currentdocument.Document
Set doc = View.GetFirstDocument
Set view = db.GetView( "Open\By Project & Priority" )
Set entry = nav.GetFirstDocument
Set doc = view.GetFirstDocument
If doc.HasItem("Subject") Then
While Not(doc Is Nothing)
Forall subject In doc.GetItemValue("Subject")
Messagebox subject
End Forall
Set doc = view.GetNextDocument(doc)
Wend
End If
strName_T=doc.Name_T(1)
strTel_T=doc.Tel_T(1)
strMSGbox="Name:"&strName_T &strUmbruch & "Telefon:" &strTel_T
Msgbox strMSGbox
End Sub
Jetzt kommt immer die Meldung, dass die Variable nicht gesetzt und nicht deklariert worden sei :-*
Ich danke Ihnen für Ihren Tipp
MfG PAR003
-
schon genauer etwas...das ist nicht der Fehler.
Ich denke zB kommt der Fehler, bei
"Set view = db.GetView( "Open\By Project & Priority" )"
was ist "db"? Ist nirgends gesetzt zB.
Schmeiss den Debugger an und poste mal genau die Zeile mit dem Fehler
-
... ich denke der von Rob angesprochene Fehler war die Ursache für deine Fehlermeldung - hat sich das Posting jetzt erledigt?
... wenn ja, dann könntest du das hier kurz posten und das Posting auf erledigt stellen... danke...
ata