Aller au contenu principal

Numéroter les enregistrements automatiquement

Objectif​

Donner à chaque nouvel enregistrement d’une table un numéro de référence qui se numérote tout seul — un numéro de facture, de dossier, une référence de réservation — pour que personne n’ait à en inventer un ni à chercher le dernier utilisé.

Prérequis​

  • Vous êtes connecté avec un rôle de créateur et la solution de la table est ouverte.

Étapes​

  1. Ouvrez la table et allez dans Champs. Sélectionnez Nouveau.

  2. Saisissez un nom d’affichage, par exemple Reference. Le nom logique se remplit tout seul.

  3. Choisissez Numérotation automatique comme type de données. Une zone Format du numéro apparaît, déjà remplie avec REF-{yyyy}-{SEQ:00000}, et en dessous un aperçu du premier numéro.

  4. Adaptez le format. Tout texte saisi est conservé tel quel ; trois sortes de jetons sont remplacées :

    JetonDevientExemple
    {SEQ}Le numéro suivant417
    {SEQ:00000}Le numéro suivant, complété par autant de zéros que vous en avez écrit00417
    {yyyy} / {yy}L’année de création de l’enregistrement2026 / 26
    {MM} / {dd}Le mois et le jour de création09 / 05

    Ainsi CR-{yyyy}-{SEQ:000000} donne CR-2026-000417. L’aperçu suit votre saisie.

  5. Sélectionnez Enregistrer.

Placez le champ dans le formulaire et les vues de la table comme n’importe quel autre. Les utilisateurs voient le numéro mais ne peuvent pas le modifier.

Ce qui se passe en coulisses​

  • Le numéro est attribué à l’enregistrement. Sur un nouvel enregistrement, le champ indique Attribuée à l’enregistrement ; après le premier enregistrement, il affiche son numéro.
  • Chaque champ a son propre compteur, tenu par la base de données. Deux personnes qui enregistrent au même instant reçoivent deux numéros différents, et le numéro d’un enregistrement supprimé n’est jamais redonné. Il peut donc y avoir des trous — un enregistrement supprimé, ou une sauvegarde échouée après le tirage de son numéro — et c’est normal.
  • Personne ne peut saisir le numéro. Le formulaire l’affiche en lecture seule, et la plateforme ignore toute valeur envoyée par un import ou un script : deux enregistrements ne peuvent pas recevoir le même à la main.
  • La date du numéro est la date de création en UTC, dans le calendrier grégorien, quel que soit le calendrier de la personne qui crée l’enregistrement. Un numéro de référence est un identifiant ; il ne doit pas dépendre de qui le lit.
  • Le compteur ne voyage pas avec la solution. Importer la solution dans un autre environnement apporte le champ et son format, et cet environnement commence son propre compte à 1. La production ne reprend pas là où le développement en était.

Modifier le format​

Sélectionnez le champ puis Modifier. Un nouveau format ne s’applique qu’au numéro suivant : les enregistrements déjà numérotés gardent le leur, car une référence déjà citée ne doit pas changer dans le dos de quiconque.

Dépannage​

  • Le numéro affiche {YYYY} ou un autre jeton entre accolades. — Le format ne connaît pas ce jeton et l’a laissé tel quel. La casse compte : l’année est {yyyy}, le mois {MM}. Corrigez le format ; le numéro suivant sera juste.
  • Les numéros sautent. — Voir plus haut : un enregistrement supprimé ou une sauvegarde échouée consomme un numéro. Si une numérotation sans trou est une obligation légale, numérotez les enregistrements dans une étape de processus.
  • Le numéro est plus long que mes zéros. — Le remplissage est un minimum, pas un maximum. Le millionième enregistrement de {SEQ:00000} est 1000000, il ne collisionne donc jamais avec un précédent.

Scénarios associés​