Orchestrator

Schleifenbildung

Inhalte werden von Phrase Language AI maschinell aus dem Englischen übersetzt.

Schleifen können innerhalb eines Workflow implementiert werden, um eine Reihe von Aufgabe basierend auf definierten Bedingungen zu wiederholen.

Die Schleifenkonfiguration wird entweder über den Advanced-Tab einer Blockkonfiguration oder durch Rechtsklick auf einen Block und Auswählen von Edit loop aufgerufen.

Schleifen-Einstellungen erfordern eine Liste von Dingen, mit denen gearbeitet werden soll:

  • Einfache, einzelne Werte, die dann in Aufgabe-Parametern wie {{ @item }} verwendbar sind.

  • Ein .JSON-Objekt, bei dem jedes Element im Objekt über seinen Key adressiert werden kann, wie z. B. {{ @item.key }}.

Zugriff auf die aggregierten Ergebnisse einer Schleife

Der Output aller Iterationen kann als .JSON-Array abgerufen werden, sobald eine Schleife abgeschlossen ist. Der Output jeder Iteration muss eine gültige .JSON-Datei sein.

Es gibt vier Schleifentypen, die definiert werden können und im Feld loop_with ausgewählt werden:

  • withSequence

  • withItems

  • withComplexItems

  • withParam

withSequence

Die withSequence-Schleife ermöglicht eine Iteration über eine Zahlenfolge oder die Generierung eines Wertebereichs innerhalb eines Workflow.

Sie kann verwendet werden, um eine Reihe von Schritten eine bestimmte Anzahl von Malen zu wiederholen oder Operationen basierend auf einem Wertebereich durchzuführen.

Um eine Beispiel-withSequence-Schleife zu Erstellen, führen Sie diese Schritte aus:

  1. Wählen Sie einen leeren Block aus und öffnen Sie die Loop-Konfiguration.

  2. Klicken Sie auf Edit loop.

    Die Konfigurationsoptionen für loop_with werden angezeigt.

  3. Wähle im Feld loop_with withSequence aus.

  4. Gib die Anzahl der Schleifeniterationen in das Feld Count ein.

  5. Gib optional einen Wert ein, mit dem die Schleife beginnen und/oder enden soll.

  6. Klicke auf Save loop.

  7. Klicke in der Konfiguration Parameters auf Edit parameters.

    Konfigurationsoptionen werden angezeigt.

  8. Gib im Feld Message {{ @item }} ein und klicke auf Save parameters.

    Dieser Wert wird zur Laufzeit konvertiert.

