Créer des variables pour l’enregistrement et la gestion de valeurs dans Azure Logic AppsCreate variables for saving and managing values in Azure Logic Apps

Cet article explique comment stocker et utiliser des valeurs dans l’ensemble de votre application logique en créant des variables.This article shows how you can store and work with values throughout your logic app by creating variables. Des variables peuvent, par exemple, vous aider à compter le nombre d’exécution d’une boucle.For example, variables can help you count the number of times that a loop runs. En cas d’itération sur un tableau ou de vérification d’un tableau pour un élément spécifique, vous pouvez utiliser une variable pour référencer le numéro d’index de chaque élément du tableau.When iterating over an array or checking an array for a specific item, you can use a variable to reference the index number for each array item.

Vous pouvez créer des variables pour des types de données tels que entier, flottant, booléen, chaîne, tableau et objet.You can create variables for data types such as integer, float, boolean, string, array, and object. Après avoir créé une variable, vous pouvez effectuer d’autres tâches, par exemple :After you create a variable, you can perform other tasks, for example:

  • Obtenir ou référencer la valeur de la variable.Get or reference the variable's value.
  • Augmenter ou réduire la variable d’une valeur constante, opérations également appelées incrémenter et décrémenter.Increase or decrease the variable by a constant value, also known as increment and decrement.
  • Affecter une valeur différente à la variable.Assign a different value to the variable.
  • Insérer, ou ajouter, la valeur de la variable à la fin d’une chaîne ou d’un tableau.Insert or append the variable's value as the last time in a string or array.

Les variables existent et sont globales uniquement au sein de l’instance d’application logique qui les crée.Variables exist and are global only within the logic app instance that creates them. En outre, elles sont conservées dans toutes les itérations de boucle à l’intérieur d’une instance d’application logique.Also, they persist across any loop iterations inside a logic app instance. Lorsque vous référencez une variable, utilisez le nom de celle-ci en tant que jeton, pas le nom de l’action qui est la façon habituelle de référencer les résultats d’une action.When referencing a variable, use the variable's name as the token, not the action's name, which is the usual way to reference an action's outputs.

Important

Par défaut, les cycles dans une boucle « Foreach » s’exécutent en parallèle.By default, cycles in a "Foreach" loop run in parallel. Quand vous utilisez des variables dans des boucles, exécutez la boucle séquentiellement afin que les variables retournent des résultats prévisibles.When you use variables in loops, run the loop sequentially so variables return predictable results.

Si vous n’avez pas encore d’abonnement Azure, inscrivez-vous pour bénéficier d’un compte Azure gratuit.If you don't have an Azure subscription yet, sign up for a free Azure account.

PrérequisPrerequisites

Pour suivre cet article, voici les éléments que vous avez besoin :To follow this article, here are the items you need:

Initialiser la variableInitialize variable

Vous pouvez créer une variable et déclarer son type de données et sa valeur initiale, le tout au sein d’une seule action dans votre application logique.You can create a variable and declare its data type and initial value - all within one action in your logic app. Vous ne pouvez déclarer des variables qu’au niveau global, pas dans des étendues, des conditions ou des boucles.You can only declare variables at the global level, not within scopes, conditions, and loops.

  1. Dans le portail Azure ou dans Visual Studio, ouvrez votre application logique dans le Concepteur d’application logique.In the Azure portal or Visual Studio, open your logic app in Logic App Designer.

    Cet exemple utilise le portail Azure et une application logique avec un déclencheur existant.This example uses the Azure portal and a logic app with an existing trigger.

  2. Dans votre application logique, à l’étape où vous souhaitez ajouter une variable, effectuez l’une des opérations suivantes :In your logic app, under the step where you want to add a variable, follow one of these steps:

    • Pour ajouter une action à la dernière étape, choisissez Nouvelle étape > Ajouter une action.To add an action under the last step, choose New step > Add an action.

      Ajouter une action

    • Pour ajouter une action entre des étapes, positionnez votre souris sur la flèche de connexion de façon à ce que le signe plus (+) s’affiche.To add an action between steps, move your mouse over the connecting arrow so the plus sign (+) appears. Cliquez sur le signe plus, puis choisissez Ajouter une action.Choose the plus sign, and then choose Add an action.

  3. Dans la zone de recherche, entrez « variables » en tant que filtre.In the search box, enter "variables" as your filter. Dans la liste d’actions, sélectionnez Variables - Initialiser la variable.From the actions list, select Variables - Initialize variable.

    Action select

  4. Fournissez les informations suivantes pour votre variable :Provide this information for your variable:

    PropriétéProperty ObligatoireRequired ValueValue DescriptionDescription
    NameName OUIYes <variable-name><variable-name> Nom de la variable à incrémenterThe name for the variable to increment
    TypeType OUIYes <variable-type><variable-type> Type de données de la variable.The data type for the variable
    ValueValue NonNo <start-value><start-value> Valeur initiale de votre variable.The initial value for your variable

    Conseil : Bien que cette valeur soit facultative, nous vous recommandons de la définir afin de toujours connaître la valeur initiale de votre variable.Tip: Although optional, set this value as a best practice so you always know the start value for your variable.

    Initialiser la variable

  5. À présent, continuez à ajouter les actions de votre choix.Now continue adding the actions you want. Une fois terminé, dans la barre d’outils du concepteur, choisissez Enregistrer.When you're done, on the designer toolbar, choose Save.

