Orchestrator

Bouclage

Le contenu est traduit de l’anglais par Phrase Language AI.

Des boucles peuvent être implémentées au sein d'un flux de travaux pour répéter un ensemble de tâches en fonction de conditions définies.

La configuration de la boucle est accessible soit dans l'onglet Advanced de la configuration d'un bloc, soit en faisant un clic droit sur un bloc et en Sélectionner modifier la boucle.

Les paramètres de boucle nécessitent une liste d'éléments sur lesquels opérer :

  • Des valeurs simples et brutes, qui sont ensuite utilisables dans les paramètres de tâche tels que {{ @item }}.

  • Un objet .JSON où chaque élément de l'objet peut être adressé par sa clé telle que {{ @item.key }}.

Accéder aux résultats agrégés d'une boucle

La sortie de toutes les itérations peut être accédée sous forme de tableau .JSON une fois qu'une boucle est terminée. La sortie de chaque itération doit être un fichier .JSON valide.

Il existe quatre types de boucles qui peuvent être définis et qui sont sélectionnés dans le champ loop_with :

  • withSequence

  • withItems

  • withComplexItems

  • withParam

withSequence

La boucle withSequence permet une itération sur une séquence de nombres ou la génération d'une plage de valeurs au sein d'un flux de travaux.

Elle peut être utilisée pour répéter un ensemble d'étapes un nombre spécifique de fois ou pour effectuer des opérations basées sur une plage de valeurs.

Pour Créer un exemple de boucle withSequence, suivez ces étapes :

  1. Sélectionner un bloc vide et ouvrez la configuration Loop.

  2. Cliquez sur modifier la boucle.

    Les options de configuration loop_with sont présentées.

  3. Dans le champ loop_with, sélectionner withSequence.

  4. Saisissez le nombre d'itérations de boucle dans le champ Count.

  5. Optionnellement, saisissez une valeur à partir de laquelle la boucle doit commencer et/ou se terminer.

  6. Cliquez sur enregistrer la boucle.

  7. Depuis la configuration Parameters, cliquez sur modifier les paramètres.

    Les options de configuration sont présentées.

  8. Dans le champ Message, saisissez {{ @item }} et cliquez sur enregistrer les paramètres.

    Cette valeur sera convertie lors de l'exécution.

Par exemple, si le nombre est défini sur 3 et la valeur de départ sur 2, les résultats de cette boucle seront :

  • liste de boucle => ["2", "3", "4"]

  • {{ @item }} => 2 ou 3 ou 4, selon l'itération

withItems

La boucle withItems permet d'itérer sur une liste d'éléments.

Elle peut être utilisée lorsqu'il est nécessaire d'effectuer des opérations basées sur une liste d'éléments.

Pour Créer un exemple de boucle withItems, suivez ces étapes :

  1. Sélectionner un bloc vide et ouvrez la configuration Loop.

  2. Cliquez sur modifier la boucle.

    Les options de configuration loop_with sont présentées.

  3. Depuis le champ loop_with, Sélectionner withItems

  4. Saisissez en dans le champ variable et cliquez sur +Item (un autre champ variable est Créer).

  5. Saisissez de dans le second champ variable et Créer un troisième champ.

  6. Saisissez fr dans le troisième champ variable et Créer un quatrième champ.

  7. Saisissez us dans le quatrième champ variable.

  8. Cliquez sur enregistrer la boucle.

  9. Depuis la configuration Parameters, cliquez sur modifier les paramètres.

    Les options de configuration sont présentées.

  10. Dans le champ Message, saisissez {{ @item }} et cliquez sur enregistrer les paramètres.

    Cette valeur sera convertie lors de l'exécution.

Les résultats de cette boucle seront une itération sur une liste de codes de langue :

  • liste de boucle => ["en", "de", "fr", "ua"]

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

withComplexItems

La boucle withComplexItems permet d'itérer sur une liste d'objets.

Elle peut être utilisée lorsqu'il est nécessaire d'effectuer des opérations basées sur une liste d'éléments complexes.

Pour Créer un exemple de boucle withComplexItems, suivez ces étapes :

  1. Sélectionner un bloc vide et ouvrez la configuration Loop.

  2. Cliquez sur modifier la boucle.

    Les options de configuration loop_with sont présentées.

  3. Depuis le champ loop_with, Sélectionner withComplexItems

  4. Cliquez sur +Key:value pour ajouter une seconde clé.

  5. Pour Object 1, saisissez ce qui suit :

    • clé: Value1

      • clé (Facultatif): name

      • (Facultatif): projet 1

    • clé: Value2

      • clé (Facultatif): Identifiant

      • (Facultatif): 11

  6. Cliquez sur +Object pour ajouter un second objet et +Key:value pour une seconde clé.

  7. Pour Object 2, saisissez ce qui suit :

    • clé: Value1

      • clé (Facultatif): name

      • (Facultatif): projet 2

    • clé: Value2

      • clé (Facultatif): Identifiant

      • (Facultatif): 22

    Exemple de paramètres :

    Loop with Complex Items Example
  8. Depuis la configuration Parameters, cliquez sur modifier les paramètres.

    Les options de configuration sont présentées.

  9. Dans le champ Message, saisissez {{ @item.name }} et cliquez sur enregistrer les paramètres. Cette valeur sera convertie lors de l'exécution.

Les résultats de cette boucle seront une itération sur une liste de projets :

  • boucle liste =>

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

    {
      "name": "Project 1",
      "id": 11
    }
  • {{ @item.name }} => Projet 1" ,translation_5:

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

withParam

La boucle withParam permet d'itérer sur une liste dynamique qui est la sortie de toute tâche ou déclencheur précédent.

Cette boucle est simplement utilisée comme référence dans le champ de paramètre.

Exemple :

Sorties de la tâche (Strings: Publier une version) :

{
  "created_at": "2015-01-28T09:52:53Z",
  "environments": ["development", "production"],
  "id": "abcd1234cdef1234abcd1234cdef1234",
  \"locales\": [
    {
      "code": "en-GB",
      "id": "abcd1234cdef1234abcd1234cdef1234",
      \"name\": \"English\"
    },
    {
      "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
}

Si les paramètres de boucle withParam sont définis avec {{ $.locales }}, alors :

  • boucle liste =>

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

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

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

Ou si {{ $.environments }} est référencé, alors :

  • boucle liste => [\"development\", \"production\"]

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

Cet article vous a-t-il été utile ?

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.