Statische Werte

Als "statische Werte" werden in Lobster Data Platform / Orchestration Werte bezeichnet, die ausschließlich und unmittelbar durch die Konfiguration definiert sind. In Anlehnung an den Begriff "hartkodiert" (en: hard coded) könnte man "statische Werte" in Lobster Data Platform / Orchestration auch als "hart-konfiguriert" bezeichnen.

Die technische Grundlage für einen "statischen Wert" in einer Wert-Konfiguration ist dabei immer derselbe "Literale Wertauflöser" (LiteralValueResolver), der genau einen Wert (value) mit einem der folgenden "Datentypen" definiert:

Da für jeden Datentyp eine spezifische Benutzeroberfläche angezeigt wird und die Auswahl des Datentyps für einen statischen Wert wie die Auswahl eines Wertauflösers funktioniert (s. Screenshot), beschreibt die Dokumentation die typspezifischen Ausprägungen als wären diese eigenständige Wertauflöser. Wenn also z. B. vom "Text-Wertauflöser" die Rede ist, ist eigentlich ein "Literaler Wertauflöser" für die Definition eines Textwerts gemeint.

Die Datentypen Statische Aufzählung und Dynamische Aufzählung nehmen eine Sonderstellung ein, da sie als Menüeinträge unter "Statische Werte" nur erscheinen, wenn der Kontext einer Wert-Konfiguration auf eine konkrete Aufzählung verweist. Dann wird automatisch der "Literaler Wert"-Wertauflöser mit einer spezifischen Benutzeroberfläche den konkreten Aufzählungstyp (s. Statische Aufzählung bzw. Dynamische Aufzählung) vorgeschlagen und alle anderen Optionen erscheinen in der Kategorie "Unpassend/Statische Werte" des Kontextmenüs.

Soll ein Aufzählungswert in einem Kontext als statischer Wert definiert werden, der keinen Bezug zu einer konkreten Aufzählung vorgibt, muss abhängig von der Kategorie der Aufzählung die Menüoption Jede statische Aufzählung- oder Jede dynamische Aufzählung ausgewählt werden, um den gewünschten Wert aus einer Liste aller Aufzählungswerte für die Kategorie auswählen zu können.

Weitere Konfigurationsmöglichkeiten für komplexere "statische" Werte

Die folgenden Konfigurationen könnte man als "Statische Werte" im weiteren Sinne bezeichnen, die der "Literaler Wert"-Wertauflöser nicht unmittelbar abdeckt:

Statisch definierte Referenzen auf Firmen oder Rollen

Für "statische Referenzen" auf Firmen oder Rollen - etwa im Kontext von Zuordnungskriterien, Ereignisbehandlungen oder der Such API stellt Lobster Data Platform / Orchestration designierte Wertauflöser (Firmenwert und Rolle) bereit, die eine statische Auswahl genau einer Instanz der jeweiligen Entität ermöglichen.

Beispiel:

Eine besondere Eigene Übersicht für Benutzer (s. Eigene Übersichten) soll ausschließlich Benutzer auflisten, deren Konto einerseits mit einer bestimmten Rolle) und andererseits eine mit einer bestimmten Firma verknüpft ist.

Der Screenshot rechts zeigt wie die entsprechende "Einschränkung" in der Definition der Eigenen Übersicht umgesetzt werden kann:

  • Eine UND-Verknüpfung kombiniert zwei Instanzen der Objekt-Feld-Regel.

  • Die erste Objekt-Feld-Regel greift links auf das Objekt-Feld "Rollen" (roles) zu und sucht in der dort hinterlegten Liste nach einer Übereinstimmung mit dem Vergleichswert, der rechts statisch über die Auswahl im Rolle-Wertauflöser definiert ist.

  • Die zweite Objekt-Feld-Regel greift links auf das Objekt-Feld "Firmen" (companies) zu und sucht in der dort hinterlegten Liste nach einer Übereinstimmung mit dem Vergleichswert, der rechts statisch über die Auswahl im Firmenwert-Wertauflöser definiert ist.

