Domino 9 und frühere Versionen > Entwicklung
Agent funktioniert nicht
robertpp:
Ich hab ein kleines Problem mit diesem Agent!!!
Er funktioniert nicht richtig!!! Erst wenn ich im Designer in den Agent reingehe und dann speichern sag dann versendet er mir mails er soll aber jede nacht laufen!
Kann mir wer helfen und mir sagen was ich falsch gemacht habe!
Danke robertpp
Dim s As New NotesSession
Dim db As NotesDatabase
Set db = s.CurrentDatabase
Dim view As NotesView
Dim doc As NotesDocument
Dim memo As NotesDocument
Dim rtitem As NotesRichTextItem
Dim umstellgrund As String
Set view=db.GetView("To Do")
Set doc=view.GetFirstDocument
Do Until doc Is Nothing
If Isempty (doc.Umstellungsgrund) Then
umstellgrund =" "
Else
umstellgrund = doc.Umstellungsgrund(0)
End If
If doc.Status(0) = "1.) new" Or doc.Status(0) = "2.) in work" Then
If doc.EndTime(0) +1 = Date Then
Set memo =db.CreateDocument
With memo
.Form="Memo"
.Subject="To Do entry ''"+ doc.beschreibung(0) + "'' to finish"
.SendTo=doc.who
Set rtitem = memo.CreateRichTextItem( "Body" )
Call rtitem.AppendText("Your To-Do-entry ''" + doc.beschreibung(0) + "'' should have been finished until today. Please finish the job or make an update of the enddate ")
Call rtitem.AddNewLine(2)
Call rtitem.AppendText("Subject: "+ umstellgrund+ "")
Call rtitem.AddNewLine(2)
Call rtitem.AppendDocLink(doc,doc.beschreibung(0))
Call memo.Send(False)
End With
Delete memo
Set memo =db.CreateDocument
With memo
.Form="Memo"
.Subject="To Do entry ''"+ doc.beschreibung(0) + "'' to finish"
.SendTo=doc.whom
Set rtitem = memo.CreateRichTextItem( "Body" )
Call rtitem.AppendText("The To-Do-entry ''" + doc.beschreibung(0) + "'' from ''" + doc.who(0) + "'' should have been finished until today")
Call rtitem.AddNewLine(2)
Call rtitem.AppendText("Subject: "+ umstellgrund+ "")
Call rtitem.AddNewLine(2)
Call rtitem.AppendDocLink(doc,doc.beschreibung(0))
Call memo.Send(False)
End With
Delete memo
Elseif doc.EndTime(0) = Date Then
Set memo =db.CreateDocument
With memo
.Form="Memo"
.Subject="To Do entry ''"+ doc.beschreibung(0) + "'' to finish"
.SendTo=doc.who
Set rtitem = memo.CreateRichTextItem( "Body" )
Call rtitem.AppendText("Don't forget to finish your todo-entrie ''" + doc.beschreibung(0) + "'' today ")
Call rtitem.AddNewLine(2)
Call rtitem.AppendText("Subject: "+ umstellgrund+ "")
Call rtitem.AddNewLine(2)
Call rtitem.AppendDocLink(doc,doc.beschreibung(0))
Call memo.Send(False)
End With
Delete memo
End If
End If
Set doc=view.getnextdocument(doc)
Loop
End Sub
klaussal:
... was sagt das protokoll des agenten ?
server eingetragen, wo der agent laufen soll ?
robertpp:
das Protokoll sagt :
Agent 'sendtofinish' wurde am 14.04.2003 04:00:11 gestartet
Bearbeitet alle Dokumente in der Datenbank: insgesamt 1495
1495 Dokumente gefunden, die die Suchkriterien erfüllen
LotusScript Code ausgeführt
Agent 'sendtofinish' wurde am 14.04.2003 04:00:15 beendet
Kann mir nicht vorstellen das der agent in 4 sec fertig ist!! Da passt irgenwas nicht!! Wenn ich ihn aber händisch aufrufe dann geht er!!!
robertpp
Rob Green:
hm...hast Du eine Default View definiert im Designer? Wenn man mit DocLinks arbeitet, benötigt Notes unbedingt so eine View.
eknori:
Ich behelfe mir in solchen Situationen immer damit, daß ich Protokolleinträge erzeugr, die mir dann AUfschluß darüber geben, ob der Agent an einer bestimmten Stelle überhaupt irgend etwas macht.
http://www.atnotes.de/index.php?board=9;action=display;threadid=3043;start=0
Dann kann ich zumindest testen, ob der Agent in ein IF reingeht, oder nicht.
Der Fehler läßt sich damit recht schnell finden. Ist auch ganz nützlich, wenn im produltiven mit "richtigen Daten" gearbeitet wird und dann trotz fehlerfreiem Testlauf des Agenten Probleme auftreten.
Kann man natürlich auch mit der NoteLOG class lösen :D
eknori
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln