Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: jr am 16.05.03 - 17:48:57

Titel: Startzeitpunkt für periodische Agenten
Beitrag von: jr am 16.05.03 - 17:48:57
Hallo,

hatte das Thema wohl im falschen Forum gepostet, sorry. Hoffe, das es jetzt richtig ist.



Heute habe ich ein etwas kniffliges Problem und ich bin mir nicht sicher, ob es überhaupt eine Lösung gibt:

In meinen Datenbanken habe ich für jeden periodischen Agenten ein Konfigurationsdokument. Hier kann ich einstellen, auf welchem Server der Agent laufen soll und ihn aktivieren oder deaktivieren. Dadurch muss der Anwender nicht ins Design gehen und kann den Agenten aus der "normalen" Oberfläche heraus aktivieren.

Das funktioniert auch einwandfrei. Jetzt aber das Knifflige: Gibt es irgend eine Möglichkeit auch die Laufzeit des Agenten von hier aus einzustellen? Also zum Beispiel "Periodisch täglich, ab 6:00 alle 2 Stunden".

Die Klasse NotesAgent stellt hier nichts zur Verfügung. Aber vielleicht geht es über eine API-Funktion oder etwas ähnliches?

Derzeit behelfe ich mir so, dass ich mehrere Agenten mit unterschiedlichen Laufzeiten vorhalte, und der Benutzer einen davon auswählt. Ist aber nur eine Krücke und gefällt mir nicht besonders.

Hier habe ich einmal kurz den Code, mit dem ich den Agenten aktiviere:


Sub ChangeAgentState()
    Dim    ws         As New NotesUiWorkspace
    Dim    doc        As NotesDocument
    Dim    agent      As NotesAgent

    On Error Goto Fehler
    Set    doc        = ws.CurrentDocument.Document
    Set    agent      = ws.CurrentDatabase.Database.GetAgent(doc.sAgentName(0))

    agent.ServerName  = doc.nameServer(0)
    agent.IsEnabled    = Not(agent.IsEnabled)
    Call agent.Save()

    If (doc.sAgentState(0) = "") Then doc.sAgentState = 0
    If (agent.IsEnabled) Then doc.sAgentState = 1 Else doc.sAgentState = 0
    Call ws.CurrentDocument.Refresh()

Ende:
    Exit Sub

Fehler:
    Msgbox "Der Status des Agenten kann nicht geändert werden!",,"Fehler"
    Resume Ende

End Sub


Vielleicht hat ja jemand eine Idee. Wäre echt nett, wenn Ihr mir hier weiterhelfen könntet. Vielen Dank im Voraus.

Gruß,

jr
Titel: Re: Startzeitpunkt für periodische Agenten
Beitrag von: andrew22 am 30.06.05 - 16:27:09
das würde mich auch interessieren ...

Aus einem Profildokument heraus die Zeitangabe für periodischen agent ändern ;) ...

 ???
Titel: Re: Startzeitpunkt für periodische Agenten
Beitrag von: Axel am 30.06.05 - 16:36:15
Hi,

guckst du hier mal:

http://www-10.lotus.com/ldd/46dom.nsf/8fcda5a283f280b2852565590071d8af/65389424caefa06980256b260051da56?OpenDocument

Axel
Titel: Re: Startzeitpunkt für periodische Agenten
Beitrag von: robertpp am 30.06.05 - 16:58:38
Wir hatten das gleiche Thema 10 Posts davor da ging es um das gleiche Thema:

http://www.atnotes.de/index.php?topic=9523.0

robert
Titel: Re: Startzeitpunkt für periodische Agenten
Beitrag von: jr am 30.06.05 - 17:16:44
Hallo,

vielen Dank für die Info.
Den Thread habe ich mal 2003 gepostet, aber bis jetzt keine richtige Lösung gefunden. Den Code habe ich gleich einmal ausprobiert und er funktioniert einwandfrei. Ich hatte schon einige vergeliche Versuche mit der API, aber auf Peek und Poke bin ich wirklich nicht gekommen. Das erinnert mich irgend wie noch an meine C64-Zeit...  ;D

Vielen Dank, werde das in meine Datenbanken aufnehmen.

Gruß,

Joachim
Titel: Re: Startzeitpunkt für periodische Agenten
Beitrag von: koehlerbv am 30.06.05 - 17:57:13
Auf der Suche nach genau dieser Information bin ich damals auf AtNotes gestossen und seitdem dabei. Zu Get- und SetAssistInfo habe ich daher eine besondere Beziehung  :)

Bernhard