Regeltypen - Kurzfassung
Zweck: Gibt im Kontext eines Bezugsobjekts (Entitätstyp muss Attributbesitzer sein), die Einzelwerte für ein durch den "Subtyp" bestimmtes "typisiertes plurales Attribut" als Liste zurück, auf die lesend und schreibend zugegriffen werden kann.
Tooltip
Verwendung: Der Zugriff auf das über die Parameter Typisiertes Attribut und Subtyp in zwei Stufen ausgewählte Attribut ermöglicht Lese- und Schreibzugriffe, die typischerweise per Verkettung (z. B. mit einem Listenwert-Wertauflöser) erfolgen.
Parameter:
Die statische Auswahl für das Auswahlfeld Typisiertes Attribut legt den Attributtyp (z. B. Textattribut oder Kennzeichenattribut) fest.
Der Parameter Subtyp definiert per Auswahl innerhalb der Dynamischen Aufzählung für das Typisierte Attribut (z. B. Texttyp oder Kennzeichentyp) das typisierte Attribut, das zurückgegeben werden soll.
Hinweis: Die Auswahl für den Subtyp bietet auch Attribut-Subtypen an, die nicht als "plural" definiert sind. Zur Laufzeit wird das betreffende Attribut (sofern vorhanden) als einziges Element einer Liste zurückgegeben.

