DeltiaAide

Répéter une action sur une liste

Créer une tâche par élément d'une liste avec « Répéter pour chaque élément de », lire l'élément et sa position, et suivre le résultat

À quoi ça sert

Une action « Créer une tâche » crée en général une seule tâche. Quand le déclencheur porte une liste, vous pouvez en créer une par élément : une tâche par pièce jointe d'un contrat, une visite tous les six mois pendant un an, une ligne de suivi par produit. Vous n'écrivez l'action qu'une fois ; la règle la répète.

La répétition est un réglage de l'action « Créer une tâche ». Elle ne s'applique à aucune autre action. Voir Configurer les actions pour le reste des actions.

Concepts clés

  • Liste à répéter — une formule qui donne une liste, saisie dans « Répéter pour chaque élément de ». Exemple : {{= record.crmAttachments }}.
  • Élément — une valeur de la liste. Il se lit par {{item.champ}} ou {{= item }} dans les champs de la tâche.
  • Position — le rang de l'élément dans la liste, à partir de 0 : {{= index }}.
  • Itération — une exécution de l'action pour un élément.

Comment faire

Créer une tâche par élément d'une liste

  1. Ouvrez la règle et repérez l'action « Créer une tâche ».
  2. Dans « Répéter pour chaque élément de », saisissez la formule de la liste, par exemple {{= record.crmAttachments }}. Laissez le champ vide pour créer une seule tâche.
  3. Dans les champs de la tâche (le nom, la description…), lisez l'élément avec {{item.champ}} ou {{= item }}, et sa position avec {{= index }}. Par exemple, {{= index + 1 }} numérote les tâches à partir de 1.
  4. Enregistrez la règle.

La règle crée une tâche par élément. La formule doit être une formule unique de la forme {{= … }} ; sinon l'enregistrement est refusé avec « La liste à répéter doit être une formule unique, de la forme '{{= … }}' ».

Fabriquer la liste avec une formule

Une liste peut aussi se construire. range(n) donne les nombres de 0 à n-1, et map les transforme. Par exemple, une date de visite tous les six mois : range(2).map(k, addMonths(record.startDate, k * 6)). Voir Calculer une valeur avec une formule.

Vérifier avant d'activer

  1. Sur la vue « Graphique », cliquez sur « Tester sur des cas réels ».
  2. Sous l'action, lisez le nombre de tâches annoncé pour chaque exemple.

L'aperçu indique « 3 tâches seraient créées », ou « Liste non évaluable sur cet exemple : {erreur} » quand la formule ne donne pas de liste sur cet exemple. Aucune tâche n'est créée pendant le test. Voir Créer une règle.

Suivre le résultat

  1. Ouvrez « Administration », « Automatisations », onglet « Exécutions ».
  2. Repérez l'action sur la ligne de l'exécution.

Sous l'action, « 2 tâches créées sur 3 » indique le nombre d'itérations réussies, et « Liste vide » signale une liste sans élément. Voir Exécutions et historique.

Référence

Règles de la répétition

SujetComportement
Nombre d'éléments50 au maximum. Au-delà, ou si la formule ne donne pas une liste, l'action est en erreur
Liste videAucune tâche n'est créée ; l'action est « ignorée » et le suivi affiche « Liste vide »
Un élément échoueLes autres sont quand même traités, puis l'action est en erreur avec le nombre d'échecs
ConfirmationUne seule confirmation est demandée pour toute l'action. Voir Confirmations
ValidationSi l'action est soumise à validation, chaque élément apparaît séparément dans la file, même si deux éléments donnent les mêmes valeurs. Une seule notification est envoyée. Voir Valider les actions des automatisations
Reprise après interruptionLes tâches déjà créées ne sont pas recréées
Où lire item et indexDans les paramètres de l'action répétée seulement

Messages de refus

MessageCause
« La répétition « pour chaque élément » n'existe que pour l'action Créer une tâche, pas pour « {type} » »La répétition est réglée sur une autre action
« Une règle planifiée n'a pas de fiche dont tirer une liste : la répétition « pour chaque élément » n'est pas disponible. »Le déclencheur est une date
« La répétition « pour chaque élément » ne peut pas se combiner avec un prétraitement IA : il s'exécuterait à chaque élément »L'action a un pré-traitement IA
« « {root} » n'existe que dans les paramètres d'une action répétée « pour chaque élément » : activez la répétition ou retirez-le »item ou index est lu sans répétition
« « {root} » ne se lit que dans les paramètres d'une action répétée « pour chaque élément » : pas dans la liste, une condition, un prompt ou un texte de notification »item ou index est lu hors des paramètres de l'action

Questions fréquentes

Puis-je répéter une autre action qu'une création de tâche ?

Pas pour l'instant : seule l'action « Créer une tâche » accepte la répétition.

Puis-je lire l'élément dans la condition de l'action ?

Non. item et index n'existent que pendant l'exécution d'une itération, dans les paramètres de l'action.

Que se passe-t-il si la règle est interrompue en cours de route ?

La reprise ne recrée pas les tâches déjà créées. Dans le cas rare d'un arrêt exactement entre la création d'une tâche et son enregistrement, une tâche peut être créée en double.

Sur cette page