Also, um einen Agent aus dem Smarticon heraus zu starten ist mir (nur) folgender Weg bekannt.
@SetEnvironment( "currentDocumentRef"; @Implode(@DbName;"!!")+"#"+@Text(@DocumentUniqueID) );
@Command([FileOpenDatabase];"server":"roland\\sandbox.nsf");
@Command([FileCloseWindow]);
@Command([RunAgent];"MyAgent")
Das Problem ist hier
a) dass ich in die notes.ini rein schreiben muss
b) die Datenbank öffnen muss (ein Parameter für RunAgent a la "server!!database\MyAgent" gibt es meines Wissens nicht
-> im Agent kann ich über LS nicht mehr auf die gerade geöffnete DB zugreifen, es muss vorher alles in der Ini abgespeichert werden
Mache ich hingegen ein
@Command([Compose];"server!!roland\\sandbox.nsf";"MyForm")
so kann ich
a) direkt den Verweis zur DB angeben (ich muss die DB nicht Öffnen/schließen wie oben)
b) im Initialize der Form über LS auf die gerade geöffnete DB (welches in deinem Fall die MailDB ist) zugreifen
Du benötigst eine Maske (in der DB in der der Agent liegt) da du diese direkt per Compose öffnen kannst. In das initialze der Maske packst du deinen Agentcode (die Maske ersetzt praktisch den Agent)
Ich geb zu, dass dies ggf. eine etwas "unorthodoxe" Methode ist, aber ich hab leider keine andere Möglichkeit gefunden, um dieses Problem zu lösen.
Gruß
Roland