HINWEIS◄ Der Vergleich ("==") gilt jeweils als erfüllt, wenn die Liste den Vergleichswert enthält. Sie darf daneben also auch noch andere Werte enthalten.

images/download/attachments/78257927/image2023-1-20_13-23-37-version-1-modificationdate-1674217417639-api-v2.png

WICHTIG◄ Statische Referenzen auf Firmen und Rollen sollten mit Rücksicht auf die Interpretation von Verknüpfungen beim Meta Exchange (zum Austausch von Konfigurationen zwischen Systemen) möglichst immer über diese Wertauflöser erfolgen. Wie alle anderen Entitäten können Firmen und Rollen zwar auch per ID, also per Long-Wert, adressiert werden. Allerdings ist dabei immer zu bedenken, dass sich die IDs korrespondierender Entitäten auf unterschiedlichen Systemen unterscheiden können und dass eine indirekte Referenz per statischem Long-Wertauflöser nicht an ggf. bestehende Verknüpfungen zwischen IDs angepasst wird.

Statisch definierte "Zahl mit Einheit"

Eine statisch bestimmte "Zahl mit Einheit" kann über den Berechne Wert-Wertauflöser mit einem Berechnungsausdruck definiert werden, der einen konstanten Zahlenwert mit dem Alias der gewünschten Einheit verbindet.

Beispiel:

Als statische "Zahl mit Einheit" soll das Volumen einer Bruttoregistertonne über die zuvor als benutzerdefinierte Volumeneinheit "Kubikfuß" (mit dem Alias ft3) definiert werden. Definitionsgemäß entsprechen 100 Kubikfuß einer Bruttoregistertonne.

images/download/attachments/78257927/image2023-1-20_11-57-5-version-1-modificationdate-1674212225462-api-v2.png

Statisch definierte "Liste"

Wenn in einem Erzeuge Liste-Wertauflöser ausschließlich "Statische Werte" als Einträge konfiguriert sind, könnte man das Ergebnis als "Statische Liste" bezeichnen.

Beispiel:

Als Auswahloptionen für ein Kontextmenü sollen eine "statische Liste" mit über mehrere Instanzen des Text-Wertauflösers definierten "Schlüsselwörtern" übergeben werden:

images/download/attachments/78257927/image2023-1-20_12-22-23-version-1-modificationdate-1674213743831-api-v2.png

Statisch definiertes "Objekt"

Ein beliebiges "statisch definiertes" Datenobjekt kann ausgehend von einem statisch definierten Text über einen über einen der folgenden Wertauflöser erzeugt werden:

Beispiel:

In einem Kontextmenü sollen in Anlehnung an eine Verkehrsampel die Optionen "STOP", "HOLD" und "GO" in Verbindung mit einem jeweils passend eingefärbten Icon erscheinen.

Im Parameter Elemente einer Öffne Kontextmenü-Ereignisaktion wird das Kontextmenü über ein "statisches Listenobjekt" definiert, das als Einträge Objekte mit den Feldern "option" und "icon" enthält.

Ausgehend von einem Text-Wertauflöser, der eine geeignete JSON-Struktur statisch definiert, kann das Objekt für das Kontextmenü unmittelbar und in JSON gut lesbar "maßgeschneidert" und dann mit dem verketteten Objekt aus JSON erzeugen-Wertauflöser generiert werden.

Der Beschriftungsausdruck wird aus dem Feld option bezogen.

Der Icon-Ausdruck wird aus dem Feld icon bezogen.

Das zeilenweise definierte Objekt dient bei Auswahl einer Option als Rückgabewert. Es könnte weitere Felder enthalten.

Laufzeitbeispiel: (Kontextmenü)

images/download/attachments/78257927/image2023-1-20_13-5-12-version-1-modificationdate-1674216312976-api-v2.png

images/download/attachments/78257927/image2023-1-20_13-6-5-version-1-modificationdate-1674216365325-api-v2.png