Si vous passez du concepteur à l’éditeur en mode Code, voici comment l’action Initialiser la variable s’affiche à l’intérieur de la définition de votre application logique, qui est au format JavaScript Objet Notation (JSON) :If you switch from the designer to the code view editor, here is the way the Initialize variable action appears inside your logic app definition, which is in JavaScript Object Notation (JSON) format:

"actions": {
   "Initialize_variable": {
      "type": "InitializeVariable",
      "inputs": {
         "variables": [ {
               "name": "Count",
               "type": "Integer",
               "value": 0
          } ]
      },
      "runAfter": {}
   }
},

Voici quelques exemples pour d’autres types de variables :Here are examples for some other variable types:

Variable de chaîneString variable

"actions": {
   "Initialize_variable": {
      "type": "InitializeVariable",
      "inputs": {
         "variables": [ {
               "name": "myStringVariable",
               "type": "String",
               "value": "lorem ipsum"
          } ]
      },
      "runAfter": {}
   }
},

Variable booléenneBoolean variable

"actions": {
   "Initialize_variable": {
      "type": "InitializeVariable",
      "inputs": {
         "variables": [ {
               "name": "myBooleanVariable",
               "type": "Boolean",
               "value": false
          } ]
      },
      "runAfter": {}
   }
},

Tableau d’entiersArray with integers

"actions": {
   "Initialize_variable": {
      "type": "InitializeVariable",
      "inputs": {
         "variables": [ {
               "name": "myArrayVariable",
               "type": "Array",
               "value": [1, 2, 3]
          } ]
      },
      "runAfter": {}
   }
},

Tableau de chaînesArray with strings

"actions": {
   "Initialize_variable": {
      "type": "InitializeVariable",
      "inputs": {
         "variables": [ {
               "name": "myArrayVariable",
               "type": "Array",
               "value": ["red", "orange", "yellow"]
          } ]
      },
      "runAfter": {}
   }
},

Obtenir la valeur de la variableGet the variable's value

Pour extraire ou référencer le contenu d’une variable, vous pouvez également utiliser la fonction variables() dans le Concepteur d’application logique et l’éditeur en mode Code.To retrieve or reference a variable's contents, you can also use the variables() function in the Logic App Designer and the code view editor. Lorsque vous référencez une variable, utilisez le nom de celle-ci en tant que jeton, pas le nom de l’action qui est la façon habituelle de référencer les résultats d’une action.When referencing a variable, use the variable's name as the token, not the action's name, which is the usual way to reference an action's outputs.

Par exemple, cette expression obtient les éléments à partir de la variable tableau créée précédemment dans cet article à l’aide de la fonction variables() .For example, this expression gets the items from the array variable created previously in this article by using the variables() function. La fonction string() retourne le contenu de la variable sous forme de chaîne : "1, 2, 3, red"The string() function returns the variable's contents in string format: "1, 2, 3, red"

@{string(variables('myArrayVariable'))}

