Allgemein
Set#
Mit der Aktion Set kann ein Wert in eine Platzhalter-Variable gesetzt werden. Diese Variable kann im späteren Ablauf des Skripts beliebig oft verwendet werden.
<Set Variable="" Value="" Condition="" />Attribute:
- Variable: Die Variable, in der der Wert gespeichert wird.
- Value: Der Wert, der der Variable zugewiesen wird.
- Condition: (Optional) Steuert die Ausführung der Aktion. Wenn die Bedingung nicht erfüllt ist, wird die Aktion übersprungen.
Beispiel:
<Set Variable="{@Nachricht}" Value="Hallo Welt" />- Weist der Variable {@Nachricht} den Wert Hallo Welt zu.
Use#
Die Aktion Use definiert einen benannten Alias (Tag) für einen Wert oder eine Variable. Der Tag kann anschließend in Aktionsattributen automatisch eingesetzt werden. Typischer Einsatz: Verbindungsobjekte, Kontonamen oder UserPrincipalName zentral definieren, damit diese nicht in jeder Aktion erneut angegeben werden müssen.
<Use Tag="" Value="" Condition="" />
Attribute:
Tag: Der Name des Alias.
Value: Der Wert, der dem Alias zugewiesen wird.
Condition: (Optional) Steuert die Ausführung der Aktion. Wenn die Bedingung nicht erfüllt ist, wird die Aktion übersprungen.
Beispiel:
<Use Tag="Connection" Value="{@myConnection}" Condition="" />
<Use Tag="UserPrincipalName" Value="[email protected]" Condition="" />
<Use Tag="Account" Value="{@Account:Office}" Condition="" />In diesem Beispiel werden drei Aliase definiert. Anschließend können alle Aktionen die das Attribut Connection, UserPrincipalName oder Account unterstützen, diesen Wert automatisch verwenden ohne ihn erneut angeben zu müssen. Dazu muss das jeweilige Attribut aus der Aktion entfernt werden.
Print#
Die Aktion Print erzeugt einen Text im Protokoll der ausgeführten Definition. Das Argument Text beinhaltet den zu protokollierenden Text. Das Attribut Variable enthält den Rückgabewert der Aktion vom Typ Boolean und gibt an, ob die Aktion erfolgreich ausgeführt wurde.
<Print Text="" Condition="" Variable="{@Result}" IgnoreError="false" />Attribute:
- Text: Der zu protokollierende Text.
- Condition: (Optional) Steuert die Ausführung der Aktion. Wenn die Bedingung nicht erfüllt ist, wird die Aktion übersprungen.
- Variable: (Optional) Variable, in der gespeichert wird, ob die Aktion erfolgreich ausgeführt wurde (true oder false).
- IgnoreError: (Optional) Gibt an, ob Fehler ignoriert werden sollen (true oder false, Standardwert: false).
ThrowError#
Die Aktion ThrowError lässt das Skript z.B. abhängig von einer Bedingung in Condition mit dem angegebenen Text als Fehler beenden. Das Argument Text beinhaltet den Text für die Fehlermeldung.
<ThrowError Text="" Condition="" Variable="{@Result}" IgnoreError="false" />Attribute:
- Text: Der zu protokollierende Text.
- Condition: (Optional) Steuert die Ausführung der Aktion. Wenn die Bedingung nicht erfüllt ist, wird die Aktion übersprungen.
- Variable: (Optional) Variable, in der gespeichert wird, ob die Aktion erfolgreich ausgeführt wurde (true oder false).
- IgnoreError: (Optional) Gibt an, ob Fehler ignoriert werden sollen (true oder false, Standardwert: false).
If#
Das IF-Konstrukt ermöglicht die bedingte Ausführung von Anweisungen basierend auf auszuwertenden Bedingungen. Mit diesem flexiblen Konstrukt können komplexe Entscheidungsstrukturen innerhalb von Workflows oder Skripten realisiert werden.
<If>
<Then Condition="{@Value}=5">
<Print Text="Wert ist 5" />
</Then>
<Then Condition="{@Value}=7">
<Print Text="Wert ist 7" />
</Then>
...
<Else>
<Print Text="Wert ist unbekannt" />
</Else>
</If>Attribute:
- Then: Block der die enthaltenen Aktionen ausführt, sobald die Prüfung der Bedingung in dem Attribut Condition erfüllt ist.
- Else: Optionaler Block, der ausgeführt wird, wenn keine Bedingung in den vorherigen Then Prüfungen zutrifft.
Select#
Das Select-Konstrukt ermöglicht die bedingte Ausführung von Anweisungen basierend auf dem Wert einer Variablen. Mit diesem flexiblen Konstrukt können komplexe Entscheidungsstrukturen innerhalb von Workflows oder Skripten realisiert werden.
<Select Case="{@Value}" Condition="" >
<Case Value="A">
<Print Text="Wert ist A" />
</Case>
<Case Value="B">
<Print Text="Wert ist B" />
</Case>
<Case Value="C">
<Print Text="Wert ist C" />
</Case>
...
<CaseElse>
<Print Text="Wert ist unbekannt" />
</CaseElse>
</Select>Attribute:
- Case: Gibt den Wert an, gegen den die eingegebene Variable überprüft wird.
- Condition: (Optional) Steuert die Ausführung des gesamten Select-Konstrukts. Wenn die Bedingung nicht erfüllt ist, wird die Ausführung übersprungen.
- Value: Der Vergleichswert für das jeweilige Case-Element.
- CaseElse: Optionaler Block, der ausgeführt wird, wenn kein Wert in den Case-Elementen übereinstimmt.
ForEach#
Die Aktion ForEach iteriert über die dem Attribut Data zugewiesenen Daten. Auf die Werte einer Spalte kann innerhalb der Schleife über {@Data:Spaltenname} zugegriffen werden. Bei jedem Schleifendurchlauf werden die in ForEach verschachtelten Aktionen ausgeführt.
<ForEach Data="{@myData}" Condition="" >
... {@Data:Spaltenname} ...
</ForEach>Attribute:
- Data: Das Datenobjekt (z.B. Daten-Tabelle), über das iteriert wird.
- Condition: (Optional) Steuert die Ausführung der Aktion. Wenn die Bedingung nicht erfüllt ist, wird die Aktion übersprungen.
Besondere Hinweise:
{@Data:Spaltenname}gibt den Wert der Spalte Spaltenname im aktuellen Datensatz zurück.- Mit ContinueForEach kann die aktuelle Iteration übersprungen werden.
- Mit ExitForEach kann die Schleife vorzeitig beendet werden.
ContinueForEach#
Die Aktion ContinueForEach bricht die aktuelle Iteration der ForEach Schleife ab und führt die nächste Iteration aus.
<ContinueForEach Condition="" />Attribute:
- Condition: (Optional) Steuert die Ausführung der Aktion. Wenn die Bedingung nicht erfüllt ist, wird die Aktion übersprungen.
ExitForEach#
Die Aktion ExitForEach verlässt die ForEach Schleife. Es werden keinen weiteren Iterationen durchgeführt.
<ExitForEach Condition="" />Attribute:
- Condition: (Optional) Steuert die Ausführung der Aktion. Wenn die Bedingung nicht erfüllt ist, wird die Aktion übersprungen.
Repeat
Die Aktion Repeat wiederholt die verschachtelten Aktionen so oft, wie in Count angegeben. Der Schleifenzähler wird bei jedem Durchlauf um 1 erhöht und ist über die Variable {@CurrentCount} abrufbar. Hinweis: {@CurrentCount} wird von Repeat deklariert und muss nicht separat über Set angelegt werden.
<Repeat Count="{@RepeatCount}" Condition="" Variable="{@CurrentCount}">
...
</Repeat>Attribute:
- Count: Die Anzahl der Wiederholungen.
- Condition: (Optional) Steuert die Ausführung der Aktion. Wenn die Bedingung nicht erfüllt ist, wird die Aktion übersprungen.
- Variable: Variable, in der der aktuelle Schleifenzähler gespeichert wird (entspricht
{@CurrentCount}).
Besondere Hinweise:
- Mit ContinueRepeat kann die aktuelle Iteration übersprungen werden.
- Mit ExitRepeat kann die Schleife vorzeitig beendet werden.
ContinueRepeat
Die Aktion ContinueRepeat bricht die aktuelle Iteration der Repeat Schleife ab und führt die nächste Iteration durch.
<ContinueRepeat Condition="" />Attribute:
- Condition: (Optional) Steuert die Ausführung der Aktion. Wenn die Bedingung nicht erfüllt ist, wird die Aktion übersprungen.
ExitRepeat#
Die Aktion ExitRepeat verlässt die Repeat Schleife. Es werden keinen weiteren Iterationen durchgeführt.
<ExitRepeat Condition="" />Attribute:
- Condition: (Optional) Steuert die Ausführung der Aktion. Wenn die Bedingung nicht erfüllt ist, wird die Aktion übersprungen.
Sleep#
Die Aktion Sleep verzögert die Ausführung des Skripts für den im Attribut Milliseconds angegebenen Zeitraum. Das Attribut Variable enthält den Rückgabewert der Aktion vom Typ Boolean und gibt an ob die Aktion erfolgreich ausgeführt wurde.
<Sleep Milliseconds="" Condition="" Variable="{@Result}" IgnoreError="false" />Attribute:
- Milliseconds: Wartezeit in Millisekunden.
- Condition: (Optional) Steuert die Ausführung der Aktion. Wenn die Bedingung nicht erfüllt ist, wird die Aktion übersprungen.
- Variable: (Optional) Variable, in der gespeichert wird, ob die Aktion erfolgreich ausgeführt wurde (true oder false).
- IgnoreError: (Optional) Gibt an, ob Fehler ignoriert werden sollen (true oder false, Standardwert: false).
Pause#
Die Aktion Pause pausiert die Ausführung des Skripts. Der Einsatzzweck der Aktion Pause ist das Debuggen des Skripts. Anschließend kann ab dieser Position im Einzelschritten fortgefahren werden.
<Pause Condition="" />Attribute:
- Condition: (Optional) Steuert die Ausführung der Aktion. Wenn die Bedingung nicht erfüllt ist, wird die Aktion übersprungen.
Stop#
Die Aktion Stop stoppt die Ausführung des Skripts.
<Stop Condition="" />Attribute:
- Condition: (Optional) Steuert die Ausführung der Aktion. Wenn die Bedingung nicht erfüllt ist, wird die Aktion übersprungen.
ClearLog#
Die Aktion ClearLog leert die Ausgabe im Ausgabefenster.
<ClearLog Condition="" />Attribute:
- Condition: (Optional) Steuert die Ausführung der Aktion. Wenn die Bedingung nicht erfüllt ist, wird die Aktion übersprungen.