Ausführen mit
Ereignisaktion - Kurzfassung
Zweck: Ermöglicht das Ausführen von Ereignisaktionen mit einem abweichenden Bezugsobjekt (entity).
Die Ereignisaktion Ausführen mit ermöglicht innerhalb einer Ereignisbehandlung den vorübergehenden Wechsel des Bezugsobjekts, um mit dem abweichenden Bezugsobjekt einen Block von Ereignisaktionen auszuführen.
Parameter
Objekt in Variable speichern
Der Parameter Objekt in Variable speichern kann optional verwendet werden, um den Namen einer Variablen anzugeben, über die auf das bisherige Bezugsobjekt zugegriffen werden kann, während das abweichende Bezugsobjekt gilt.
►HINWEISE◄
Die Zuweisung des bisherigen Bezugsobjekts als Wert der im Parameter Objekt in Variable speichern benannten Variablen betrifft nur den Ausführungskontext innerhalb des Ausführen mit-Blocks. Nach Abschluss des Blocks wird dieser Variablen wieder der zuvor gültige Wert (ggf. "kein Wert" zugewiesen).
Im Allgemeinen gelten Zuweisungen an Variablen dagegen innerhalb und außerhalb des Blocks. Eine weitere Ausnahme bildet allerdings die vom System verwaltete Variable entity die immer auf das jeweils gültige Bezugsobjekt verweist.
Die Beschriftung des Parameters spiegelt den Typ des bisherigen Bezugsobjekts. Sofern sich aus dem Kontext der Konfiguration ein spezifischerer Entitätstyp als "Objekt" ergibt, erscheint dessen Name vor "... in Variable speichern" und an der Schnittstelle zu den Ereignisaktionen.
Objekt Resolver
Der Objekt Resolver definiert das innerhalb des Ausführen mit-Blocks gültige abweichende Bezugsobjekt für die Ausführung der dort enthaltenen Ereignisaktionen. Nach deren Abschluss gilt wieder das zuvor gültige Bezugsobjekt.
In Bezug auf die innerhalb des Ausführen mit-Blocks ausgeführten Ereignisaktionen hat das "Bezugsobjekt" folgende Bedeutung:
Werden innerhalb des Ausführen mit-Blocks andere Ereignisse ausgelöst, erhalten diese das abweichende Bezugsobjekt als "Eingabewert".
Wertauflöser, die sich auf ein Eingangsobjekt beziehen, verarbeiten das abweichenden Bezugsobjekt, soweit keine anderen Festlegungen getroffen werden. So löst ein Objekt-Feld-Wertauflöser ein bestimmtes Feld des abweichenden Bezugsobjekts auf, wenn er nicht innerhalb einer Verkettung eingesetzt wird.
►HINWEIS◄Die Ereignisaktion Ausführen mit kann kaskadierend eingesetzt wenn, um das abweichende Bezugsobjekt stufenweise zu übersteuern. In jeder Stufe einer Kaskade besteht dabei Zugriff auf die Bezugsobjekte der übergeordneten Stufen, sofern im Parameter Objekt in Variable speichern jeweils unterschiedliche Variablennamen verwendet werden.
Ereignisaktionen
Im Block unterhalb der Parameter können Ereignisaktionen über das
-Symbol hinzugefügt werden, die zur Laufzeit mit dem abweichenden Bezugsobjekt ausgeführt werden.
Beispiele
Wertzuweisungen für mehrere Felder desselben Objekts
Detaildaten für einen neu anzulegenden Flugfahen werden vom über ein modales Portal (s. folgender Screenshot) abgefragt, das als Pflichtangaben den IATA-Code und den ICAO-Code vorsieht:
|
Beim Klick auf den Button "Anlegen" wird ein Eigenes Aktionsevent ausgelöst, in dessen Datenkontext die unten dargestellten Formulardaten als Wert der Variablen formData übergeben werden: Formulardaten (formData)
{ "codes" : { "IATA" : "BER" , "ICAO" : "EDDB" } } |
Für die weitere Verarbeitung soll aus den Eingaben im Formular in die folgende Struktur überführt werden:
{
"iataCode"
:
"BER"
,
"icaoCode"
:
"EDDB"
}
Konfiguration:
Die Transformation der gegebenen Formulardaten in die Zielstruktur soll innerhalb der Ereignisbehandlung erfolgen, die auf das Ereignis reagiert, das der Button "Anlegen" im Portal auslöst.
Aus der Quellstruktur in der Variablen formData müssen mehrere Felder in die Felder einer Zielstruktur übertragen werden, die zu diesem Zweck vorab neu angelegt und in der Variablen newAirportObject gespeichert werden soll. Der gesamte Ablauf kann wie rechts gezeigt in einer Ausführen mit-Aktion umgesetzt werden:
►ANMERKUNG◄ Der Parameter Objekt in Variable speichern (ganz oben) wird hier nicht verwendet, da das Portal ohnehin kein eigenständiges Bezugsobjekt bereitstellt, sondern nur die Formulardaten in der Variablen formData. |
|
Kaskadierende Verwendung von "Ausführen mit"
Der kaskadierende Gebrauch der Ausführen mit-Ereignisaktion wird hier an einem einfachen Beispiel demonstriert. Die Praxis ergibt der "verschachtelte" Gebrauch der Ereignisaktion oft wesentlich komplexere Strukturen.
Angelehnt an das vorige Beispiel soll hier angedeutet werden, wie eine Ereignisbehandlung aussehen könnte, die die Benachrichtigung einer Firma veranlasst, wenn ein Eigenes Aktionsevent vom Typ "Avis versenden" ausgelöst wird.
Die folgende Konfiguration geht davon aus, dass dieses Ereignis wie oben beschrieben ein Firmenkonto als "Eingabewert" und das Datenobjekt einer Bestellung in der Variable order übergeben bekommt.
►ANMERKUNG◄ Vorkehrungen für den Fall, dass überhaupt keine Kommunikationsinformation mit dem Kontext "AVIS" gefunden wird, wären zusätzlich zu empfehlen. Der Ausführen mit-Block wird in diesem Fall mit dem Wert "kein Wert" (null) trotzdem ausgeführt. |
|