Incrémenter une variableIncrement variable

Pour augmenter, ou incrément, une variable d’une valeur constante, ajoutez l’action Variables - Incrémenter une variable à votre application logique.To increase or increment a variable by a constant value, add the Variables - Increment variable action to your logic app. Cette action fonctionne uniquement avec les variables de type entier et flottant.This action works only with integer and float variables.

  1. Dans le Concepteur d’application logique, à l’étape où vous souhaitez augmenter une variable existante, choisissez Nouvelle étape > Ajouter une action.In Logic App Designer, under the step where you want to increase an existing variable, choose New step > Add an action.

    Par exemple, cette application logique a déjà un déclencheur et une action qui a créé une variable.For example, this logic app already has a trigger and an action that created a variable. Par conséquent, ajoutez une nouvelle action sous ces étapes :So, add a new action under these steps:

    Ajouter une action

    Pour ajouter une action entre des étapes existantes, positionnez votre souris sur la flèche de connexion de façon à ce que le signe plus (+) s’affiche.To add an action between existing steps, move your mouse over the connecting arrow so that the plus sign (+) appears. Cliquez sur le signe plus, puis choisissez Ajouter une action.Choose the plus sign, and then choose Add an action.

  2. Dans la zone de recherche, entrez « Incrémenter une variable » comme filtre.In the search box, enter "increment variable" as your filter. Dans la liste des actions, sélectionnez Variables - Incrémenter une variable.In the actions list, select Variables - Increment variable.

    Sélectionnez l’action « Incrémenter une variable ».

  3. Fournissez les informations suivantes pour l’incrémentation de votre variable :Provide this information for incrementing your variable:

    PropriétéProperty ObligatoireRequired ValueValue DescriptionDescription
    NameName OUIYes <variable-name><variable-name> Nom de la variable à incrémenterThe name for the variable to increment
    ValueValue NonNo <increment-value><increment-value> Valeur utilisée pour incrémenter la variable.The value used for incrementing the variable. La valeur par défaut est 1.The default value is one.

    Conseil : Bien que cette valeur soit facultative, nous vous recommandons de la définir afin de toujours connaître la valeur spécifique pour l’incrémentation de votre variable.Tip: Although optional, set this value as a best practice so you always know the specific value for incrementing your variable.

    Par exemple :For example:

    Exemple de valeur d’incrément

  4. Une fois terminé, dans la barre d’outils du concepteur, choisissez Enregistrer.When you're done, on the designer toolbar, choose Save.

Si vous passez du concepteur à l’éditeur en mode Code, voici comment l’action Incrémenter une variable s’affiche à l’intérieur de la définition de votre application logique, qui est au format JSON :If you switch from the designer to the code view editor, here is the way the Increment variable action appears inside your logic app definition, which is in JSON format:

"actions": {
   "Increment_variable": {
      "type": "IncrementVariable",
      "inputs": {
         "name": "Count",
         "value": 1
      },
      "runAfter": {}
   }
},

Exemple : créer un compteur de boucleExample: Create loop counter

