Das LotusScript-Entwicklerbuch für Notes/Domino 8 - Addison-Wesley
Das LotusScript-Entwicklerbuch für Notes/Domino 8 - Addison-Wesley
Das LotusScript-Entwicklerbuch für Notes/Domino 8 - Addison-Wesley
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
48 Einführung in die <strong>LotusScript</strong>-Programmierung<br />
Hinweis<br />
Vor längerer Zeit gab es in <strong>LotusScript</strong> keinen eigenen Datentyp <strong>für</strong> Wahrheitswerte.<br />
Statt Boolean nahm man häufig Integer-Variablen.<br />
In diesem Fall wurde die 0 als False gewertet und jeder andere Wert als True.<br />
Intern wird nach wie vor False mit dem Wert 0 gleichgesetzt und True mit -1.<br />
Sie werden wahrscheinlich noch auf das eine oder andere Script stoßen, in<br />
dem Integer-Werte <strong>für</strong> Wahrheitswerte verwendet werden. Lassen Sie sich<br />
dadurch nicht verwirren. Mit diesem Hintergrundwissen gewappnet, können<br />
Sie mit diesen Werten praktisch genauso rechnen, als würden »echte« Wahrheitswerte<br />
vorliegen.<br />
Vorrangregeln<br />
Auch bei booleschen Ausdrücken gelten gewisse Vorrangregeln. So wird zunächst<br />
die Negation Not berechnet, dann And und schließlich Or. Auch hier lassen sich die<br />
Regeln durch Klammerungen umgehen.<br />
Not False Or True ‘ergibt True Or True und das ist True<br />
Not (False Or True) ‘ergibt Not True und das ist False<br />
3.5 Eine eigene Prozedur schreiben<br />
Nach dem Erfolg in Abschnitt 3.1, <strong>Das</strong> erste Programm, auf Seite 31, juckt es Sie<br />
sicherlich in den Fingern, etwas mehr zu tun. Als ersten Schritt werden wir eine<br />
eigene Prozedur schreiben und diese dann anschließend von der Prozedur Sub Initialize<br />
aufrufen (ausführen) lassen. Vorher sollten wir noch kurz klären, was eine<br />
Prozedur eigentlich genau ist.<br />
Prozedur<br />
Prozeduren sind benannte Programmteile, die über ihren Namen zum Zwecke<br />
der Ausführung einmal oder mehrmals aufgerufen werden können.<br />
Praktisch gesehen bedeutet diese Definition, dass Sie einen (fast) x-beliebigen Code<br />
nehmen und ihn in eine Prozedur packen können. Dadurch haben Sie die Möglichkeit,<br />
diesen Code aus einem Programm auszulagern und ihn darin mit einem einzigen<br />
Aufruf ausführen zu lassen. Dabei ist es egal, wie lang der Code in der Prozedur<br />
ist. Auch Teile aus einer Prozedur können in weitere Prozeduren ausgelagert werden.<br />
Sie werden dadurch sehr frei in der Gestaltung der Codestruktur. Sie sind gut beraten,<br />
wenn Sie dies zu Ihrem eigenen Vorteil so nutzen, dass eine möglichst klare<br />
Struktur entsteht, die die Logik der zugrunde liegenden Aufgabe gut abbildet.<br />
Wir nehmen an, wir würden es <strong>für</strong> sinnvoll halten, einen Programmteil zu haben,<br />
der bei seinem Aufruf die aktuelle Zeit ausgibt. Der aktuelle Agent ist der Agent, in<br />
dem das gerade ablaufende Script enthalten ist, mithin unser Hello World-Agent.<br />
Die zugehörige Prozedur könnte so aussehen: