Aller au contenu principal

Répéter

Configuration actuelle de la tâche `Repeat` dans le concepteur de flux de travail
  • Type de tâche : loop-control

La tâche Répéter agit comme un contrôleur de flux pour créer une boucle. Sa fonction est de répéter l'exécution de la tâche précédente jusqu'à ce qu'une condition de sortie spécifique soit satisfaite ou qu'un nombre maximal d'itérations n'ait pas été atteint.

C'est l'outil idéal pour implémenter des logiques d'attente actives (polling), tenter une opération plusieurs fois en cas d'échec, ou exécuter une action pour un nombre fixe de fois.

Configuration

La configuration de la tâche définit les règles qui régissent la boucle.

  • Condition de sortie (Condition de sortie) : Représente l'expression qui est évaluée à la fin de chaque itération. La boucle continue de se répéter tant que cette condition est fausse. Dès que la condition devient vraie, la boucle s'arrête et le Workflow continue dans le branche de sortie de la tâche Répéter.
    • Exemple dynamique : #>Déclarer des variables.x<# == 5 (la boucle s'arrête lorsque la variable x atteint la valeur 5).
    • Exemple statique : 1 == 1 (expression toujours vraie, la boucle s'arrêtera après la première exécution).
  • Limite d'itérations (Limite d'itérations) : Il s'agit d'un mécanisme de sécurité et de contrôle. Il définit le nombre maximal de fois où la tâche précédente peut être répétée. La boucle s'arrête au raggiungimento de cette limite, quel que soit le fait que la "Condition de sortie" ait été satisfaite ou non.
  • Délai (s) (Délai en secondes) : L'intervalle de temps, en secondes, entre la fin d'une itération et le début de la suivante. Définir une valeur supérieure à 0 est utile pour éviter de surcharger un système avec des requêtes trop fréquentes (polling).

Exemple d'utilisation

Ce scénario, visible dans le diagramme fourni, montre comment utiliser le Répéter pour exécuter une action jusqu'à ce qu'un compteur atteigne une certaine valeur.

  1. Déclarer des variables: Une tâche initiale déclare une variable x = 1.
  2. Définir des variables: C'est la tâche qui sera répétée. À chaque exécution, incrémente la valeur de la variable x de 1.
  3. Répéter : La tâche Répéter est configurée comme suit :
    • Condition de sortie : #>Déclarer des variables.x<# == 5
    • Limite d'itérations : 10
    • Délai (s) : 0

Flux d'exécution :

  • La tâche Définir des variables est exécutée pour la première fois, x devient 1.
  • La tâche Répéter évalue la condition : 1 == 5 est fausse. La boucle continue.
  • La tâche Définir des variables est exécutée à nouveau, x devient 2.
  • Le Répéter évalue : 2 == 5 est fausse. La boucle continue.
  • ... ce processus se répète.
  • Lorsque Définir des variables définit x à 5, le Répéter évalue 5 == 5, ce qui est vrai. La condition de sortie est satisfaite, la boucle s'arrête et le Workflow continue.

Paramètres de sortie

À la complétion de l'exécution, la tâche rend disponibles les Paramètres de sortie, utilisables comme entrée dans les tâches suivantes du Workflow.

  • result: Ce paramètre contient un message textuel descriptif qui explique la raison de la terminaison de la boucle. La valeur de ce paramètre change en fonction du scénario :
    • Exemple si la boucle termine parce que la Condition de sortie est satisfaite : "Itération 4 complétée (sur 10 max)"
    • Exemple si la boucle termine parce que le Limite d'itérations est atteint : "Nombre maximal d'itérations atteint (7)"
  • resultJson: Représente le résultat de l'exécution de la tâche au format JSON, incluant des informations générales, des configurations et des détails sur l'exécution.