Des variables sont couramment utilisées pour compter le nombre d’exécutions d’une boucle.Variables are commonly used for counting the number of times that a loop runs. Cet exemple montre comment créer et utiliser des variables pour cette tâche en créant une boucle qui compte les pièces jointes à un e-mail.This example shows how you create and use variables for this task by creating a loop that counts the attachments in an email.

  1. Dans le portail Azure, créez une application logique vide.In the Azure portal, create a blank logic app. Ajoutez un déclencheur qui vérifie la présence de nouveaux e-mails et pièces jointes.Add a trigger that checks for new email and any attachments.

    Cet exemple utilise le déclencheur Office 365 Outlook quand un nouvel e-mail arrive.This example uses the Office 365 Outlook trigger for When a new email arrives. Vous pouvez configurer ce déclencheur de façon à ce qu’il s’active uniquement lorsque l’e-mail contient des pièces jointes.You can set up this trigger to fire only when the email has attachments. En revanche, vous pouvez utiliser n’importe quel connecteur qui vérifie la présence de nouveaux e-mails contenant des pièces jointes, tel que le connecteur Outlook.com.However, you can use any connector that checks for new emails with attachments, such as the Outlook.com connector.

  2. Dans le déclencheur, choisissez Afficher les options avancées.In the trigger, choose Show advanced options. Pour que le déclencheur vérifie la présence de pièces jointes et passe celles-ci au flux de travail de votre application logique, sélectionnez Oui pour ces propriétés :To have the trigger check for attachments and pass those attachments into your logic app's workflow, select Yes for these properties:

    • Contient une pièce jointeHas Attachment
    • Inclure des pièces jointesInclude Attachments

    Rechercher et inclure des pièces jointes

  3. Ajoutez l’action Initialiser la variable.Add the Initialize variable action. Créez une variable de type entier nommée Nombre avec la valeur initiale zéro.Create an integer variable named Count with a zero start value.

    Ajouter une action pour « Initialiser la variable »

  4. Pour parcourir les pièces jointes, ajoutez une boucle Pour chaque en choisissant Nouvelle étape > Plus > Ajouter un pour chaque.To cycle through each attachment, add a for each loop by choosing New step > More > Add a for each.

    Ajouter une boucle « pour chaque »

  5. Dans la boucle, cliquez dans la zone Select an output from previous steps (Sélectionner un résultat des étapes précédentes) .In the loop, click inside the Select an output from previous steps box. Lorsque la liste de contenus dynamiques s’affiche, sélectionnez Pièces jointes.When the dynamic content list appears, select Attachments.

    Sélectionner « Pièces jointes »

    Le champ Pièces jointes passe à votre boucle un tableau contenant les pièces jointes aux e-mails à partir de la sortie du déclencheur.The Attachments field passes an array that has the email attachments from the trigger's output into your loop.

  6. Dans la boucle « pour chaque », sélectionnez Ajouter une action.In the "for each" loop, select Add an action.

    Sélectionner « Ajouter une action »

  7. Dans la zone de recherche, entrez « Incrémenter une variable » comme filtre.In the search box, enter "increment variable" as your filter. Dans la liste des actions, sélectionnez Variables - Incrémenter une variable.From the actions list, select Variables - Increment variable.

    Notes

    Assurez-vous que l’action Incrémenter une variable apparaît dans la boucle.Make sure the Increment variable action appears inside the loop. Si l’action apparaît hors de la boucle, faites-la glisser dans la boucle.If the action appears outside the loop, drag the action into the loop.

  8. Dans l’action Incrémenter une variable, dans la liste Nom, sélectionnez la variable Nombre.In the Increment variable action, from the Name list, select the Count variable.

    Sélectionner la variable « Nombre »

  9. Sous la boucle, ajoutez une action qui vous envoie le nombre de pièces jointes.Under the loop, add any action that sends you the number of attachments. Dans l’action, incluez la valeur de la variable Nombre, par exemple :In your action, include the value from the Count variable, for example:

    Ajouter une action qui envoie les résultats

  10. Enregistrez votre application logique.Save your logic app. Dans la barre d’outils du concepteur, choisissez Enregistrer.On the designer toolbar, choose Save.

Tester votre application logiqueTest your logic app

  1. Si votre application logique n’est pas activée, dans le menu de votre application logique, choisissez Vue d’ensemble.If your logic app isn't enabled, on your logic app menu, choose Overview. Dans la barre d’outils, choisissez Activer.On the toolbar, choose Enable.

  2. Dans la barre d’outils du Concepteur d’application logique, choisissez Exécuter.On the Logic App Designer toolbar, choose Run. Cette étape démarre manuellement votre application logique.This step manually starts your logic app.

  3. Envoyez un e-mail avec une ou plusieurs des pièces jointes au compte de courrier que vous avez utilisé dans cet exemple.Send an email with one or more attachments to the email account you used in this example.

    Cette étape active le déclencheur de l’application logique, qui crée et exécute une instance de flux de travail de votre application logique.This step fires the logic app's trigger, which creates and runs an instance for your logic app's workflow. Ensuite, l’application logique vous envoie un message ou un e-mail indiquant le nombre de pièces jointes dans l’e-mail que vous avez envoyé.As a result, the logic app sends you a message or email that shows the number of attachments in the email you sent.

