Innerhalb von Workflows können auch Formeln eingesetzt werden. Mit Formeln lassen sich viele Aktivitäten automatisieren und besser steuern. Formeln können in folgenden Bereichen innerhalb des Workflows eingesetzt werden:
-
Prozesse
-
Aktivitäten
-
Automatisierte Aktivitäten
-
Routing-Beziehungen
Sie übernehmen die unterschiedlichsten Funktionen, wie etwa die Festlegung von Teilnehmern an Prozessen und Aktivitäten, die Steuerung von Eigenschaften und die Generierung von Parametern, die an andere Anwendungen übergeben werden können.
Die Basis bildet die Formelsprache von Lotus Notes, wobei nicht alle Formeln erwendet werden können. Formeln, die beispielsweise eine Eingabe erfordern, werden nicht unterstützt, ebenso wenig wie @Commands.
Einsatzbereiche von Formeln
Die häufigste Variante der Formelnutzung ist sicherlich die Festlegung von Personen, die in irgendeiner Form an einem Workflow beteiligt sind. Dazu zählen die Besitzer von Aktivitäten, die Teams und die Benutzer mit Leseberechtigungen sowie die Besitzer einzelner Jobs.
Wichtig ist aber auch die Steuerung des Workflows selbst über Formeln. Entscheidungen darüber, welche weiteren Schritte durchgeführt werden, lassen sich über Formeln abbilden und unterstützen.
Bei automatisierten Aktivitäten sind Formeln ebenfalls von Bedeutung, um eben diese Automatisierung durchzuführen. Dazu zählen beispielsweise das Senden von Mails und der Aufruf von serverbasierenden Programmen.
Neben den Standardformeln gibt es drei spezielle Formeln bei Lotus Workflow:
-
@BinderLookup: Diese Funktion wird für den Zugriff auf die Inhalte anderer Dokumente genutzt. Als Ergebnis wird der Feldinhalt von Dokumenten in einem Ordner zurückgeliefert. Die Formel muss so konstruiert werden, dass es genau einen Rückgabewert gibt.
-
@Relation: Mit dieser Formel kann auf Beziehungen zugegriffen werden, die in der Organisationsdatenbank definiert sind. Damit lassen sich also beispielsweise die Manager von Organisationsbereichen ermitteln.
-
@JobProperty: Die dritte Formel erleichtert den Zugriff auf Eigenschaften von Jobs. Mit ihr können insbesondere Formeln, für die man ansonsten mit @BinderLookup arbeiten würde, einfacher gestaltet werden. Darauf wird weiter unten noch näher eingegangen.
Formeln erstellen und testen
Wenn Formeln eingesetzt werden können, erkennt man das immer schon daran, dass es in einem Dialogfeld eine oder mehrere Schaltflächen mit der Bezeichnung Formula gibt. Ein gutes Beispiel sind die automatisierten Aktivitäten (Bild 1). So lassen sich Titel und Text einer Mail mithilfe von Formeln generieren.
Nach dem Anklicken dieser Schaltfläche wird der Formula edit dialog angezeigt (Bild 2). In diesem Dialogfeld kann die Formel erstellt werden. Auf der linken Seite findet sich das Fenster für die Erstellung der Formel, rechts sind mehrere Register mit Elementen angeordnet, die für die Formel ausgewählt werden können:
-
Fields: Hier finden sich Operatoren, Masken und Felder. Nach der Auswahl einer Maske ändert sich die Anzeige der Feldliste dynamisch. Der Bereich ist vor allem wichtig, um Felder für eine Formel auszuwählen.
-
Functions: Enthält alle Funktionen, die in der Design Repository-Datenbank vorhanden sind.
-
Library: Dieses Register ist die Schnittstelle zur Business Object Library, die im zweiten Teil der Serie vorgestellt wurde. Hier können alle Objekte ausgewählt werden, die in der Bibliothek angelegt wurden. Im unteren Bereich findet sich die Auswahl Formulas, um auf vordefinierte Formeln aus dieser Bibliothek zuzugreifen.
-
Decision: Dieses Register wird nur angezeigt, wenn in der vorangegangenen Aktivität Alternativen für Entscheidungen definiert wurden, die dann für die Formel verwendet werden.
Die Formel kann aus den vorgegebenen Elementen zusammengesetzt oder manuell bearbeitet werden.
Um eine Formel zu testen, muss die Maske (OS Formula Test) in OS Formula Test umbenannt werden. Die Klammern sind also zu entfernen. Anschließend wird die Maske über das Menü Create aufgerufen, wenn gezielt eine Formel getestet werden soll. Darüber hinaus kann das Verhalten von Formeln natürlich auch beim regulären Durchlauf von Workflows analysiert werden.
Formeln und Job-Eigenschaften
Mithilfe von Job-Eigenschaften lässt sich die Erstellung von Formeln deutlich vereinfachen. Damit werden Informationen über den aktuellen Job bereitgestellt. Diese lassen sich in einfacher Form nutzen. Mit
@JobProperty([Activity Owner])
kann beispielsweise der Besitzer der aktuellen Aktivität ermittelt werden. Mit
@JobProperty([Decision])
wird die in der vorausgegangenen Aktivität getroffene Entscheidung abgefragt. Es gibt eine recht lange Liste solcher Eigenschaften, mit denen sich die meisten speziellen Anforderungen innerhalb von Workflows abdecken lassen.
Workflows aktivieren
Nachdem ein Workflow erstellt wurde, geht es im folgenden Schritt darum, diesen zu aktivieren, sodass er von den Anwendern genutzt werden kann. Dazu muss der Workflow zunächst gespeichert werden. Anschließend erfolgt mit Process/Check Syntax die Überprüfung. Im Ergebnisfenster werden Fehler und Warnungen ausgegeben. Fehler sind rot gekennzeichnet, Warnungen gelb (Bild 3).
Zu jedem Fehler wird angegeben, wo er aufgetreten ist. Außerdem gibt es eine kurze Erklärung, wie man den Fehler adressieren kann.
Die Korrektur von Fehlern findet direkt in diesem Dialogfeld statt. Dazu wird das fehlerhafte Objekt in der Liste Error Item mit der linken Maustaste ausgewählt. Mit der rechten Maustaste lässt sich anschließend der Eigenschaften-Dialog öffnen.
Wenn alle Fehler korrigiert wurden, wird in diesem Dialogfeld nur noch Process mit einem grünen Symbol angezeigt. Die Syntax ist nun fehlerfrei. Durch die Informationen, die zu Fehlern angezeigt werden, lassen sich eventuelle Fehler in Workflows relativ leicht beseitigen.
Der fehlerfreie Prozess muss nun noch gespeichert werden, dann wird er mit File/Activate Process aktiviert. Im angezeigten Dialogfeld wird die Prozessdefinitionsdatenbank ausgewählt, in die er aufgenommen werden soll (Bild 4). Nach der Aktivierung steht der Prozess für die Benutzer zur Verfügung.