Créer ou joindre des branches parallèles pour des actions de workflow dans Azure Logic Apps

Par défaut, vos actions dans les workflows d’application logique s’exécutent de manière séquentielle. Pour effectuer des actions indépendantes en même temps, vous pouvez créer des branches parallèles, puis joindre ces branches plus tard dans votre flux.

Conseil

Si vous disposez d’un déclencheur qui reçoit un tableau et souhaite exécuter un workflow pour chaque élément du tableau, vous pouvez dégrouper ce tableau avec le déclencheur de propriété SplitOn.

Prérequis

Ajouter une branche parallèle

Pour exécuter des étapes indépendantes en même temps, vous pouvez ajouter des branches parallèles en regard d’une étape existante.

Run steps in parallel

Votre application logique attend que toutes les branches se terminent avant de poursuivre le flux de travail. Les branches parallèles s’exécutent uniquement si leurs valeurs de propriété runAfter correspondent à l’état de l’étape parente terminée. Par exemple, les deux branches branchAction1 et branchAction2 sont définies pour s’exécuter uniquement lorsque l’étape parentAction est terminée avec l’état Succeeded.

Notes

Avant que vous ne commenciez, votre application logique doit déjà disposer d’une étape dans laquelle vous pouvez ajouter des branches parallèles.

  1. Dans le portail Azure, ouvrez votre application logique dans le Concepteur d’applications logiques.

  2. Placez le pointeur sur la flèche au-dessus de l’étape où vous souhaitez ajouter des branches parallèles. Cliquez sur le signe plus ( + ) qui s’affiche, puis choisissez Ajouter une branche parallèle.

    Add parallel branch

  3. Dans la zone de recherche, recherchez et sélectionnez l’action souhaitée.

    Screenshot that shows the

    Maintenant, votre action sélectionnée s’affiche dans la branche parallèle, par exemple :

    Find and select the action you want

  4. Dans chaque branche parallèle, ajoutez les étapes de votre choix. Pour ajouter une autre action à une branche, déplacez le pointeur sous l’action où vous souhaitez ajouter une action séquentielle. Cliquez sur le signe plus ( + ) qui s’affiche, puis sélectionnez Ajouter une action.

    Add sequential action to parallel branch

  5. Dans la zone de recherche, recherchez et sélectionnez l’action souhaitée.

    Screenshot that shows the

    Maintenant, votre action sélectionnée s’affiche dans la branche actuelle, par exemple :

    Find and select sequential action

Pour fusionner à nouveau des branches, joignez vos branches parallèles.

Définition de branche parallèle (JSON)

Si vous travaillez en mode Code, vous pouvez définir la structure parallèle dans la définition JSON de votre application logique à la place. Exemple :

{
  "triggers": {
    "myTrigger": {}
  },
  "actions": {
    "parentAction": {
      "type": "<action-type>",
      "inputs": {},
      "runAfter": {}
    },
    "branchAction1": {
      "type": "<action-type>",
      "inputs": {},
      "runAfter": {
        "parentAction": [
          "Succeeded"
        ]
      }
    },
    "branchAction2": {
      "type": "<action-type>",
      "inputs": {},
      "runAfter": {
        "parentAction": [
          "Succeeded"
        ]
      }
    }
  },
  "outputs": {}
}

Joindre des branches parallèles

Pour fusionner des branches parallèles, ajoutez simplement une étape en bas, sous toutes les branches. Cette étape s’exécute à l’issue de l’exécution de toutes les branches parallèles.

Join parallel branches

  1. Dans le portail Azure, recherchez et ouvrez votre application logique dans le concepteur d’application logique.

  2. Sous les branches parallèles que vous souhaitez joindre, choisissez Nouvelle étape.

    Add step to join

  3. Dans la zone de recherche, recherchez et sélectionnez l’action que vous voulez comme étape qui joint les branches.

    Find and select the action that joins parallel branches

    À présent, les branches parallèles sont fusionnées.

    Joined branches

Définition de jointure (JSON)

Si vous travaillez en mode Code, vous pouvez définir la structure de jointure dans la définition JSON de votre application logique à la place. Exemple :

{
  "triggers": {
    "myTrigger": { }
  },
  "actions": {
    "parentAction": {
      "type": "<action-type>",
      "inputs": { },
      "runAfter": {}
    },
    "branchAction1": {
      "type": "<action-type>",
      "inputs": { },
      "runAfter": {
        "parentAction": [
          "Succeeded"
        ]
      }
    },
    "branchAction2": {
      "type": "<action-type>",
      "inputs": { },
      "runAfter": {
        "parentAction": [
          "Succeeded"
        ]
      }
    },
    "joinAction": {
      "type": "<action-type>",
      "inputs": { },
      "runAfter": {
        "branchAction1": [
          "Succeeded"
        ],
        "branchAction2": [
          "Succeeded"
        ]
      }
    }
  },
  "outputs": {}
}

Obtenir de l’aide

Étapes suivantes