Das Notes Forum

Domino 9 und frühere Versionen => ND9: Entwicklung => Thema gestartet von: schroederk am 14.09.18 - 14:35:19

Titel: Formel zum Schreiben eines Felds in eigener und weiterer DB?
Beitrag von: schroederk am 14.09.18 - 14:35:19
Hallo,

ich bin noch immer beim Thema automatisch zusätzliche Informationen (im Body) bei einer Kalendereinladung zu speichern. Sowohl bei den Eingeladenen Personen als auch beim Einladenden (Chair).

Den Body bei den Einladungen ändere ich mit einer Formel über die IQ.Suite.

Code
_room := @If(@IsAvailable(Room);room;"");
_text := @NewLine+"Dial-In: xxxxx xxx xxxx"+@NewLine+"Room number xxxx"+@NewLine+"Pin: xxxx";
@If(@Contains(_room;"Telefonkonferenz Geschäftsführung"); @SetField("Body"; _text + Body); "");

Da es mit einem Agenten im RnrMgr nicht so richtig funktioniert (ich kann allenfalls den Agenten alle 5 Minuten immer über alle Dokumente laufen lassen [ und abfragen, ob ein Status-Feld von mir bereits gesetzt wurde oder nicht ] ), würde ich das gerne anders lösen.

Ich dachte daher, dass ich das auch über die Formel-Sprache hinbekommen könnte, aber die Frage ist, ob das überhaupt so machbar ist.

Code
_server = "Server/SRV/Gruppe";
_database = "names.nsf";
_chair = @If(@IsAvailable(Chair);Chair;"");
_uid = @If(@IsAvailable(ApptUNID);ApptUNID;"");
_liste := @DbLookup("":"NoCache";_server:_database;"($Users)";_chair;"MailFile");
@PostedCommand([FileOpenDatabase]; _server : _liste  ; "Calendar" ; _liste; 1 ; 1 );
@Command([OpenDocument];"";_uid)
@SetField("Body");_text + Body);

Könnte das so denn funktionieren?


Titel: Re: Formel zum Schreiben eines Felds in eigener und weiterer DB?
Beitrag von: Tode am 14.09.18 - 16:46:18
Nein. Das ist definitiv ein Fall, wo Du mit Formelsprache an die Grenzen kommst. AUßERDEM verwendest Du @Commands: Diese funktionieren nur im Frontend, niemals in einem Backend- Agenten / einer Backend- Aktion.
Titel: Re: Formel zum Schreiben eines Felds in eigener und weiterer DB?
Beitrag von: ronka am 14.09.18 - 21:14:15
Wenn Body ein Richtext feld ist, kannst du was du jetzt versuchst vergessen.

Ausserdem ist im Formel sprache = einen vergleichsoperator keine zuweiseung (das wäre := )

In ein TEXT feld könntest du das eventuell machen, aber auch dort wirst du schwierigkeiten haben das Dokument zu finden.

@SetDocField könnte es in einen Text feld schaffen den Document unique id des Ziel dokuments brauchst du dafür.
Titel: Re: Formel zum Schreiben eines Felds in eigener und weiterer DB?
Beitrag von: schroederk am 17.09.18 - 07:09:11
@Tode:
Das hab ich bereits geahnt, dass es mit der Formelsprache nicht funktionieren wird.   :-\
In der Dokumentation stand ja auch, dass @Command([OpenDocument nicht nur die DB öffnet, sondern auch gleich die Ansicht. Sowas funktioniert natürlich nicht im Backend.

Einfach in der Formel-Sprache den Lotusscript-Agenten aufzurufen, wird wohl auch nicht funktionieren.
Ist ja auch ein @Command([RunAgent]; und fällt damit auch nur ins Frontend.  :-\

Letztlich dann wohl doch eine Anpassung in der Schablone vom Geschäftsführer selber  :'(