Das Notes Forum
Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: tabama am 22.11.12 - 12:14:58
-
Hallo,
wie ich für eine bestimmte Datenbank ein neues Dokument aus dem Betriebssystem heraus starte, habe ich hinbekommen.
"start Notes://Server/Verzeichnis/Datenbank.nsf/Maske?openForm"
Kann ich aber auch einen bestimmten Aktenten innerhalb einer Datenbank starten?
-
Da
http://Host/Datenbank/Agentenname?OpenAgent
geht, funktioniert dann vielleicht auch die notes:/// Variante.
Andreas
-
Danke Andreas,
hatte mir den Syntax auch so vorgestellt, aber an Stelle von "openAgent" "runMacro" verwendet.
Aber auch mit "openAgent" will es bei mir nicht. Es kommt die Meldung "Operation z.Zt. nicht implementiert". Kann das etwas mit Sicherheitseinstellungen zu tun haben? Allerdings kann ich den Agenten in der Datenbank selbst über die Liste der Agenten ausführen.
-
Hmm, mal ausgehend davon, dass das mglw. wirklich nicht vorgesehen ist (Agent-Start via Notes-URL - habe ich jetzt nicht weiter geprüft), wenn neues Dok über eine bestimmte Form funktioniert, nutz dies doch:
Eine Maske, die nix anderes macht, als nach dem Öffnen den Agent starten und akt. Fenster wieder schließen? Hab's gerade probiert... musste zwar die Reihenfolgen etwas verdrehen und mit Postopen + Queryclose arbeiten & Formel + Script mischen, aber: Es geht :)
-
Was ist denn überhaupt Zweck der Aktion ? Was macht der Agent ?
-
Danke für die Antworten, konnte sie soeben erst lesen.
Das Dumme ist, es ist eine "gekaufte" DB mit versteckter Gestaltung. Also weiß ich nicht so genau, was da im Hintergrund bei der Erstellung eines Dokumentes abläuft. Aber irgendwas treibt der Agent. Wenn ich diesen nämlich manuell aufrufe, funktioniert es.
Wenn ich aber das ....?openForm benutzte, meckert Notes rum.
Also komme ich nicht drum herum den Agenten auszuführen.
Alternativ muss ich über die CMD eine Ansicht öffnen und der User muss dann den Agenten manuell starten.
Vielleicht hat ja noch jemand eine Ide.
Grüße
Martin
-
Sollte mit vbscript, dass du dann natürlich auch aus einem normalen Command file aufrufen kannst kein Problem sein.
Dim s
Dim db
Dim agent
Set s=CreateObject("Lotus.NotesSession")
Call s.Initialize
Set db=s.GetDatabase("servername","agent.nsf")
Set agent=db.GetAgent("test3")
Call agent.Run
Habe es gerade bei mir getestet, läuft einwandfrei. Aufpassen musst du nur, dass du das vbscript als 32 bit Prozess aufrufst, wenn du es auf einem 64 bit Windows laufen lässt.
Grüße
Ralf