Si vous passez du concepteur à l’éditeur en mode Code, voici comment la boucle « pour chaque » s’affiche avec l’action Incrémenter une variable à l’intérieur de la définition de votre application logique, qui est au format JSON.If you switch from the designer to the code view editor, here is the way the "for each" loop appears with the Increment variable action inside your logic app definition, which is in JSON format.

"actions": {
   "For_each": {
      "type": "Foreach",
      "actions": {
         "Increment_variable": {
           "type": "IncrementVariable",
            "inputs": {
               "name": "Count",
               "value": 1
            },
            "runAfter": {}
         }
      },
      "foreach": "@triggerBody()?['Attachments']",
      "runAfter": {
         "Initialize_variable": [ "Succeeded" ]
      }
   }
},

Décrémenter une variableDecrement variable

Pour réduire, ou décrémenter, une variable d’une valeur constante, procédez de la même manière que pour augmenter une variable, mais en recherchant et sélectionnant l’action Variables - Décrémenter une variable.To decrease or decrement a variable by a constant value, follow the steps for increasing a variable except that you find and select the Variables - Decrement variable action instead. Cette action fonctionne uniquement avec les variables de type entier et flottant.This action works only with integer and float variables.

Voici les propriétés disponibles pour l’action Décrémenter une variable :Here are the properties for the Decrement variable action:

PropriétéProperty ObligatoireRequired ValueValue DescriptionDescription
NameName OUIYes <variable-name><variable-name> Nom de la variable à décrémenterThe name for the variable to decrement
ValueValue NonNo <increment-value><increment-value> Valeur de la décrémentation de la variable.The value for decrementing the variable. La valeur par défaut est 1.The default value is one.

Conseil : Bien que cette valeur soit facultative, nous vous recommandons de la définir afin de toujours connaître la valeur spécifique pour la décrémentation de votre variable.Tip: Although optional, set this value as a best practice so you always know the specific value for decrementing your variable.

Si vous passez du concepteur à l’éditeur en mode Code, voici comment l’action Décrémenter une variable s’affiche à l’intérieur de la définition de votre application logique, qui est au format JSON.If you switch from the designer to the code view editor, here is the way the Decrement variable action appears inside your logic app definition, which is in JSON format.

"actions": {
   "Decrement_variable": {
      "type": "DecrementVariable",
      "inputs": {
         "name": "Count",
         "value": 1
      },
      "runAfter": {}
   }
},

Définir une variableSet variable

Pour attribuer une valeur différente à une variable, procédez de la même manière que pour augmenter une variable sauf que vous devez :To assign a different value to an existing variable, follow the steps for increasing a variable except that you:

  1. Rechercher et sélectionner l’action Variables - Définir une variable à la place.Find and select the Variables - Set variable action instead.

  2. Fournissez le nom de la variable et la valeur à lui attribuer.Provide the variable name and value you want to assign. Le type de données de la nouvelle valeur et de la variable doivent être le même.Both the new value and the variable must have the same data type. La valeur est requise, car cette action n’a pas de valeur par défaut.The value is required because this action doesn't have a default value.

Voici les propriétés disponibles pour l’action Définir une variable :Here are the properties for the Set variable action:

PropriétéProperty ObligatoireRequired ValueValue DescriptionDescription
NameName OUIYes <variable-name><variable-name> Nom de la variable à modifierThe name for the variable to change
ValueValue OUIYes <new-value><new-value> Valeur que vous souhaitez attribuer à la variable.The value you want to assign the variable. Le type de données des deux doit être identique.Both must have the same data type.

Notes

