Aktionsgruppen mit Aktionsgruppenparametern

www.altova.com Dieses Kapitel drucken Vorherige Seite Eine Ebene nach oben Nächste Seite

Startseite >  Aktionen > Aktionsgruppen >

Aktionsgruppen mit Aktionsgruppenparametern

In Aktionsgruppen können zwei Arten von Parametern verwendet werden:

 

Einfache Parameter, die im Abschnitt Aktionsgruppen mit Parametern beschrieben sind. Sie werden in  MobileTogether Designer durch das Dollarzeichen $ vor dem Namen gekennzeichnet.
Aktionsgruppenparameter, die Aktionsgruppen als ihre Werte erhalten. Sie werden in MobileTogether Designer durch das Prozentzeichen % vor dem Namen gekennzeichnet.

 

Die Parameter $length und $width in der Abbildung unten sind einfache Parameter, während %RectangleProperty ein Aktionsgruppenparameter ist. Um einen Parameter als Aktionsgruppenparameter zu erstellen, erstellen Sie den Parameter als einfachen Parameter und aktivieren Sie anschließend das dazugehörige Kontrollkästchen "Aktionsgruppe" (siehe Abbildung unten).

MTDAGParams01

 

Funktionsweise von Aktionsgruppenparametern

Ein Aktionsgruppenparameter erhält als Wert eine Aktionsgruppe, in der keine Parameter deklariert sind. Auf diese Art kann die aufgerufene Aktionsgruppe wie eine Funktion, die MobileTogether-Aufgaben ausführt, behandelt werden. Aktionsgruppenparameter funktionieren vom Prinzip her ähnlich wie einfache Parameter.

 

Sie deklarieren Aktionsgruppenparameter in einer Aktionsgruppe. In der Aktionsgruppe, die diese Parameter enthält, können anschließend Aktionen definiert werden, in denen diese Aktionsgruppenparameter verwendet werden. Alternativ dazu kann die Aktionsgruppe, die diese Parameter enthält, Aktionsgruppenparameter direkt über die Aktion "Aktionsgruppe ausführen" (siehe Abschnitt Verarbeiten von Aktionsgruppenparametern weiter unten) verarbeiten.
Die Werte von Aktionsgruppenparametern werden über die "Aktionsgruppe ausführen"-Aktion, die die übergeordnete Aktionsgruppe aufruft, bereitgestellt. Zulässige Werte sind die Aktionsgruppen (im Projekt), die keine Parameter haben.

 

Anwendungsbeispiel

