Hallo liebes Forum,
ich habe einen sehr einfachen Agenten in Formelsprache geschrieben (da mir Script nicht so liegt), der auch funktioniert, aber aus mir unerfindlichen Gründen plötzlich nicht mehr Ergebnisse ausgibt.
Der Agent soll eine Erinnungsmail generieren, wenn ein bestimmter Termin verstrichen ist. Die Erinnerungsmail soll an eine Notes-Adresse gehen, die in einem Namensfeld in einem Dokument genannt ist. Der Agent soll periodisch in einer Domino 8.5.3FP4 Umgebung ausgeführt werden. Manchmal funktioniert der Agent und manchmal nicht. Im Agent-Protokoll steht wenn er nicht funktioniert, dass 0 Dokumente gefunden wurden, die die Suchkriterien erfüllen, obwohl entsprechende Dokumente vorhanden wären.
Wird im Agent z.B. eine unrelevante Änderung (z.B. ein Leerzeichen gelöscht) vorgenommen, dann kann es sein, dass der Agent funktioniert. Dieser sporadische Fehler tritt sowohl bei der Server-Ausführung als auch bei manueller Ausführung auf kann aber auch sporadisch in beiden Ausführungsvarianten funktionieren. Info: Der Server darf auch Mails versenden. Hat jemand eine Idee? Einen fast identischen Agenten setzen wir seit einigen Jahren ohne Probleme ein. Für mich sieht es nach einem Notes-Bug aus und ich weiß nicht mehr wo ich suchen soll.
Vielen Dank für eure Hilfe!
Grüße
Heiko
Hier der Code:
REM {Dieser Agent erstellt erinnerungen per E-Mail, wenn der Erledigungstermin unbearbeitet verstrichen ist. Die Fälligkeit und die Empfänger können unten ggf. angepasst werden.
REM {Hier werden die benötigten Felder aus der DB-Maske geholt und entsprechend vorgehaltenl};
FIELD K_Bediener := K_Bediener;
FIELD WVL_1 := WVL_1;
FIELD D_erledigt := D_erledigt;
FIELD T_Prüfungshandlung := T_Prüfungshandlung;
FIELD D_Nummer := D_Nummer;
REM {Hier wird die Fälligkeit festgesetzt z.B. -1 bedeutet: Ein Tag nach Fälligkeit lt. WVL aus dem Revisionsprotokoll};
faellig := @Adjust(@Today;0;0;-1;0;0;0);
REM {Hier wird geprüft, ob Wiedervorlage mit Fälligkeit übereinstimmt (Formel wird nur einmal bei Fälligkeit true/gültig) und ob das Protokoll noch nicht abgeschlossen ist durch ein leeres Erledigungsdatum.};
REM {Wenn alles war ist, wird eine E-Mail generiert an die verantwortliche Stelle sowie obligatorisch aus Revisionsgründen an eine Protokoll-DB als Blindkopie. Die oben aus der Maske gezogenen Werte z.B. T_Prüfungshandlung werden in den E-Mail-Body eingebaut und es wird zum Schluss ein Link auf das entsprechende Dok angefügt.};
@If( faellig >= WVL_1 & D_erledigt = ""; @MailSend(K_Bediener;"";"$Log";"1. Erinnerung eines abgelaufenen Erlediungsprotokolls von der IR [al90]";"Ihr Erledigungsprotokoll (Nr.: " + @Text(D_Nummer) + ") der Prüfungshandlung: ' " +@Text(T_Prüfungshandlung)+ "' ist zum "+ @Text(WVL_1) +" abgelaufen." + @NewLine + @NewLine + "Bitte bearbeiten Sie das als Dokumentenlink angefügte Erledigungsprotokoll. Sollte eine Fristverlängerung* erforderlich sein, beantragen Sie diese bitte über den entsprechenden Button im Erledigungsprotokoll. " + @NewLine + @NewLine + "Ihr Vorgesetzter wird nach 5 Kalendertagen und der Vorstand nach 10 Kalendertagen bei Nichtbearbeitung automatisch informiert. " + @NewLine + @NewLine + "* Hinweis zur Fristverlängerung " + @NewLine + "Bitte beachten Sie, dass bei der 1. Fristverlängerung ihr Vorgesetzter / Bereichsleiter eine Kopie der Verlängerung zur Kenntnis erhält. Sollte eine 2. Verlängerung notwendig sein, wird zusätzlich der Vorstand informiert. " + @NewLine + @NewLine +"Hinweis: Diese Mail wurde elektronisch erstellt." + @NewLine + @NewLine +"Bitte klicken Sie auf den Dokumentenlink -->" ;"";[IncludeDoclink]);"");SELECT @All;