Wenn beispielsweise die Anzahl auf 3 und der Startwert auf 2 gesetzt ist, lauten die Ergebnisse dieser Schleife:

  • loop list => [\"2\", \"3\", \"4\"]

  • {{ @item }} => 2 oder 3 oder 4, basierend auf der Iteration

withItems

Die withItems-Schleife ermöglicht die Iteration über eine Liste von Elementen.

Sie kann verwendet werden, wenn Vorgänge basierend auf einer Liste von Elementen ausgeführt werden müssen.

Um eine Beispiel-withItems-Schleife zu Erstellen, befolge diese Schritte:

  1. Wählen Sie einen leeren Block aus und öffnen Sie die Loop-Konfiguration.

  2. Klicken Sie auf Edit loop.

    Die Konfigurationsoptionen für loop_with werden angezeigt.

  3. Wähle im Feld loop_with withItems aus.

  4. Gib en in das Feld variable ein und klicke auf +Item (ein weiteres Feld variable wird Erstellen).

  5. Gib de in das zweite Feld variable ein und Erstellen ein drittes Feld.

  6. Gib fr in das dritte Feld variable ein und Erstellen ein viertes Feld.

  7. Gib us in das vierte Feld variable ein.

  8. Klicke auf Save loop.

  9. Klicke in der Konfiguration Parameters auf Edit parameters.

    Konfigurationsoptionen werden angezeigt.

  10. Gib im Feld Message {{ @item }} ein und klicke auf Save parameters.

    Dieser Wert wird zur Laufzeit konvertiert.

Die Ergebnisse dieser Schleife sind eine Iteration über eine Liste von Sprachcodes:

  • loop list => ["en", "de", "fr", "ua"]

  • {{ @item }} => en oder de .. ua

withComplexItems

Die withComplexItems-Schleife ermöglicht das Iterieren über eine Liste von Objekten.

Sie kann verwendet werden, wenn Vorgänge basierend auf einer Liste komplexer Elemente ausgeführt werden müssen.

Um eine Beispiel-withComplexItems-Schleife zu erstellen, führen Sie diese Schritte aus:

  1. Wählen Sie einen leeren Block aus und öffnen Sie die Loop-Konfiguration.

  2. Klicken Sie auf Edit loop.

    Die Konfigurationsoptionen für loop_with werden angezeigt.

  3. Wählen Sie im Feld loop_with die Option withComplexItems aus.

  4. Klicken Sie auf +Key:value, um einen zweiten Key hinzuzufügen.

  5. Geben Sie für Object 1 Folgendes ein:

    • Key: Value1

      • Key (optional): Name

      • (optional): Projekt 1

    • Key: Value2

      • Key (optional): ID

      • (optional): 11

  6. Klicken Sie auf +Object, um ein zweites Objekt hinzuzufügen, und auf +Key:value für einen zweiten Key.

  7. Geben Sie für Object 2 Folgendes ein:

    • Key: Value1

      • Key (optional): Name

      • (optional): Projekt 2

    • Key: Value2

      • Key (optional): ID

      • (optional): 22

    Beispiel für Einstellungen:

    Loop with Complex Items Example
  8. Klicke in der Konfiguration Parameters auf Edit parameters.

    Konfigurationsoptionen werden angezeigt.

  9. Gib im Feld Message {{ @item.name }} ein und klicke auf Save parameters. Dieser Wert wird zur Laufzeit konvertiert.

Die Ergebnisse dieser Schleife sind eine Iteration über eine Liste von Projekten:

  • Schleifen-Liste =>

    [
      {
        "name": "Projekt 1",
        "id": 11
      },
      {
        "name": "Projekt 2",
        "id": 22
      }
    ]
  • {{ @item }} =>

    {
      "name": "Projekt 1",
      "id": 11
    }
  • {{ @item.name }} => Projekt 1

  • {{ @item.id }} => 11

withParam

Die withParam-Schleife ermöglicht die Iteration über eine dynamische Liste, die als Output von einer vorherigen Aufgabe oder einem Trigger ausgegeben wird.

Diese Schleife wird nur als Referenz im Parameterfeld verwendet.

Beispiel:

Outputs der Aufgabe (Strings: Veröffentlichung eines Release):

{
  "created_at": "2015-01-28T09:52:53Z",
  "environments": ["development", "production"],
  "id": "abcd1234cdef1234abcd1234cdef1234",
  "locales": [
    {
      "code": "en-GB",
      "id": "abcd1234cdef1234abcd1234cdef1234",
      "name": "Englisch"
    },
    {
      "id": "abcd5678cdef5678abcd5678cdef5678",
      "name": "German",
      "code": "de_DE"
    }
  ],
  "platforms": ["android"],
  "project": {
    "created_at": "2015-01-28T09:52:53Z",
    "id": "abcd1234cdef1234abcd1234cdef1234",
    "main_format": "xml",
    "name": "My Android Project",
    "updated_at": "2015-01-28T09:52:53Z"
  },
  "updated_at": "2015-01-28T09:52:53Z",
  "version": 1
}

Wenn die Schleifen-Einstellungen withParam mit {{ $.locales }} festgelegt sind, dann:

  • Schleifen-Liste =>

    [
      {
        "code": "en-GB",
        "id": "abcd1234cdef1234abcd1234cdef1234",
        "name": "Englisch"
      },
      {
        "id": "abcd5678cdef5678abcd5678cdef5678",
        "name": "German",
        "code": "de_DE"
      }
    ]
  • Erste {{ @item }} =>

    {
      "code": "en-GB",
      "id": "abcd1234cdef1234abcd1234cdef1234",
      "name": "Englisch"
    }
  • {{ @item.code }} => en-GB

  • {{ @item.name }} => Englisch

Oder wenn {{ $.environments }} referenziert wird, dann:

  • Liste durchlaufen => ["development", "production"]

  • {{ @item }} => development oder production

War dieser Beitrag hilfreich?

Sorry about that! In what way was it not helpful?

The article didn’t address my problem.
I couldn’t understand the article.
The feature doesn’t do what I need.
Other reason.

Note that feedback is provided anonymously so we aren't able to reply to questions.
If you'd like to ask a question, submit a request to our Support team.
Thank you for your feedback.