Hier sehen Sie ein einfaches Beispiel zur Veranschaulichung der Verwendungsweise von Aktionsgruppenparametern. Wir erstellen vier Aktionsgruppen zur Berechnung und Anzeige dreier Eigenschaften von Rechtecken (area (Fläche), diagonals (Diagonalen) und perimeter (Umfang):

 

Calculate (siehe Abbildung oben): Deklariert zwei einfache Parameter ($length und $width) und einen Aktionsgruppenparameter (%RectangleProperty). Der Aktionsgruppenparameter kann als Wert jede der anderen drei Aktionsgruppen erhalten, von denen alle ohne Parameter definiert wurden. In der Aktionsgruppe Calculate definieren wir eine Let-Aktion. In dieser Aktion ist eine Variable namens $result definiert, die das Aktionsgruppenergebnis der Aktionsgruppe, die der Wert des Parameters %RectangleProperty ist, erhält. Als nächstes kommt eine Meldungsfeld-Aktion, mit der der Wert der in der vorherigen Aktion definierten Variablen $result angezeigt wird.
Area (Abbildung unten): Diese Aktionsgruppe enthält eine einzige Rückgabewert-Aktion, die das Produkt der beiden einfache Parameter $length und $width enthält. Die Aktionsgruppe enthält keine Parameter und kann daher als Wert von %RectangleProperty verwendet werden. Falls dies der Fall ist, so erhält die Variable $result in der Aktionsgruppe Calculate bei der Verarbeitung von %RectangleProperty den Rückgabewert der Aktionsgruppe Area.

MTDAGParams02

Diagonals: Diese Aktionsgruppe ähnelt der Aktionsgruppe Area. Sie enthält eine einzige Rückgabewert-Aktion, die die Länge der Diagonalen eines Rechtecks zurückgibt (welche die Quadratwurzel der Summe der Quadrate der beiden einfachen Parameter $length und $width ist; XPath: math:sqrt($width*$width $length*$length)). Wenn diese Aktionsgruppe der Wert von %RectangleProperty ist, so wird der davon zurückgegebene Wert als der Wert der Variablen $result in der Aktionsgruppe Calculate definiert.
Perimeter: Diese Aktionsgruppe ähnelt den Aktionsgruppen Area und Diagonals. Sie enthält eine einzige Rückgabewert-Aktion, die den Umfang eines Rechtecks zurückgibt (XPath: 2*$width + 2*$length). Wenn diese Aktionsgruppe der Wert von %RectangleProperty ist, so wird der davon zurückgegebene Wert als der Wert der Variablen $result in der Aktionsgruppe Calculate definiert.

 

Beachten Sie in der Beschreibung der vier Aktionsgruppen oben die folgenden Punkte:

 

Die Aktionsgruppe Calculate enthält drei Parameter: zwei einfache Parameter und einen Aktionsgruppenparameter.
In den drei anderen Aktionsgruppen (Area, Diagonals, Perimeter) ist kein Parameter deklariert.
Jeder der drei anderen Aktionsgruppen (Area, Diagonals, Perimeter) hat eine Rückgabewert-Aktion, die einen Wert anhand der einfachen in Calculate definierten Parameter berechnet. Der zurückgegebene Wert ist das Aktionsgruppenergebnis dieser einzelnen Aktionsgruppen.
Jede der drei Aktionsgruppen (Area, Diagonals, Perimeter) kann als Wert des Aktionsgruppenparameters %RectangleProperty definiert werden und würde in diesem Fall bei der Verarbeitung das jeweilige Aktionsgruppenergebnis zurückgeben.
Der Aktionsgruppenparameter %RectangleProperty wird in der Aktionsgruppe Calculate verarbeitet. Er liefert den Wert der Variablen $result, der in einem Meldungsfeld angezeigt wird (siehe Abbildung der Aktionsgruppe Calculate oben).

 

 

Bereitstellen der Werte von Aktionsgruppenparametern

Da die Parameter in der Aktionsgruppe Calculate deklariert sind, werden deren Werte übergeben, wenn die Aktionsgruppe Calculate (über eine "Aktionsgruppe ausführen"-Aktion) aufgerufen wird. Wir könnten daher z.B. ein BeiSchaltflächenklick-Ereignis wie in der Abbildung unten definieren.

MTDAGParams03

Wir erstellen eine "Aktionsgruppe ausführen"-Aktion (indem wird die Aktionsgruppe Calculate aus dem Aktionsgruppenbereich in den Ereignisbereich ziehen). Die Parameter der Aktionsgruppe Calculate werden automatisch angezeigt. Für den Aktionsgruppenparameter %RectangleProperty können wir die Aktionsgruppe auswählen, die wir als Wert des Parameters verwenden wollen (siehe Abbildung oben). Wenn die Aktionsgruppe Calculate daher ausgeführt wird, werden die drei Parameter an sie übergeben, die im Aufruf der Gruppe definiert wurden. Wenn die Let-Aktion in der Aktionsgruppe Calculate verarbeitet wird (siehe Abbildung unten), wird die Variable $result auf das Aktionsgruppenergebnis der Aktionsgruppe, die als der Wert von %RectangleProperty definiert wurde, gesetzt.

MTDAGParams04

Anmerkung:Das oben gezeigte Beispiel wurde absichtlich einfach gehalten und soll die Funktionsweise von Aktionsgruppenparametern demonstrieren. Aktionsgruppenparameter werden aber am besten zusammen mit dynamischen Inhalten und zur Ausführung komplexer Aktionen verwendet.

 

Verarbeiten von Aktionsgruppenparametern

Ein Aktionsgruppenparameter erhält eine Aktionsgruppe als seinen Wert. Diese Aktionsgruppe kann auf zwei nützliche Arten als Parameterwert verarbeitet werden:

 

Sie kann ein Ergebnis, nämlich das Aktionsgruppenergebnis, bereitstellen, welches anschließend dazu verwendet werden kann, um den Wert einer mit einer Let-Aktion definierten Variablen festzulegen. Diese Art der Verwendung wurde im Beispiel oben beschrieben.
Sie kann verwendet werden, um bestimmte MobileTogether-Aufgaben, wie z.B. das Aktualisieren von Nodes oder das Senden einer E-Mail durchführen. Es gibt dabei kein Aktionsgruppenergebnis. Dazu wird in der übergeordneten Aktionsgruppe eine "Aktionsgruppe ausführen"-Aktion für die Aktionsgruppenparameter definiert (siehe Abbildung unten). Ziehen Sie dazu den Aktionsgruppenparameter aus dem Aktionsgruppenbereich in die Ereignisdefinition.

MTDAGParams05

Sie können natürlich auch beide Gruppen von Aktionen miteinander kombinieren.

 


© 2019 Altova GmbH