Der Typisierte plurale Attribute (Wertauflöser)-Wertauflöser ermöglicht den Zugriff auf ein (plurales) typisiertes Attribut einer Entität. Er erwartet als Bezugsobjekt eine Entität, die dem Typ nach als "Attributsbesitzer" gilt (s. Attribut (Wertauflöser)) und dessen Datenmodell mindestens einen typisierten Attributtyp vorsieht. Der Rückgabewert ist eine Liste von Einzelwerten mit der spezifische Datenstruktur für den jeweiligen Attributtyp, die auch leer sein kann. Für gezielte Schreib- und Lesezugriffe (s. "Beispiele") können die für Listen spezifischen Wertauflöser (z. B. Listenwert, Regel-Listen Resolver) und Ereignisaktionen (z. B. Für jeden Eintrag wiederholen (Schleife), Liste modifizieren) eingesetzt werden. Ein Schreibzugriff auf ein Feld impliziert ggf. das Erzeugen eines Einzelwerts.
Der Parameter Typisiertes Attribut legt den Typ des typisierten Attributs fest, das zurückgeben werden soll. Der ausgewählte Typ definiert die Datenstruktur des Attributs. Jeder Attributtyp (Kennzeichenattribut, Textattribut, Datumsattribut, usw.) verwendet ein spezifisches Feld (flagType, textType, dateType, usw.), für den Subtyp. Spezifische Aufzählungen je Typ (Kennzeichentyp, Texttyp, Datumstyp, usw.) definieren die Werte, die jeweils als Subtyp ausgewählt werden können (s. Geschäftsobjekte und Attribute).
►WICHTIG◄ Das Schreiben und Lesen des Attributs betrifft in der Regel einen oder mehrere Feldwerte innerhalb der spezifischen Datenstruktur für den Attributtyp. Die entsprechenden Felder müssen - wie auch die "Beispiele" unten demonstrieren - in der Regel explizit adressiert werden, damit eine Wertzuweisung erfolgreich ist bzw. der Rückgabewert dem gewünschten Ergebnis entspricht. Dies kann entweder durch Verkettung (s. Verketteter Wertauflöser) erreicht werden oder z. B. im Kontext einer Ausführen mit-Ereignisaktion, die das Attribut als abweichendes Bezugsobjekt definiert.
Konfiguration
Der Typisierte plurale Attribute (Wertauflöser)-Wertauflöser erwartet ein Bezugsobjekt, dessen Datenmodell mindestens einen typisierten Attributtyp enthalten kann.
Der Parameter Typisiertes Attribut sieht eine statische Einfachauswahl für den Attributtyp vor, auf den zugegriffen werden soll. Solange der Kontext der Konfiguration nicht auf einen spezifischen Entitätstyp als Bezugsobjekt verweist, erscheinen alle Typen von Typisierten Attributen zur Auswahl, die das System unterstützt. Das Auswahlfeld/Combobox-Element bietet eine Suchfunktion an, die die internen Klassennamen der Attribute ebenso berücksichtigt wie zugehörige Lokalisierungen aus der Sprachverwaltung. |
|
Bezieht sich der Kontext der Konfiguration dagegen auf einen spezifischen Entitätstyp für das Bezugsobjekt, dann erscheinen nur die Attributtypen zur Auswahl, die im betreffenden Datenmodell explizit implementiert sind. Rechts verweist eine Typprüfung (nicht im Bild) auf einen Routingtabelleneintrag, so dass im Dropdown nur die vier Attributtypen erscheinen, die dieser Entitätstyp vorsieht. |
|
Erst wenn im Parameter Typisiertes Attribut ein Attributtyp ausgewählt ist, bietet das Dropdown für den Subtyp die Werte der jeweiligen Dynamischen Aufzählung (z. B. Texttyp) zur Auswahl an. ►WICHTIG◄ Falls im Kontext einer Sitzung Aufzählungsfilter für die betreffende Aufzählung anwendbar sind, schränken diese auch die Auswahl für den Subtyp im Zuge der Konfiguration ein. Auf die Auswertung des Wertauflösers zur Laufzeit haben Aufzählungsfilter dagegen keinen Einfluss. |
|
ACHTUNG
Die Auswahl für den Subtyp bietet auch Attribut-Subtypen an, die in der Definition der Dynamischen Aufzählung nicht als "Plural" gekennzeichnet sind. Wird ein "singulärer" Subtyp ausgewählt, gibt der Typisierte plurale Attribute (Wertauflöser)-Wertauflöser zur Laufzeit das betreffende Attribut (sofern vorhanden) als einziges Element einer Liste zurück.
Wird kein Typisiertes Attribut ausgewählt, dann ist der Rückgabewert des Wertauflösers immer "kein Wert" (null).
Wird ein ausgewähltes Typisiertes Attribut vom Typ des zur Laufzeit vorliegenden Bezugsobjekts nicht unterstützt, ist der Rückgabewert ebenfalls "kein Wert" (null).
Falls das zur Laufzeit vorliegende Bezugsobjekt ein ausgewähltes Typisiertes Attribut unterstützt, im Bezugsobjekt aber keine betreffenden Daten enthalten sind, wird eine leere Liste zurückgegeben.
Beispiele
Beispiel für "Schreibzugriff"
Ein Allgemeines Geschäftsobjekt soll einen "Zug" für die Abwicklung von Schienenverkehr abbilden. Innerhalb des Zugs soll die Abfolge der Waggons als "Wagenreihung" gepflegt werden können. Für jeden Wagen soll einerseits der Waggontyp und andererseits eine eindeutige Kennung ("ID") angegeben werden müssen. Verfügbare "Waggontypen" ( Jeder Waggon wird dabei durch eine Instanz des Freie-Aufzählung-Attributs "Zug" repräsentiert. Die Datenstruktur dieses Attributtyps sieht neben dem "Enum Wert" ( |
|
Anforderung:
Immer wenn innerhalb einer Erfassungsmaske oder Übersicht der Button "Neu" verwendet wird, um ein neues Allgemeines Geschäftsobjekt dieses Typs anzulegen, soll automatisch der Eintrag für den ersten Waggon mit dem Typ "Gedeckter Güterwagen" generiert werden, ohne dass dabei eine ID zugewiesen wird.
Konfiguration:
Eine Ereignisbehandlung, die auf das Ereignis "Neu" (s. Allgemein (Ereignisse)) als Auslösendes Ereignis reagiert, wird wie rechts abgebildet konfiguriert:
|
|
Beispiel für "Lesezugriff"
In Anlehnung an das vorherige Beispiel soll, wenn ein Allgemeines Geschäftsobjekt des betreffenden Typs gespeichert wird, geprüft werden, ob der zusammengestellte Zug mindestens einen "Gedeckten Güterwagen" enthält. Ist dies nicht der Fall, soll die Transaktion mit einer Fehlermeldung abgebrochen werden.
Konfiguration:
Eine Ereignisbehandlung, die auf die Ereignisse "Ändern" und "Erstellen" (s. Allgemein (Ereignisse)) reagiert, wird wie folgt konfiguriert:
|
|





