Skip to content

Compteur séquentiel ​

Tire le numéro suivant d’un compteur partagé — pour fabriquer un identifiant de dossier, de devis, de réservation (R-2026-0042).

Le nœud Compteur séquentiel tire le numéro suivant d’un compteur partagé, pour fabriquer un identifiant : un numéro de dossier, de devis, de réservation (PSD-2026-0042). Les expressions {{ }} ne peuvent pas compter elles-mêmes : un aperçu dans l’éditeur consommerait un numéro à chaque frappe. Le compteur est donc un nœud, avec trois garanties.

  • Atomique. Deux exécutions simultanées n’obtiennent jamais le même numéro.
  • Sans trou au rejeu. Une étape rejouée après un incident retrouve SON numéro au lieu d’en consommer un second.
  • Partagé. Deux workflows qui nomment le même compteur dans la même portée tirent dans la même suite : le workflow des réservations et celui des réservations par téléphone numérotent à la suite l’un de l’autre.

La portée est toute l’instance, ou une Table : une suite par Table (les lots, les réservations). La remise à zéro annuelle repart du « Premier numéro » au 1er janvier ; la période se lit sur l’instant de départ de l’exécution, dans le fuseau du calendrier de l’instance — une exécution partie le 31 décembre à 23 h 59 tire dans l’année qui se termine.

En bref ​

  • Type : data.sequence · version 1
  • Catégorie : Données
  • Nature : Étape — s’exécute pendant une exécution
  • Effet : Écrit à l’extérieur (external_write) — écrit hors de Loop & Roll ; décrit au lieu d’être fait pendant un essai
  • Exige un mail porteur : Non
  • Connexion : Aucune
  • Entrées : main
  • Sorties : main
Les ports de « Compteur séquentiel » : ce qui entre à gauche, ce qui sort à droiteEntrée : main. Sorties : main. Une sortie error apparaît quand son réglage d’échec est « Suivre la sortie Erreur ».Compteur séquentieldata.sequencemainmainerror · seulement avec « Suivre la sortie Erreur »
Les ports de « Compteur séquentiel » : ce qui entre à gauche, ce qui sort à droite

Paramètres ​

counter ​

Nom du compteur — Deux workflows qui donnent le même nom (dans la même portée) partagent la même suite de numéros.

  • Type : Texte (string)
  • Requis : Oui
  • 80 caractères au plus
  • Exemple : dossiers
  • Expressions : {{ }} accepté

scope ​

Portée

  • Type : Un choix (options)
  • Requis : Oui
  • Défaut : instance
  • Options :
    • instance — Toute l’instance : Une seule suite pour toute l’équipe.
    • table — Une Table : Une suite propre à une Table — les numéros des réservations, ceux des lots.

table ​

Table

  • Type : Ressource distante (resourceLocator)
  • Requis : Non
  • Façons de choisir : dans une liste, saisir un identifiant (table)
  • Affiché quand : scope vaut table

reset ​

Remise à zéro

  • Type : Un choix (options)
  • Requis : Oui
  • Défaut : never
  • Options :
    • never — Jamais
    • yearly — Chaque année : R-2026-0001, …, puis R-2027-0001 au 1er janvier.
    • monthly — Chaque mois

start ​

Premier numéro — La valeur d’une suite neuve, ou d’une nouvelle période.

  • Type : Nombre (number)
  • Requis : Non
  • Défaut : 1
  • Nombre entier, de 0 à 1000000000
  • Rangé sous « Avancé » dans l’éditeur

padding ​

Chiffres — Complété par des zéros à gauche : 4 → 0042. 0 : le numéro tel quel.

  • Type : Nombre (number)
  • Requis : Non
  • Défaut : 4
  • Nombre entier, de 0 à 12

prefix ​

Préfixe — Accepte des expressions {{ }} : R-{{ now | date:"yyyy" }}- (l’année de l’exécution).

  • Type : Texte (string)
  • Requis : Non
  • Défaut : "" (vide)
  • 80 caractères au plus
  • Exemple : R-{{ now | date:"yyyy" }}-
  • Expressions : {{ }} accepté

suffix ​

Suffixe

  • Type : Texte (string)
  • Requis : Non
  • Défaut : "" (vide)
  • 80 caractères au plus
  • Rangé sous « Avancé » dans l’éditeur
  • Expressions : {{ }} accepté

Sorties ​

  • main

Données produites ​

Ce que ce nœud ajoute aux données de l’exécution, et comment le lire dans une expression. <step> désigne la clé de l’étape : le nom du nœud ramené à un identifiant (voir Données et expressions).

  • {{ data.<step>.id }} — string. L’identifiant prêt à l’emploi : le préfixe, le numéro complété de zéros, le suffixe (PSD-2026-0042).
  • {{ data.<step>.value }} — number. Le numéro tiré, nu (42).
  • {{ data.<step>.padded }} — string. Le numéro complété de zéros à gauche selon « Chiffres » (0042).
  • {{ data.<step>.period }} — string. Avec une remise à zéro : la période du tirage, 2026 (annuelle) ou 2026-05 (mensuelle). Absent sinon.
  • {{ data.<step>.counter }} — string. Le nom du compteur, normalisé (minuscules, sans accents).
  • {{ data.<step>.scope }} — string. instance ou table.
  • {{ data.<step>.simulated }} — boolean. Essai uniquement : true — le numéro rendu est celui que la prochaine exécution réelle obtiendrait, rien n’est consommé.

Example ​

Numéroter chaque nouvelle réservation PSD-2026-0001, PSD-2026-0002… et repartir à 1 chaque année. Ajoutez un nœud Compteur séquentiel nommé Numéro :

counter:  reservations
scope:    instance
reset:    yearly
padding:  4
prefix:   PSD-{{ now | date:"yyyy" }}-

{{ data.numero.id }} vaut PSD-2026-0042. Écrivez-le dans la Table des réservations (Table — ajouter une ligne) et dans l’objet de la confirmation : « Votre réservation {{ data.numero.id }} ».

Tips ​

  • Composez l’identifiant comme vous voulez à partir de value : {{ data.numero.value | pad:6 }}, {{ now | date:"yy" }}{{ data.numero.padded }}.
  • Renommer le compteur, c’est ouvrir une nouvelle suite qui repart du premier numéro. Gardez le même nom partout où les numéros doivent se suivre.
  • Supprimer une Table ne supprime pas son compteur : recréer une Table du même identifiant ne renumérote pas des dossiers déjà émis.
  • En essai, rien n’est consommé : le nœud montre le prochain numéro (simulated: true).

Loop & Roll — le constructeur de workflows pour l’e-mail.