Sauf si vous incrémentez ou décrémentez des variables, la modification de variables dans des boucles peut produire des résultats inattendus, car les boucles s’exécutent en parallèle ou simultanément par défaut.Unless you're incrementing or decrementing variables, changing variables inside loops might create unexpected results because loops run in parallel, or concurrently, by default. Dans ce cas, essayez de définir votre boucle pour qu’elle s’exécute de manière séquentielle.For these cases, try setting your loop to run sequentially. Par exemple, lorsque vous souhaitez référencer la valeur de la variable à l’intérieur de la boucle et attendez la même valeur au début et à la fin de cette instance de boucle, procédez comme suit pour modifier la façon dont la boucle s’exécute :For example, when you want to reference the variable value inside the loop and expect same value at the start and end of that loop instance, follow these steps to change how the loop runs:

  1. Dans l’angle supérieur droit de votre boucle, sélectionnez le bouton représentant des points de suspension (...), puis Paramètres.In your loop's upper-right corner, choose the ellipsis (...) button, and then choose Settings.

  2. Sous Contrôle d’accès concurrentiel, définissez le paramètre Remplacer les valeurs par défaut sur Activé.Under Concurrency Control, change the Override Default setting to On.

  3. Positionnez le curseur Degré de parallélisme sur 1.Drag the Degree of Parallelism slider to 1.

Si vous passez du concepteur à l’éditeur en mode Code, voici comment l’action Définir une variable s’affiche à l’intérieur de la définition de votre application logique, qui est au format JSON.If you switch from the designer to the code view editor, here is the way the Set variable action appears inside your logic app definition, which is in JSON format. Cet exemple modifie la valeur actuelle de la variable « Nombre ».This example changes the "Count" variable's current value to another value.

"actions": {
   "Initialize_variable": {
      "type": "InitializeVariable",
      "inputs": {
         "variables": [ {
               "name": "Count",
               "type": "Integer",
               "value": 0
          } ]
      },
      "runAfter": {}
   },
   "Set_variable": {
      "type": "SetVariable",
      "inputs": {
         "name": "Count",
         "value": 100
      },
      "runAfter": {
         "Initialize_variable": [ "Succeeded" ]
      }
   }
},

Ajouter à une variableAppend to variable

Pour les variables qui stockent des chaînes ou des tableaux, vous pouvez insérer ou ajouter la valeur d’une variable à la fin de ces chaînes ou des tableaux.For variables that store strings or arrays, you can insert or append a variable's value as the last item in those strings or arrays. Vous pouvez procéder de la même manière que pour augmenter une variable, à l’exception des étapes suivantes :You can follow the steps for increasing a variable except that you follow these steps instead:

  1. Recherchez et sélectionnez une des actions suivantes, selon que votre variable est une chaîne ou un tableau :Find and select one of these actions based on whether your variable is a string or an array:

    • Variables - Ajouter à une variable chaîneVariables - Append to string variable
    • Variables - Ajouter à une variable tableauVariables - Append to array variable
  2. Spécifiez la valeur à ajouter à la fin de la chaîne ou du tableau.Provide the value to append as the last item in the string or array. Cette valeur est obligatoire.This value is required.

Voici les propriétés disponibles pour les actions Ajouter à...  :Here are the properties for the Append to... actions:

PropriétéProperty ObligatoireRequired ValueValue DescriptionDescription
NameName OUIYes <variable-name><variable-name> Nom de la variable à modifierThe name for the variable to change
ValueValue OUIYes <append-value><append-value> Valeur que vous souhaitez ajouter, qui peut être de tout typeThe value you want to append, which can have any type

Si vous passez du concepteur à l’éditeur en mode Code, voici comment l’action Ajouter à une variable tableau s’affiche à l’intérieur de la définition de votre application logique, qui est au format JSON.If you switch from the designer to the code view editor, here is the way the Append to array variable action appears inside your logic app definition, which is in JSON format. Cet exemple crée une variable tableau et ajoute une autre valeur à la fin du tableau.This example creates an array variable, and adds another value as the last item in the array. Le résultat est une variable mise à jour qui contient ce tableau : [1,2,3,"red"]Your result is an updated variable that contains this array: [1,2,3,"red"]

"actions": {
   "Initialize_variable": {
      "type": "InitializeVariable",
      "inputs": {
         "variables": [ {
            "name": "myArrayVariable",
            "type": "Array",
            "value": [1, 2, 3]
         } ]
      },
      "runAfter": {}
   },
   "Append_to_array_variable": {
      "type": "AppendToArrayVariable",
      "inputs": {
         "name": "myArrayVariable",
         "value": "red"
      },
      "runAfter": {
        "Initialize_variable": [ "Succeeded" ]
      }
   }
},

Obtenir de l’aideGet support

Étapes suivantesNext steps