Regeleditor
Der Regeleditor ermöglicht das Erstellen und Bearbeiten von Regel-Konfigurationen auf der Basis von parametrierbaren Regel-Bausteinen unterschiedlicher Regeltypen.
In jedem Kontext, der eine Regel-Konfiguration vorsieht, erscheint ein Platzhalter in der Form einer Raute mit einem
-Symbol, über das ein Kontextmenü zur Definition von Regeln geöffnet werden kann.
Kontext: Zuordnungskriterien |
Kontext: Ereignisbehandlungen / Client Workflows |
Kontext: Wertauflöser |
|
|
|
Bei der Konfiguration von Zuordnungskriterien geht es ausschließlich um die Definition einer mehr oder weniger komplexen Regel, die zur Laufzeit abhängig vom Datenkontext insgesamt als bestanden oder nicht bestanden gilt. |
Im Kontext von Ereignisbehandlungen und Client Workflows entscheidet die Prüfende Regel, ob überhaupt Aktionen bei bestandener Regel ausgeführt werden. Wird die konfigurierte Regel zur Laufzeit "nicht bestanden" erfolgt Keine Aktion. |
Bestimmte Wertauflöser, wie die oben als Beispiel abgebildeten (Regelwert und Regel-Listen Resolver), beziehen sich zur Konfiguration einer Bedingung ebenfalls auf den Regeleditor. |
Besondere Regeltypen → Mit-Regel |
Besondere Ereignisaktionen → Wenn Dann Sonst |
Besondere Wertauflöser → Bedingter Wert |
|
|
|
In der Konfiguration der Mit-Regel wird zunächst über eine Wert-Konfiguration ein temporäres Bezugsobjekt gesetzt. Unterhalb folgt eine Regel-Konfiguration, die im Kontext des als Bezugsobjekts aufgelösten Werts ausgeführt wird. |
Innerhalb einer Wenn Dann Sonst-Ereignisaktion kann eine Fallunterscheidung mit einem oder mehreren Zweigen konfiguriert werden. Jeder Zweig sieht eine Regel-Konfiguration vor, von der die Ausführung der im Zweig konfigurierten Ereignisaktionen abhängt. |
Ein Bedingter Wert-Wertauflöser adaptiert das Konzept der Fallunterscheidung (s. Wenn Dann Sonst-Ereignisaktion, links) für den Kontext einer Wert-Konfiguration. Jeder Zweig ordnet dabei einer Regel-Konfiguration eine spezifische Wert-Konfiguration zu. |
Symbolik und Logik für Regeln
Im Regeleditor erscheint für jede eingefügte Regel ein Rauten-Symbol, dessen Innenleben per Klick auf das (+)-Symbol an der oberen Ecke "aufgeklappt" werden kann. Der aufgeklappte Zustand erlaubt das Bearbeiten der Regeldefinition, sofern überhaupt konfigurierbare Inhalte vorliegen. Die Ansicht kann per Klick auf das in diesem Zustand angezeigte (-)-Symbol rechts oben wieder komprimiert werden.
Die Auswertung einer Regel liefert zur Laufzeit immer einen Wahrheitswert (wahr oder falsch). Dieses Prüfergebnis bestimmt die weitere Verarbeitung nach folgendem Schema:
|
|
Mit dem Prüfergebnis "wahr" gilt die Regel als "bestanden" und der Pfad "nach unten" wird weiter verfolgt. ►ANMERKUNG◄ Falls "unterhalb" (bzw. beim "Bestehen") der als Beispiel ausgewählten Typprüfung-Regel keine weitere Regel konfiguriert ist, erscheint abhängig vom Kontext ein Typhinweis für den erwarteten Rückgabewert, der die Pfeilspitze der Verbindungslinie weitgehend verdeckt. Eine Typprüfung kann diesen Typhinweis sogar "setzen", da sie einen Typ für den Abwärtspfad "deklariert".
|
Ein Klick auf das (+)-Symbol oben in der Raute klappt die "Regel" auf, sodass die spezifische Konfigurationsoberfläche für den Regeltyp erscheint, die Zugriff auf die konkrete Parametrierung (sofern vorhanden) gewährt. Ein Klick auf das (-)-Symbol rechts oben in der Konfigurationsoberfläche klappt die Regel zu.
►HINWEIS◄ Die Konfigurationsoberfläche kann Elemente für bedingte Parameter enthalten, deren Sichtbarkeit oder Aktivierungszustand von Zuweisungen für andere Parameter abhängt. |
Regelgraph
Der Regeleditor ermöglicht über eine interaktive Visualisierung, den "Regelgraph", ausgehend von einer einzelnen Regel den schrittweisen Aufbau komplexerer logischer Strukturen.
►ANMERKUNG◄ Die Screenshots der folgenden Abschnitte beziehen sich auf den Kontext eines Zuordnungskriteriums. In anderen Umgebungen weicht die Darstellung in Details ab.
Funktional soll die rechts abgebildete Regel-Konfiguration und damit das Zuordnungskriterium insgesamt als "bestanden" gelten, wenn folgende Bedingungen erfüllt sind:
Zur Laufzeit wird der Regelgraph beginnend beim Start entlang der relevanten Verbindungspfeile schrittweise abgearbeitet. Für das konkrete Beispiel bedeutet das:
|
|
►WICHITG◄ Sobald die schrittweise Prüfung einen der Endpunkte des Regelgraphs (Regel bestanden bzw. Regel nicht bestanden) erreicht, endet die Auswertung. Abhängig von den Prüfergebnissen und der Verknüpfungslogik müssen also mehr oder weniger viele der konfigurierten Regel geprüft werden.
Innerhalb einer ODER -Verknüpfung kann es vorteilhaft sein, aufwändigere Prüfungen (wie hier die Prüfung vorhanden mit Datenbankzugriff) möglichst weit "rechts" anzuordnen, damit sie seltener ausgeführt werden.
Innerhalb einer UND-Verknüpfung kann es vorteilhaft sein, kritische Prüfungen möglichst weit "oben" anzuordnen, damit Ausschlusskriterien innerhalb der Verknüpfung möglichst früh erkannt werden.
Eine Typprüfung beeinflusst ggf. den Typhinweis für nachfolgende ↓UND-verknüpfte Regeln. Das kann die Konfiguration erleichtern, da dann zum Datenmodell "passende" Auswahlmöglichkeiten in Wert-Konfigurationen für Parameter erscheinen (hier: ownerId im Objekt-Feld-Wertauflöser)
Kontextmenü für Regeln
Das Kontextmenü für Regeln kann durch unterschiedliche Mechanismen geöffnet werden:
►WICHTIG◄ Die oben genannten Mechanismen setzen den Fokus auf den bestehenden Regelbaustein, was sich auf das Angebot von Funktionen im Kontextmenü auswirkt. Die folgenden Mechanismen beziehen sich dagegen auf einen Regel-Baustein, der der der Konfiguration neu hinzugefügt werden soll, sodass bestimmte Funktionen nicht im Menü erscheinen.
|
|
Einfügepositionen: |
Menüfunktionen für Regel-Bausteine
Funktion |
... für ausgewählte Regel/Verknüpfung |
... an einer Einfügeposition |
Details |
Hinzufügen |
ersetzt die Auswahl durch eine neue Instanz für den im Kontextmenü ausgewählten Regeltyp |
fügt dem Regelgraph eine neue Instanz für den im Kontextmenü ausgewählten Regeltyp hinzu |
►HINWEIS◄ Beim Hinzufügen eines Regel-Bausteins zu einer bestehenden Konfiguration, wird bei Bedarf implizit eine Verknüpfung erstellt. |
Entfernen |
entfernt die Auswahl aus dem Regelgraph |
|
|
Testmodus |
ermöglicht Tests für die Auswahl |
|
►HINWEIS◄ Tests für eine Regel liefern als Ergebnis nur einen booleschen Wert ($true/$false). Allerdings kann das "Log" Informationen zu Fehlern enthalten, die in Zuordnungskriterien per Standard mit dem Rückgabewert $false abgefangen werden. |
Als XML editieren |
startet XML-Editor mit der Struktur für die Auswahl |
startet leeren XML-Editor für eine neue Regel |
►HINWEIS◄ Neben dem direkten Editieren der XML-Struktur ermöglicht der Editor auch das Kopieren und Einfügen von Ausschnitten aus einem Regelgraph über die Zwischenablage des Client-Betriebssystems. Im Unterschied zur Lobster Data Platform / Orchestration-Zwischenablage (s. unten) können so auch Konfigurationen systemübergreifend "ausgetauscht" werden. |
Funktionen für die Lobster Data Platform / Orchestration-Zwischenablage |
|||
Kopieren |
übernimmt die Auswahl in die Lobster Data Platform / Orchestration-Zwischenablage |
|
►HINWEIS◄ Die Lobster Data Platform / Orchestration-Zwischenablage stützt sich auf ein vom Browser lokal gespeichertes Cookie, dessen Wert beim Ausschneiden oder Kopieren überschrieben wird. Solange das Cookie existiert, steht der Inhalt dabei für nachfolgende Sitzungen mit demselben Browser unter derselben URL auch dann zur Verfügung, wenn abweichende Anmeldedaten (Benutzer, Firma, Rolle) verwendet werden. Die Funktion Einfügen erscheint nur dann im Kontextmenü, wenn die Zwischenablage Inhalt enthält und dieser kompatibel zum Kontext ist. |
Ausschneiden |
übernimmt die Auswahl in die Lobster Data Platform / Orchestration-Zwischenablage |
|
|
Einfügen |
|
fügt (geeigneten) Inhalt der Lobster Data Platform / Orchestration-Zwischenablage an der Einfügeposition in den Regelgraph ein |
|
nicht |
kehrt den Status der "Verneinung" für die Auswahl um |
|
verneinte Regeln: |
Beschreibung |
öffnet einen modalen Text-Editor zum Bearbeiten der Beschreibung für die Auswahl ►HINWEIS◄ Wie im Screenshot rechts zu sehen, wird das Vorliegen einer Beschreibung durch eine rote Markierung in der rechten oberen Ecke der Darstellung für die Regel bzw. Verknüpfung signalisiert. Bei Annäherung des Mauszeigers erscheint der hinterlegte Text als Tooltip (s. Screenshot). |
|
|
|
|||
Hilfe |
öffnet den Handbucheintrag (sofern vorhanden) für den Regeltyp der Auswahl oder für den Kontext anwendbare Online Hilfen |
öffnet den übergeordneten Handbucheintrag für alle Regeltypen oder für den Kontext anwendbare Online Hilfen |
►HINWEIS◄ Handbucheinträge erscheinen nur, wenn die Berechtigung "Verwaltung/Stammdaten/Online Hilfen/Standard Hilfe anzeigen" vorliegt. Die Funktion Hilfe erscheint aber immer im Kontextmenü, da sie auch ggf. zugewiesene benutzerdefinierte Online Hilfen betrifft. |