Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: mwue am 28.11.08 - 10:07:34

Titel: Agent mit Trigger Nach Eingang neuer Mail
Beitrag von: mwue am 28.11.08 - 10:07:34
Hallo liebes Forum,

ich habe einen Agenten geschrieben, der eine Lotus Script Bibliothek aufruft, die neue Mails in Ordner sortiert, nach Text im Body Feld sucht, ein Feld Status setzt und geg. falls - im Fall Status = failure - eine Mail an den Admin losschickt. Auslöser für den Agenten ist "nach Eingang neuer Mail".
Allerdings bearbeitet er manche E-Mails mehrmals, so dass der Admin für eine Mail mehrere E-Mails bekommt.

Der Agent ist mit der Server ID signiert, die DB liegt nur auf diesem Server.
Der LS-Code sieht vom Prinzip her so aus:

Dim ...

' Bilden der Document Collection = alle bislang aufgelaufenen Mails
   Set dc = db.UnprocessedDocuments
   Set doc = dc.GetFirstDocument()
   
   While Not(doc Is Nothing)

                 ....
                 Set doc = dc.GetNextDocument(doc)
         
   Wend  ' Ende Schleife über alle Mails

An was kann das liegen ?

Viele Grüße
Marion
Titel: Re: Agent mit Trigger Nach Eingang neuer Mail
Beitrag von: eknori am 28.11.08 - 10:25:32
Zitat
An was kann das liegen ?
Evtl an den "...." ??

Wenn das doc verändert wird, muss es auch gespeichert werden ...
Titel: Re: Agent mit Trigger Nach Eingang neuer Mail
Beitrag von: TRO am 28.11.08 - 10:26:11
Fehlt da eventuell noch ein notesDocumentCollection.UpdateAll ?
Damit die Docs in der coll als vom Agent verarbeitet gekennzeichnet werden.

Thomas
Titel: Re: Agent mit Trigger Nach Eingang neuer Mail
Beitrag von: Glombi am 28.11.08 - 10:59:10
Fehlt da eventuell noch ein notesDocumentCollection.UpdateAll ?
Damit die Docs in der coll als vom Agent verarbeitet gekennzeichnet werden.

Thomas
Das fehlt definitiv.

Aus der Hilfe (zu Call notesSession.UpdateProcessedDoc( notesDocument ) )
This method marks a document so subsequent invocations of the same agent recognize the document as processed. You must explicitly mark a document with this method. No implicit marking occurs in a LotusScript agent.

Andreas
Titel: Re: Agent mit Trigger Nach Eingang neuer Mail
Beitrag von: mwue am 28.11.08 - 11:13:21
@Glombi, @Tro:
Super, vielen Dank der Befehl  "notesSession.UpdateProcessedDoc( notesDocument ) "  fehlt in meinem Code, das füge ich gleich mal ein.  :) :) :)

(@eknori: Das Speichern des docs war allerdings schon drin auch wenn es hier nicht stand   :) - dennoch vielen Dank für den Tipp, denn das habe ich auch schon öfter mal vergessen und mich dann gewundert ....

Grüßle
Marion