Search the knowledge base, browse our resources, and visit our forum for more detailed information
Read in English | Leer en español | اقرأ باللغة العربية Dernière mise à jour : 29 juil. 2025
Il arrive que vous souhaitiez générer un numéro de série unique pour chaque formulaire d’un projet. Cet article présente différentes solutions pour créer des numéros de série uniques en utilisant le type de question calculate.
Cette méthode fonctionne mieux avec les formulaires Web Enketo. Elle utilise une fonction de calcul pour créer un numéro de série unique basé sur la date et l’heure à la première milliseconde près. Bien que cette méthode ne réponde pas nécessairement à tous vos besoins, elle devrait vous donner une illustration de la flexibilité des fonctions de calcul.
Créez un
type de question calculate dans l’interface de création de formulaires ou dans XLSForm et utilisez la formule ci-dessous.
concat(substr(today(), 0, 4), substr(today(), 5, 7), substr(today(), 8, 10), substr(now(), 11, 13), substr(now(), 14, 16), substr(now(), 17, 19))
La même formule peut fonctionner comme une question de type integer lorsque vous travaillez dans un XLSForm.

Dans l’exemple, lorsque vous prévisualisez le formulaire déployé dans Enketo, vous devriez pouvoir voir le numéro de série dans la question de type note comme illustré dans l’image ci-dessous :

Cet exemple montre comment créer des numéros de série uniques à partir de variables existantes déjà définies dans votre formulaire en utilisant l’expression
concat()
dans un type de question calculate. L’exemple est présenté sous forme d”XLSForm, mais peut tout aussi facilement être réalisé dans l’interface de création de formulaires.
Feuille survey
type |
name |
label |
calculation |
|---|---|---|---|
text |
Q1 |
Nom de la région |
|
text |
Q2 |
Nom du district |
|
text |
Q3 |
Nom du cluster |
|
text |
Q4 |
Nom du village |
|
text |
Q5 |
Numéro de série du ménage |
|
calculate |
Q1_C |
substr(${Q1}, 0, 3) |
|
calculate |
Q2_C |
substr(${Q2}, 0, 3) |
|
calculate |
Q3_C |
substr(${Q3}, 0, 3) |
|
calculate |
Q4_C |
substr(${Q4}, 0, 3) |
|
calculate |
ID |
concat(${Q1_C}, “-”, ${Q2_C}, “-”, ${Q3_C}, “-”, ${Q4_C}, “-”, ${Q5}) |
|
note |
note_id |
Votre identifiant unique pour ce formulaire est : ${ID} |
|
survey |
Lorsque vous prévisualisez l’exemple dans les formulaires Web Enketo, le numéro de série sera présenté dans la question de type note comme illustré dans l’image ci-dessous :

Did you find what you were looking for? Was the information clear? Was anything missing?
Share your feedback to help us improve this article!
KoboToolbox is maintained by Kobo Inc.