Domino 9 und frühere Versionen > ND7: Entwicklung

Wann läuft der Agent?

(1/3) > >>

botschi:
Hallo!

Kann man Agenten, die periodisch sind und mehrmals am Tag laufen, abfragen wann sie das nächste mal laufen?

Meine Idee dahinter:
Es soll Usern ermöglicht werden Dokumente zu berechnen, auf die sie normalerweise kein Schreibrecht haben. Deswegen wird ein Antrag gestellt, der von einem Agenten (mit der Server-ID signiert) abgearbeitet wird. Der Agent läuft alle 30 Minuten.

Nachdem der User einen Antrag erstellt hat, würde ich ihm gerne mitteilen "in xx Minuten ist das Dokument berechnet" oder "die nächste Berechnung erfolgt um xx.xx Uhr, wollen die wirklich einen Antrag stellen" oder was auch immer.
Geht das? Man kann im Adminclient ja sehen, wann der nächste Lauf ansteht.

Danke für Hilfe!
Gruss, Matthias

Driri:
Ruf doch einfach den Agenten direkt auf. Du kannst dem Agenten per

Call agent.Run(doc.NoteID)

die NoteID des Dokumentes mitgeben, das verarbeitet werden soll und im Agenten selber dieses dann per

Set doc = db.GetDocumentByID(agent.ParameterDocID)

zuweisen.

botschi:
Denn muss der User aber warten, bis der Agent fertig ist. Das möchte ich vermeiden.
Wenn der Server den Agenten per Antrag ausführt, dann arbeitet der User weiter und bekommt irgendwann ne Mail "Berechnung fertig"

Driri:
Oki, dann könntest Du höchstens mit NotesAgent.LastRun den letzten Lauf auslesen und dann daraus den nächsten Lauf berechnen.

koehlerbv:
Man könnte auch ein Konsolenkommando absetzen (ACHTUNG - dafür sind aber entsprechende Berechtigungen erforderlich!) und dessen Replik auswerten.

Abgesehen davon: GENAU kann man es dem User sowieso nicht sagen, da der Agent-Manager seinen Stolz hat und je nach Server-Auslastung selber entscheidet, wann er den nächsten Agent lossemmeln lässt. Und zwischen Agent.LastRun + 30 Minuten und dem tatsächlichen nächsten Agentstart können durchaus einige Minuten Differenz liegen.

Alternative: Du triggerst den Agenten so, dass er auf neue / modifizierte Dokumente reagiert. Dann kannst Du dem User mit Fug und Recht sagen: "Ihre Anfrage wird schnellstmöglich beantwortet" (nämlich dann, wenn dem Agent-Manager danach ist  ;D)

HTH,
Bernhard

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln