Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Verwenden Sie die If/else condition
-Aufgabe, um Boole’sche bedingte Logik zu Aufgabendiagrammen hinzuzufügen. Diese Aufgaben bestehen aus einem boole’schen Operator und einem Paar von Operanden, wobei die Operanden auf den Auftrags- oder Aufgabenstatus unter Verwendung konfigurierter oder dynamischer Parameter oder Aufgabenwerte verweisen können. Siehe Aufträge parametrisieren.
Angenommen, Sie haben eine Aufgabe mit dem Namen process_records
, die die Anzahl der ungültigen Datensätze in einem Wert mit dem Namen bad_records
verwaltet, und Sie möchten die Verarbeitung verzweigen, wenn Sie auf fehlerhafte Datensätze stoßen. Um diese Logik ihrem Workflow hinzuzufügen, können Sie eine If/else condition
-Aufgabe mit einem Ausdruck wie z. B. {{tasks.process_records.values.bad_records}} > 0
erstellen. Anschließend können Sie abhängige Aufgaben basierend auf den Ergebnissen der Bedingung hinzufügen.
Nach der Ausführung eines If/else condition
-Auftrags, der eine Aufgabe enthält, können Sie das Ergebnis und die Details der Ausdrucksbewertung anzeigen, wenn Sie die Auftragsausführungsdetails in der Benutzeroberfläche anzeigen. Siehe Anzeigen von Details zur Auftragsausführung.
Hinweis
- Numerische und nicht numerische Werte werden je nach booleschem Operator unterschiedlich behandelt:
- Die
==
- und!=
-Operatoren führen einen Zeichenfolgenvergleich ihrer Operanden durch.12.0 == 12
ergibt beispielsweise „false“. - Die Operatoren
>
,>=
und<=
führen numerische Vergleiche ihrer Operanden durch. Beispielsweise wird12.0 >= 12
als „true“ ausgewertet und10.0 >= 12
als „false“ ausgewertet. - Nur numerische Werte, Zeichenfolgen und boolesche Werte sind zulässig, wenn in einem Operanden auf Aufgabenwerte verwiesen wird. Alle anderen Typen führen dazu, dass der Bedingungsausdruck fehlschlägt. Nicht-numerische Werttypen werden in Zeichenfolgen serialisiert und als Zeichenfolgen in
If/else condition
-Ausdrücken behandelt. Wenn beispielsweise ein Vorgangswert auf einen booleschen Wert festgelegt ist, wird er serialisiert in"true"
oder"false"
.
- Die
Konfigurieren einer IF/ELSE-Aufgabe
Fügen Sie eine If/else condition
-Aufgabe auf der Registerkarte Aufgaben in der Benutzeroberfläche Jobs hinzu, indem Sie wie folgt vorgehen:
- Wählen Sie im Dropdownmenü Typ die Option
If/else condition
aus. - Geben Sie im ersten Bedingung-Textfeld den Operanden ein, der ausgewertet werden soll. Der Operand kann auf einen der folgenden Punkte verweisen:
- Eine Auftragsparametervariable.
- Eine Aufgabenparametervariable.
- Ein Aufgabenwert.
- Wählen Sie im Dropdownmenü einen booleschen Operator aus.
- Geben Sie im zweiten Bedingung-Textfeld den Wert für die Auswertung der Bedingung ein.
- Klicken Sie auf Aufgabe speichern.
Konfigurieren von Abhängigkeiten von einer IF/ELSE-Bedingung
Konfigurieren Sie die Abhängigkeiten für die If/else condition
-Aufgabe aus dem Aufgabendiagramm auf der Registerkarte Aufgaben, indem Sie wie folgt vorgehen:
- Wählen Sie die
If/else condition
-Aufgabe im Aufgabendiagramm aus, und klicken Sie auf + Aufgabe hinzufügen. - Geben Sie Details für den Vorgang ein. Das Feld Abhängig von steht standardmäßig auf
<task-name> (true)
, wobei<task-name>
der Name derIf/else condition
-Aufgabe ist.- Wählen Sie
<task-name> (false)
, um eine Aufgabe zu konfigurieren, die bei der Bewertung einer falschen Bedingung ausgeführt wird.
- Wählen Sie
Sie können mehrere Aufgaben so konfigurieren, dass sie seriell oder parallel laufen, basierend auf dem Ergebnis einer If/else condition
. Ziehen Sie die Konfiguration von Run if dependencies
in Betracht, wenn Sie konditionierte Läufe auf der Grundlage von Fehlern bei vorgelagerten Aufgaben benötigen. Siehe Konfigurieren von Anordnungsbeziehungen.