Das Notes Forum
Domino 9 und frühere Versionen => Administration & Userprobleme => Thema gestartet von: nyen am 20.09.05 - 09:16:30
-
Hallo zusammen,
ich habe einen Agent per LotusScirpt auf einer DB (nicht lokal)definiert, der aber nicht automatisch periodisch gestartet wird. Wenn ich ihn manuell starte, funktioniert.
Was mache ich falsch, bzw. wo liegt das Problem? Hat jemand eine Idee?
Ich danke im Voraus.
Gruß
Nyen
-
Der erste Verdacht ist immer, dass in dem Agent FrontEndklassen verwendet wurden - das hindert den periodischen Agent an der Ausführung.
-
Der nächste Verdacht fällt auf die Rechte. Darf die ID, mit der der Agent signiert ist überhaupt Agenten ausführen?
Axel
-
Und was sagt das Server-Log ?
Bernhard
-
Danke für schnelle Antworten.
Möglicherweise hängt mit Agent FrontEndklassen zusammen. Ich weiss allerdinsg nicht, wie man das genau verwendet.
An der ID kannes nicht liegen, denn die ID hat Manager-Rechte.
Und im Server-Log taucht nichts auf. Aber im Agenten-Protokoll steht "Done running agent".
Ich definiere jetzt periodis "stündlich" und kann dann im Server-Log genauer verfolgen.
Nyen
-
habe das selbe Problem, aber wie es scheint, gibt es hier noch nicht die unbedingte Lösung. Bei mir ist es so, dass ich einen Löschenagenten starten will. Habe ihn zwei mal drin, einmal klappt es und einmal passiert gar nichts.
-
Möglicherweise hängt mit Agent FrontEndklassen zusammen. Ich weiss allerdinsg nicht, wie man das genau verwendet.
Frontendklassen sind z.B. NotesUIWorkspace und NotesUIDocument.
Schau dir mal den Code des Agenten an, ob du diese Klassen findest.
In diesem Fall könnte eine Zeile so aussehen:
Dim workspace As New NotesUIWorkspace
Axel
-
Frontendklassen sind vorhanden, wie z.B. hier:
Dim w As New notesUIWorkspace
Daran liegt wahrscheinlich nicht.
Nyen
-
Frontendklassen sind vorhanden, wie z.B. hier:
Dim w As New notesUIWorkspace
Daran liegt wahrscheinlich nicht.
Doch, genau daran liegts. Periodische Agenten, die auf dem Server laufen, können keine NotesUI... Klassen nutzen. Steht auch groß in der Notes-Hilfe. Siehe auch Bernhards erstes Posting (er hat Recht, wie immer ::) ).
-
Nun, gibt es keine Alternative? Heißt das kann ich meinen Agent gebrauchen?
-
Der Server hat logischerweise kein FrontEnd - wie sollte das auch funktionieren.
Was soll denn der Agent überhaupt machen ? Bisher sind die Fakten etwas mager, um Ratschläge zu erteilen.
Bernhard
-
Er soll Dateien automatisch in eine DB anhängen und Felder bennen usw.
-
Dafür braucht es kein FrontEnd, die Umstellung sollte also einfach sein.
-
Ich habe eben auch ohne FrontEndklassen gestestet, manuell ja, jedoch nicht periodisch.
-
Füge an den wichtigsten Stellen im Code mal Print - Anweisungen ein.
Z.B. am Anfang
Print "Agent gestartet"
und am Ende
Print "Agent beendet"
Diese Meldungen siehst du dann im Serverlog unter "Verschiedene Ereignisse".
Axel
-
Es funktioniert trotzdem nicht.
Kann man den per Script (z. B. Batch) auf dem Server starten?
-
Hi,
ich muss das Thema Rechte noch mal aufgreifen. Was steht den bei euch im Serverdokument bei der Agentensicherheit?.
Wer darf beschränkte bzw. unbeschränkte Agenten ausführen?
Axel
-
Im Serverdokument für unbeschränkte Agenten ist die Gruppe Administratoren, ín der ich mitglied bin. Und für beschränkte Agenten ausführen ist die Gruppe jeder zugeordnet.
-
Hi,
die Print-Anweisungen hast du in den Code eingefügt, oder? Hast du dabei irgendwas im Log gesehen? Was sagt denn das Agentenprotokoll jetzt? Laut der Aussage in einer deiner Antworten steht da "Done..." drin, was darauf schließen würde, dass der Agent doch gelaufen ist.
Er soll Dateien automatisch in eine DB anhängen und Felder bennen usw.
Das kommt mir auch noch ein bisschen spanisch vor. Kann der Server überhaupt auf die Dateien zugreifen? In der Regel geht das nämlich schief. Wo liegen die Dateien denn?
Axel
-
Auf die kann der sicherkich zugreifen, sondt würde der Agen manuell nicht funktioneren.
Ich habe folgende Fehlermeldung im Server-Log entdeckt:
AMgr: Agent ('Anhangimport2' in 'rtdruckl.nsf') error message: Illegal function call
Vielleicht hilft weiter.
-
Auf die kann der sicherkich zugreifen, sondt würde der Agen manuell nicht funktioneren.
Das glaube ich nicht. Denn, wenn du den Agent manuell startest wird es auf deiner Workstation ausgeführt und nicht auf den Server.
Ich habe folgende Fehlermeldung im Server-Log entdeckt:
AMgr: Agent ('Anhangimport2' in 'rtdruckl.nsf') error message: Illegal function call
Jetzt wäre eine gute Fehlerbehandlung innerhalb des Codes im Agent sehr hilfreich.
Füge mal folgende Zeilen in deinen Code ein:
Nach der letzten Dim-Anweisung.
On Error Goto ErrHandler
Vor der End Sub
Exit Sub
ErrHandler:
Print "Agent Anhangimport2: Es ist ein Fehler aufgetreten." + Chr$(13) + "Fehler: " + Str$(Err) + " -> '" + Error$ + "' in Zeile " + Str$(Erl)
Exit Sub
Dann sollte im Log eine aussagekräftigere Meldung stehen.
Axel
-
Danke Axel, hast du recht.
Auf meiner Workstation hatte ich Zugriif auf die Daten, jedoch nicht von vom Domino Server aus. Als ich den Zugriff erteilt habe, startet jetzt der peridiche Agent, wie gewünscht.
Ich komme jetzt weiter, vielen Dank nochmal.
Gruß
Nyen