Diese Seite wurde von der Cloud Translation API übersetzt.
Switch to English

Untergeordneten Workflow erstellen und ausführen

Mit Unterworkflows können Sie einen Logiksatz oder eine Reihe von Schritten definieren, die Sie mehrmals aufrufen möchten. Auf diese Weise wird die Workflow-Definition vereinfacht. Subworkflows sind einer Funktion oder einem Ablauf in einer Programmiersprache ähnlich. Sie können Parameter und Rückgabewerte akzeptieren, sodass Sie komplexere Workflows mit einer größeren Bandbreite von Anwendungen erstellen können.

Auf dieser Seite erfahren Sie, wie Sie einen Unterworkflow definieren und in einem Workflow aufrufen. Grundlegende Workflow-Aufgaben finden Sie unter Workflow erstellen und aktualisieren und Workflow ausführen.

Workflow mit einem Unterworkflow erstellen

So erstellen Sie einen Unterworkflow:

  1. Fügen Sie oben in der Workflow-Definition einen main-Block hinzu:

    main:
       steps:
           - step_name:
               ...
           ...
    

    Wenn ein Workflow einen untergeordneten Workflow hat, muss der Hauptworkflow in einen main-Block platziert werden.

  2. Definieren Sie den Unter-Workflow unter den Hauptschritten des Workflows:

    main:
       steps:
           - step_name:
               ...
           ...
    [SUBWORKFLOW_NAME]:
        params: [PARAMETER_1[: DEFAULT_VALUE1], PARAMETER_2[: DEFAULT_VALUE2]...]
        steps:
            - step_name:
            ...
    

    Dabei gilt:

    • SUBWORKFLOW_NAME: erforderlich. Name des Unter-Workflows.
    • PARAMETER_1, PARAMETER_2: Optional. Parameter, die vom Unterworkflow verwendet werden
    • DEFAULT_VALUE1, DEFAULT_VALUE2: Optional. Standardwerte für die jeweiligen Parameter.

    Wenn Sie keine Parameter an den Unterworkflow übergeben müssen, löschen Sie den Block params.

  3. Definieren Sie im Unterworkflow die Schritte genau wie im Hauptworkflow.

  4. Zum Aufrufen des Unterworkflows aus dem Hauptworkflow fügen Sie im Hauptworkflow in einem Schritt den Abschnitt call hinzu. Optional können Sie Argumente für die Übergabe an den Subworkflow bereitstellen:

    main:
       - [STEP_NAME]:
           call: [SUBWORKFLOW_NAME]
           [args:
               ARG_1: VALUE
               ARG_2: VALUE
               ...]
           [result: OUTPUT_VARIABLE]
    [SUBWORKFLOW_NAME]:
        params: [PARAMETER_1,PARAMETER_2...]
        steps:
            - step_1:
            ...
    

    Dabei gilt:

    • SUBWORKFLOW_NAME: erforderlich. Name des Unter-Workflows.
    • ARG_1, ARG_2: Optional. Die Argumente, die an den Unterworkflow übergeben werden, wenn der Subworkflow Parameter akzeptiert.
    • VALUE: Optional. Die Werte, für die die Argumente festgelegt sind.
    • OUTPUT_VARIABLE: Optional. Die Variable, in der die vom Workflow zurückgegebenen Daten gespeichert werden, wenn der Subworkflow etwas zurückgibt.

Beispiel

In diesem Beispiel wird gezeigt, wie Sie einen Unterworkflow namens name_message definieren und aus dem Hauptworkflow aufrufen:

main:
    steps:
        - call_subworkflow:
            call: name_message
            args:
                first_name: "Sherlock"
                last_name: "Holmes"
            result: output
        - call_subworkflow2:
            call: name_message
            args:
                first_name: "Ada"
                last_name: "Lovelace"
            result: output2
        - return_message:
            return: ${output + output2}

name_message:
    params: [first_name, last_name, country: "England"]
    steps:
        - prepareMessage:
            return: ${"Hello " + first_name + " " + last_name + " from " + country + "."}

Mit dieser Workflowdefinition gilt Folgendes:

  • Der Hauptworkflow ruft den Unterworkflow name_message zweimal aus den Schritten call_subworkflow und call_subworkflow2 auf.
  • Die beiden Schritte enthalten verschiedene Eingaben für die Argumente first_name und last_name, die dann an den Unterworkflow übergeben werden.
  • Der untergeordnete Workflow name_message übergibt die Argumente an ihn und erstellt eine einfache Nachricht, wobei der Standardwert von England für die Variable country angegeben wird.
  • Der untergeordnete Workflow gibt die von ihm erstellte Nachricht an den Hauptworkflow zurück.
  • In den Schritten im Hauptworkflow werden die Ergebnisse als output bzw. output2 gespeichert.
  • Der Hauptworkflow kombiniert output und output2 zu einer einzigen Nachricht und gibt das Ergebnis zurück: Hello Sherlock Holmes from England. Hello Ada Lovelace from England.

Nächste Schritte