Référence rapide

ArcGIS Survey123 prend en charge une grande partie de la spécification XLSForm. Ce guide de référence présente un récapitulatif des entités XLSForm que vous pouvez utiliser dans Survey123. Les enquêtes peuvent être créées à l’aide de Survey123 Connect ou du site Web Survey123. Certaines entités sont uniquement disponibles dans l’un ou l’autre, et certaines dans les deux.

Types de questions

Le tableau suivant décrit les types de questions disponibles dans Survey123 Connect, l’application de terrain Survey123, le concepteur Web Survey123 et l’application Web Survey123. Pour certaines questions, il existe des différences en matière de comportement et de mise en œuvre sur les plateformes ; consultez les notes figurant sous le tableau pour en savoir plus.

Type de question Survey123 ConnectType de question du concepteur Web Survey123DescriptionPris en charge dans l’application de terrain Survey123Pris en charge dans l’application Web Survey123
audio⁴Audio⁴ ⁶

Enregistre un clip audio dans l’application de terrain. Enregistre un clip audio ou accepte un fichier audio téléchargé dans l’application Web.

Oui

Oui

barcode

N/D

Numérise un code à barres ou un QR Code.

Oui

Oui

begin group

Groupe, page

Commence un groupe de questions.

Oui

Oui

begin repeat

N/D

Commence un ensemble de questions répétées.

Oui

Oui

calculate

N/D

Effectue un calcul sur les valeurs contenues dans le formulaire. Le champ de calcul contient le résultat du calcul.

Oui

Oui

decimal¹

Nombre¹ ⁶

Saisie de nombre décimal.

Oui

Oui

date

Date⁶

Saisie de date.

Oui

Oui

dateTime

Date et heure⁶

Saisie de date et heure.

Oui

Oui

deviceid

N/D

UUID représentant l’appareil spécifique sur lequel l’enquête a été exécutée.

Oui

Non

e-mail²

N/D

Lorsque vous êtes connecté avec un compte d’organisation, cette question est renseignée automatiquement avec l’adresse e-mail de l'utilisateur du compte.

Oui

Oui

à la fin

N/D

Date et heure de fin de l’enquête.

Oui

Oui

end group

Groupe, page

Termine un groupe de questions.

Oui

Oui

end repeat

N/D

Termine un ensemble de questions répétées.

Oui

Oui

fichier

Téléchargement de fichiers

Accepte un fichier sur l’appareil.

Oui

Oui

geopoint³

Carte³ ⁶

Recueille des coordonnées GPS. Prend par défaut la valeur de la localisation actuelle.

Oui

Oui

geoshape³

Collecte un polygone sur une carte.

Oui

Oui

geotrace³

Collecte une ligne sur une carte.

Oui

Oui

masqué

N/D

Crée un champ dans votre couche d’entités qui ne s’affiche pas dans le formulaire. Utilisez les colonnes bind::esri:fieldType et bind::esri:fieldLength pour préciser le schéma de date pour ce champ.

Oui

Oui

integer¹

Nombre¹ ⁶

Saisie de nombre entier.

Oui

Oui

image

Image, signature

Accepte une image issue de fichiers d’un appareil ou d’une photo prise directement.

Oui

Oui

note

Remarque⁶

Affiche du texte à l’écran. Permet aussi de gérer des calculs masqués.

Oui

Oui

plageCurseur⁶

Saisie d’une plage de nombres.

Oui

Oui

rank list_name

Classement⁶

Question de type Classement ; classe une liste de choix. Remplacez list_name par le nom de votre liste de choix.

Oui

Oui

select_one list_name

Menu déroulant⁵ ⁶, Échelle de Likert⁵ ⁶, Évaluation⁶, Sélection unique⁶, Grille à sélection unique⁶

Question à choix multiples ; une seule réponse peut être sélectionnée. Remplacez list_name par le nom de votre liste de choix.

Oui

Oui

select_one_from_file file_name.csv

N/D

Question à choix multiples ; une seule réponse peut être sélectionnée. Remplacez file_name.csv par le nom du fichier situé dans le dossier media de l’enquête qui contient la liste des choix.

Oui

Oui

select_multiple list_name

Sélection multiple⁶

Question à choix multiples ; plusieurs réponses peuvent être sélectionnées. Remplacez list_name par le nom de votre liste de choix.

Oui

Oui

select_multiple_from_file file_name.csv

N/D

Question à choix multiples ; plusieurs réponses peuvent être sélectionnées. Remplacez file_name.csv par le nom du fichier situé dans le dossier media de l’enquête qui contient la liste des choix.

Oui

Oui

start

N/D

Date et heure de début de l’enquête.

Oui

Oui

Texte

Adresse⁶, Courrier électronique⁶, Texte multiligne⁵ ⁶, Texte uniligne⁶, Site Web⁶

Réponse sous forme de texte libre. Une expression régulière est appliquée pour les courriers électroniques et les sites Web. L’apparence de type geocode s’applique à une adresse.

Oui

Oui

heure

Heure⁶

Saisie d’heure.

Oui

Oui

nom d’utilisateur

N/D

Lorsque vous êtes connecté avec un compte d’organisation, cette question est renseignée automatiquement avec le nom d'utilisateur du compte.

Oui

Oui

¹Le concepteur Web combine les questions comportant des nombres entiers et décimaux en un seul type de question nommé Nombre. Une case à cocher dans les propriétés de la question permet au concepteur de l’enquête de définir le type d’entrée requis.

²Les questions de type courrier électronique dans Survey123 Connect et dans le concepteur Web Survey123 sont mises en œuvre différemment. L’implémentation dans Survey123 Connect renseigne automatiquement l’adresse électronique du compte d’organisation auquel l’utilisateur est connecté. L’implémentation dans le concepteur Web Survey123 est un champ de texte autorisant uniquement un format correspondant à une adresse électronique.

Les questions de type geopoint, geotrace et geoshape ont été fusionnées en un seul type de question nommé Carte. Une case à cocher dans les propriétés de la question permet au concepteur de l’enquête de définir le type d’entrée requis. Un type de question supplémentaire nommé Adresse autorise l’envoi de points géocodés.

⁴Les questions audio ne peuvent pas être téléchargées dans l’application de terrain Survey123, comme c’est le cas dans l’application Web. Pour pouvoir télécharger une question audio dans l’application de terrain, utilisez une question de type fichier.

⁵Plusieurs apparences disponibles dans Survey123 Connect ne sont disponibles que sous la forme de types de questions distinctes dans le concepteur Web Survey123. Cela inclut Texte multiligne, Menu déroulant et Échelle de Likert.

⁶Pour chaque question, le concepteur Web fournit une option permettant de mettre en cache la réponse. Dans l’application Web , après l’envoi d’un enregistrement d’enquête, la réponse à la question est mise en cache dans le navigateur et est préchargée lors de la soumission suivante effectuée pour cette enquête sur le même appareil. La mise en cache d’une réponse peut être définie pour tous les types de questions à l’exception des types Audio, Image, Téléchargement de fichiers et Signature.

Colonnes de feuille de calcul d’enquête

Le tableau suivant contient toutes les colonnes prises en charge par Survey123. Ces colonnes sont incluses dans la feuille de calcul de l’enquête dans le modèle Avancé ; elles figurent dans cette table dans leur ordre d’affichage au sein de la feuille de calcul.

ColonneDescription
type

Sélectionnez un type de question dans la liste fournie. Saisissez un nom de liste valide si vous utilisez une question à choix unique ou à choix multiple.

nom

Nom du champ de la couche d’entités.

label

L’étiquette des questions affichées dans votre enquête.

hint

Informations permettant de répondre plus facilement à la question de l’enquête.

guidance_hint

Informations supplémentaires qui s’affichent uniquement lorsque l’utilisateur clique sur une icône.

appearance

Sélectionnez l’apparence de ce champ dans votre enquête.

required

Sélectionnez yes (oui) pour demander une valeur dans ce champ avant de réaliser l’enquête.

required_message

Lorsqu’un champ obligatoire n’a pas de réponse, le message dans cette colonne apparaît pour demander une réponse.

readonly

Sélectionnez yes (oui) pour définir les valeurs de ce champ en lecture seule. Ces valeurs ne peuvent pas être mises à jour dans l’enquête.

default

Définissez la valeur par défaut du champ. L’enquête sera ainsi préalablement renseignée avec la valeur par défaut. Cette fonction permet de gagner du temps en fournissant une réponse fréquemment utilisée ou en affichant le type de réponse attendu.

calculation

Effectuez des calculs à l’aide des valeurs des questions précédentes (par exemple, ${number} * 100). Faites référence au champ de calcul pour afficher le résultat (par exemple, The answer is ${calc}).

constraint

Limitez la plage de nombres pouvant être saisis (par exemple, .>0 and .<100). Vous pouvez utiliser cette fonction avec tous les types de questions.

constraint_message

Lorsque les conditions de contrainte ne sont pas respectées, ce message apparaît pour demander une réponse valide.

relevant

Cela vous permet d’ignorer des questions ou de faire apparaître des questions supplémentaires en fonction de la réponse à une question précédente. Une question est visible lorsque les conditions de la colonne correspondante sont respectées (par exemple, ${name} = 'value'). Une question masquée par cette colonne envoie uniquement des valeurs nulles.

choice_filter

Avec les sélections en cascade, ce champ contient l’expression permettant d’apparier les colonnes attributaires supplémentaires dans l’onglet des choix (par exemple, attribute = ${value}).

repeat_count

Cette valeur indique le nombre d’enregistrements disponibles dans une répétition. Une fois le nombre de répétitions spécifié, les enregistrements ne peuvent pas être ajoutés ou supprimés de la répétition.

media::audio

Copiez un fichier audio dans le sous-dossier media du projet et saisissez le nom du fichier audio (par exemple, audio.mp3) pour proposer la version sonore de la question.

media::image

Copiez un fichier image dans le sous-dossier media du projet et saisissez le nom du fichier image (par exemple, image.jpg) pour afficher une image avec la question.

bind::type

Type de champ qui remplace le type de champ par défaut pour la question.

bind::esri:fieldType

Définissez le type de champ cible dans la couche d’entités. Ceci peut permettre de remplacer le type de champ par défaut (par exemple, les champs calculate et select_one sont des chaînes par défaut. Pour enregistrer les valeurs dans la couche d’entités en tant qu’entiers, sélectionnez esriFieldTypeInteger).

bind::esri:fieldLength

Définissez la longueur du champ cible dans la couche d’entités. Vous pouvez utiliser ce paramètre pour remplacer la longueur du champ par défaut.

bind::esri:fieldAlias

Spécifiez des valeurs pour l’alias de champ dans la couche d’entités. Vous pouvez utiliser ce paramètre pour remplacer les valeurs d’alias de champ par défaut, qui découlent de l’étiquette des questions.

body::esri:style

Fournissez des expressions pour définir le style et le comportement d’une question (par exemple, la couleur d’arrière-plan des groupes et des répétitions).

bind::esri:parameters

Fournissez des expressions propres à Survey123 (par exemple, des paramètres pour contrôler le comportement des répétitions lors de la mise à jour de votre enquête).

bind::esri:workflow

Fournit des paramètres qui permettent de rendre une enquête disponible dans un mode de mesure télémétrique.

paramètres

Fournissez des paramètres XLSForm standard pour une question (par exemple, les paramètres start, end et step pour une question de type plage).

body::accept

Définissez les types de fichiers acceptés pour les questions de type fichier. Accepte des extensions de fichier séparées par des virgules (par exemple, .jpg, .png).

body::esri:visible

Cela vous permet d’ignorer des questions ou de faire apparaître des questions supplémentaires en fonction de la réponse à une question précédente. Une question est visible lorsque les conditions de la colonne body::esri:visible sont respectées (par exemple, ${name} = 'value'). Une question masquée par cette colonne contient toujours les valeurs et les envoie.

body::esri:inputMask

Fournissez une expression qui permet d’utiliser un masque de saisie afin d’offrir un format défini pour la saisie de données à l’aide de caractères et de symboles.

label::language (xx)

Traduisez les libellés de vos questions. La langue doit être spécifiée par son nom et son code (par exemple, label::Español (es)). Ajoutez une nouvelle colonne pour chaque langue. La liste des langues apparaîtra dans un menu déroulant dans l’enquête.

hint::language (xx)

Traduisez vos questions de type astuce. La langue doit être spécifiée par son nom et son code (par exemple, hint::Español (es)). Ajoutez une nouvelle colonne pour chaque langue. La liste des langues apparaîtra dans un menu déroulant dans l’enquête.

guidance_hint::language (xx)

Traduisez vos questions de type conseil. Vous devez spécifier la langue par son nom et son code (par exemple, guidance_hint::Español (es)). Ajoutez une nouvelle colonne pour chaque langue. La liste des langues apparaîtra dans un menu déroulant dans l’enquête.

required_message::language (xx)

Traduisez le message qui s’affiche si une question obligatoire n’a pas été répondue. La langue doit être spécifiée par son nom et son code (par exemple, required_message::Español (es)). Ajoutez une nouvelle colonne pour chaque langue. La liste des langues apparaîtra dans un menu déroulant dans l’enquête.

body::accuracyThreshold

Indiquez une valeur numérique pour le seuil (en mètres) au-dessus duquel les valeurs de position ne sont pas acceptées. S’applique aux questions Géopoint et aux sommets des questions Géoforme et Géotrace.

bind::esri:warning

Appliquez une expression qui affiche des avertissements si les conditions ne sont pas respectées.

bind::esri:warning_message

Le message qui s’affiche si les conditions bind::esri:warning ne sont pas respectées.

bind::saveIncomplete

Définissez cette fonction sur True (Vrai) si l’application doit enregistrer automatiquement la réponse après la question.

Apparences

Vous pouvez saisir les valeurs suivantes dans la colonne d’apparence pour des types spécifiques de questions afin de modifier leur aspect ou leur comportement. Pour plus d’informations sur ces types, reportez-vous à la rubrique Apparence.

ApparenceType de question concernéDescriptionPris en charge dans l’application de terrain Survey123Pris en charge dans l’application Web Survey123

annotate

image

Permet à l’utilisateur d’ouvrir une fenêtre avec une zone d’affichage où il peut tracer des esquisses et prenant en charge les annotations sur les images.

Oui

Oui

autocomplete

select_one

Les choix de réponse s’affichent dans un menu déroulant avec du texte pour restreindre les options.

Oui

Oui

calculator

integer, decimal

Affiche un widget de calcul personnalisé pour cette question.

Oui

Non

compacter

select_one, select_multiple, begin group, begin repeat

Pour les questions de type select_one (choix unique) et select_multiple (choix multiples), présente les choix horizontalement d’une manière qui optimise l’espace. Pour les groupes et les répétitions, présente les questions à l’état réduit au démarrage, qui peut être agrandi par l’utilisateur.

Oui

Oui

compact-n

select_one, select_multiple

Présente les choix horizontalement d’une manière qui optimise l’espace avec un nombre maximal de colonnes spécifié par n. Par exemple, compact-3 limite la question à un maximum de trois colonnes.

Oui

Oui

distress

entier

Affiche la question sous la forme d’une échelle colorée.

Oui

Non

draw

image

Permet à l’utilisateur d’ouvrir une fenêtre avec une zone d’affichage où il peut tracer des esquisses.

Oui

Oui

field-list

begin group, begin repeat

Affiche un groupe de questions sur une page distincte si l'enquête est de style paginé.

Oui

Oui

géocoder

Texte

Recherchez une adresse géocodée et envoyez-la.

Oui

Oui

getinframarkerid

Texte

Récupère et stocke un ID de balise InfraMarker de 24 caractères.

Oui

Non

masqué

Tous

Masque la question de la vue, tout en permettant d’accepter les valeurs par défaut et les calculs.

Oui

Oui

hide-input

geopoint

Réduit la section de saisie des coordonnées lorsque l’enquête est ouverte dans l’application web.

Non

Oui

horizontal

select_one, select_multiple

Affiche les options de réponse horizontalement et dans des colonnes.

Oui

Oui

horizontal-compact

select_one, select_multiple

Similaire à l’apparence compacte.

Oui

Oui

Image-map (image-carte)

select_one, select_multiple

Affiche une image .svg jointe avec des régions sélectionnables.

Oui

Non

inframarker

Texte

Indique les informations à écrire dans une balise InfraMaker.

Oui

Non

likert

select_one

Affiche les options de réponse sous la forme d'une échelle de Likert.

Oui

Oui

minimaliste

select_one, select_multiple, barcode, begin repeat

Présente plusieurs réponses (select_one, select_multiple), plusieurs questions (repeats), et une zone de texte (barcode) dans un style masqué ou réduit.

Oui

Oui

minimal compact

begin repeat

Présente les questions d’une répétition sous forme réduite (compact) et masquée (minimal).

Oui

Oui

month-year

date

Sélectionne seulement un mois et une année comme date.

Oui

Oui

multiline

text, image, file

Présente une question de type texte sous forme d’une zone de texte multiligne Plusieurs pièces jointes dans une question image ou fichier sont autorisées.

Oui

Oui

new-front

image

Limite la question à une prise de vue via le capteur avant par défaut.

Oui

Non

new-rear

image

Limite la question à une prise de vue via le capteur arrière par défaut.

Oui

Non

no-ticks

plage

Affiche le curseur de plage sans positions, ni valeurs minimum ou maximum.

Oui

Oui

nopredictivetext

Texte

Désactive le texte prédictif pour les appareils mobiles

Oui

Non

numbers

integer, decimal

Affiche un clavier numérique personnalisé pour cette question.

Oui

Non

predictivetext

Texte

Active le texte prédictif pour les appareils mobiles

Oui

Non

press-to-locate

geopoint, geotrace, geoshape

Pour les questions géopoint, accepte uniquement une localisation une fois que l’utilisateur a interagi avec la question. Pour géotrace et géoforme, se focalise sur la localisation de l’utilisateur sans capturer de point à la première interaction avec la question.

Uniquement pour geopoint

Oui

rangefinder

Texte

Accepte l’objet JSON entier ou une valeur spécifiée qui est renvoyée par un télémètre.

Oui

Non

rechercher

Texte

Remplit la liste de choix avec les valeurs d’une table CSV figurant dans le dossier media de l’enquête ou d’une table ou couche d’entités existante.

Oui

Non

signature

image

Présente une interface pour la capture d'une signature. La signature est ajoutée à l’entité en tant que pièce jointe.

Oui

Oui

pic

image

Nécessite un appareil Spike et une application Spike. L’intégration Spike permet de mesurer la distance et l’emplacement dans une photo.

Oui

Non

spike-full-measure

image

Nécessite un appareil Spike et une application Spike. L’intégration Spike permet de mesurer la distance, l’emplacement, la superficie et des longueurs dans une photo.

Oui

Non

spike-point-to-point

image

Nécessite un appareil Spike et une application Spike. L’intégration Spike permet de mesurer la distance entre deux points photographiés.

Oui

Non

spinner

integer, decimal

Ajoute des boutons permettant d’incrémenter et de décrémenter une valeur.

Oui

Non

table-list

begin group

Présente un ensemble de questions select_one, dans un groupe utilisant la même liste de choix dans un format tabulaire.

Oui

Oui

thousands-sep (séparateur des milliers)

decimal

Affiche les réponses avec des séparateurs de milliers. Cela concerne uniquement les réponses prérenseignées.

Oui

Non

week-number

date

Sélectionne un numéro de semaine.

Oui

Non

year

date

Sélectionne seulement une année comme date.

Oui

Oui

Paramètres

Des paramètres supplémentaires peuvent être utilisés pour certains types de question dans XLSForm afin de contrôler le style et le comportement des questions d’une enquête. Dans certains cas, ces paramètres complètent les apparences prises en charge par un type de question. Pour avoir une vue d’ensemble des paramètres pris en charge par chaque type de question, consultez la section Paramètres XLSForm.

Valeurs par défaut

Saisir today() dans la colonne valeur par défaut d’une question définit la valeur par défaut à la date du jour.

Saisissez le choix name (nom) (et non le choix label (étiquette)) pour les valeurs par défaut des questions select_one (choix unique).

Les réponses aux questions de type sélection multiple fonctionnent différemment des autres. Elles sont ajoutées dans l’ordre dans lequel elles ont été sélectionnées, séparées par des virgules. Pour définir plusieurs valeurs en tant que valeurs par défaut dans une question select_multiple, séparez-les par des virgules, par exemple : élément1,élément2,élément3.

Validation des données

Saisir oui comme valeur dans la colonne obligatoire fait en sorte que la question de l’enquête requière que la question contienne une valeur pour que le formulaire puisse être renseigné.

Opérateurs

Les opérateurs répertoriés dans le tableau ci-dessous peuvent être utilisés dans les colonnes XLSForm prenant en charge les expressions, notamment les colonnes constraint (contrainte), calculation (calcul) et relevant (pertinence).

Pour plus d’informations sur les calculs et les contraintes, reportez-vous à la rubrique Formules ; pour en savoir plus sur l’utilisation de la colonne relevant (pertinence), reportez-vous à la rubrique Expressions de formulaire.

OpérateurDescriptionExemple

.

La réponse actuelle

.=1

+

Addition

${question_one} + 4

-

Soustraction

${question_one} - 4

*

Multiplication

${question_one} * 4

div

Division

${question_one} div 4

=

Égal

${price}=9.80

!=

Différent

${price}!=9.80

<

Inférieur à

${price}<9.80

<=

Inférieur ou égal à

${price}<=9.80

>

Supérieur à

${price}>9.80

>=

Supérieur ou égal à

${price}>=9.80

and

Et

${price}>9.00 and ${price}<9.90

mod

Modulo (reste de la division)

${question_one} mod ${question_two}

or

Ou

${price}=9.80 or ${price}=9.70

Fonctions

Les fonction suivantes sont prises en charge dans Survey123 :

FonctionDescriptionExemple

boolean(question, expression, or value)

Renvoie true (vrai) si la valeur indiquée n’est pas nulle.

Il est recommandé d’utiliser à la place la fonction boolean-from-string().

Attention :

Cette fonction renvoie toujours la valeur true (vrai) dans l’application Web Survey123. Pour connaître les alternatives, reportez-vous à la rubrique Valeurs vides.

boolean(${question_one})

boolean-from-string()

Renvoie true (vrai) si la chaîne indiquée est « true » (vrai) ou « 1 ». Sinon, renvoie false (faux).

boolean-from-string(${question_one})

coalesce(value1, value2)

Renvoie la première valeur non vide. Cette fonction prend en charge deux valeurs uniquement.

coalesce(${question_one}, ${question_two})

concat(value1, value2, …)

Renvoie la concaténation des valeurs de chaîne.

concat(${question_one}, ' and ', ${question_two})

contains(string, substring)

Renvoie true (vrai) si la chaîne donnée contient la sous-chaîne.

contains(${question_one}, 'red')

count(repeat)

Renvoie la quantité de réponses à une question donnée dans des répétitions. Pour plus d’informations, reportez-vous à la rubrique Fonctions d’agrégation.

Remarque :

Lorsqu’elle est utilisée dans l’application de terrain Survey123, cette fonction peut être placée dans la répétition ou en dehors de celle-ci. Si cette fonction doit être utilisée dans l’application Web Survey123, elle doit être placée en dehors de la répétition. Une valeur count externe à la répétition peut être référencée dans un calcul interne à la répétition.

count(${question})

count-selected(question)

Renvoie le nombre de réponses sélectionnées aux questions select_one et select_multiple. Cette fonction renvoie également le nombre de fichiers joints aux questions de type image, audio et file (fichier) à l’aide de l’apparence multiligne.

count-selected(${question_one})

date(question, expression, or value)

Convertit un nombre ou une chaîne en objet de date, sans conserver l'heure.

date('2017-05-28T04:39:02+10:00')

date-time(question, expression, or string)

Convertit un nombre ou une chaîne en objet de date.

date-time('2017-05-28T04:39:02+10:00')

decimal-date-time(question, expression, or string)

Convertit un objet de date en nombre date-heure décimal.

decimal-date-time(${date_question})

decimal-time(question, expression, or string)

Convertit un objet de type heure en un nombre représentant une fraction décimale de jour dans le fuseau horaire de l’appareil.

decimal-time(${time_question})

ends-with(string, substring)

Renvoie true (vrai) si la chaîne donnée se termine par la sous-chaîne.

ends-with(${question_one}, 'hand.')

false()

False

false()

format-date()

Ajuste une valeur de date ou d’heure existante à un format défini.

format-date(${previous_time}, '%H:%M')

if(condition, a, b)

Si la condition évaluée est vraie (true), renvoie a ; sinon, renvoie b.

if(selected(${question_one}, 'yes') and selected(${question_two}, 'yes'), 'yes', 'no')

indexed-repeat(question, repeat, index number)

Renvoie la valeur d’une question spécifique dans un enregistrement de répétition. Pour plus d'informations, reportez-vous à la rubrique Répétitions.

indexed-repeat(${room_no}, ${floor}, 3)

int(question, expression, or value)

Convertit en nombre entier. La conversion varie selon le type de données.

Remarque :

Si cette fonction est vide, elle renvoie NaN et la question reste vide.

int(${question_one})

join(separator, question)

Concatène toutes les réponses à une question donnée en une répétition, chacune séparée par le séparateur donné.

join(',', ${question_in_repeat})

jr:choice-name(choice_name, 'question')

Utilisée pour les questions select_one. Renvoie l’étiquette associée au nom du choix dans la question donnée. N’oubliez pas que la question doit être définie entre guillemets.

jr:choice-name(${select_one}, '${select_one}')

Utilisée pour les questions select_multiple. Renvoie l’étiquette associée au nom du choix dans la question donnée. La fonction selected-at() doit être utilisée pour extraire l’étiquette des réponses individuelles. N’oubliez pas que la question doit être définie entre guillemets.

jr:choice-name(selected-at(${select_multiple}, 3), '${select_multiple}')

max(value1, value2, ...)

Renvoie la valeur maximale dans une plage donnée, ou vers une seule question dans des répétitions.

max(${question_one}, ${question_two})

min(value1, value2, ...)

Renvoie la valeur minimale dans une plage donnée, ou vers une seule question dans des répétitions.

min(${question_one}, ${question_two})

not(expression)

Renvoie une valeur false (Faux) si l’expression renvoyait true (Vrai) et renvoie une valeur true (Vrai) si l’expression renvoyait false (Faux).

not(selected(., 'yes'))

now()

Renvoie un horodatage pour cet instant. Cette fonction est utilisée dans les questions time et dateTime. Elle se comporte comme today() dans les questions date.

now()

number(question, expression, or value)

Convertit en nombre. La conversion varie selon le type de données.

Remarque :

Si cette fonction est vide, elle renvoie NaN et la question reste vide.

number(${question_one})

once()

Si une question possède déjà une valeur, renvoie la valeur existante. Cette fonction est utile si vous utilisez random() ou uuid() dans une question répétée pour s’assurer que la valeur ne change pas lorsque vous parcourez les enregistrements répétés du formulaire.

once(uuid())

position(..)

Renvoie l’index de la enregistrement actuel dans une répétition. Pour plus d'informations, reportez-vous à la rubrique Répétitions.

position(..)

pulldata()

Renvoie une valeur provenant d’un fichier CSV externe. Pour plus d’informations, voir Extraire une valeur d’un fichier CSV.

pulldata('users', 'email', 'name', ${respondent_name})

pulldata("@exif")

Renvoie une valeur provenant des métadonnées EXIF d’une image. Pour plus d’informations, voir Extraire des métadonnées d’une image.

pulldata("@exif", ${photo}, "GpsLatitude")

pulldata("@geopoint")

Renvoie une valeur d’une question géopoint. Pour plus d’informations, voir Extraire des valeurs de géopoints.

pulldata("@geopoint", ${location}, "horizontalAccuracy")

pulldata("@javascript")

Exécute une fonction JavaScript dans le formulaire et renvoie le résultat. Pour plus d’informations, voir Fonctions JavaScript dans les formulaires d’enquête.

pulldata("@javascript", "functions.js", "uniqueID", ${buildings})

pulldata("@json")

Renvoie une valeur d’un objet JSON. Pour plus d’informations, voir Extraire une valeur d’un objet JSON.

pulldata("@json", ${json_output}, "attributes.ZIP_CODE")

pulldata("@layer")

Interroge une couche d’entités ou une table d’entités ArcGIS, ou le service de carte avec la fonction d’interrogation activée et renvoie le résultat. Pour plus d’informations, reportez-vous à la rubrique Interroger une couche d’entités.

pulldata("@layer", "getRecordAt", "https://services.arcgis.com/P3ePLMYs2RVChkJx/arcgis/rest/services/World_Time_Zones/FeatureServer/0", ${location})

pulldata("@property")

Renvoie des informations sur l’appareil ou l’utilisateur connecté. Pour plus d’informations, voir Propriétés concernant l’appareil et l’utilisateur.

pulldata("@property", 'username')

random()

Renvoie une valeur aléatoire comprise entre 0 (inclusive) et 1 (exclusive).

random()

regex()

Applique une expression régulière à la saisie de la question. Renvoie true (vrai) si le modèle est respecté. Pour plus d’informations, reportez-vous à la rubrique Expressions régulières.

regex(., '^\d{5}$')

selected(question, value)

Vérifie si la réponse est sélectionnée. Cette fonction est utilisée pour les questions select_one et select_multiple.

selected(${question_one}, 'a')

selected-at(question, number)

Utilisée pour les questions select_multiple. Renvoie le nom du choix sélectionné pour le nombre donné, en commençant à compter à partir de zéro ; par exemple, « 2 » renvoie le troisième choix sélectionné.

selected-at(${question_one}, 2)

starts-with(string, substring)

Renvoie true (vrai) si la chaîne donnée commence par la sous-chaîne.

starts-with(${question_one}, 'The')

string(question, expression, or value)

Convertit en chaîne. La conversion varie selon le type de données.

string(${question_one})

string-length(question, expression, or value)

Renvoie la longueur d'une chaîne non vide.

string-length(${question_one})

substr(question, start, end)

Renvoie la sous-chaîne commençant par le début spécifié (start) et s’étend jusqu’au caractère à l’index de fin end -1, où start et end commencent à 0.

substr(${question_one}, 1, 2)

sum(repeat)

Renvoie la somme de toutes les réponses à une question donnée dans des répétitions. Pour plus d’informations, reportez-vous à la rubrique Fonctions d’agrégation.

Remarque :

Lorsqu’elle est utilisée dans l’application de terrain Survey123, cette fonction peut être placée dans la répétition ou en dehors de celle-ci. Si cette fonction doit être utilisée dans l’application Web Survey123, elle doit être placée en dehors de la répétition. Une valeur sum externe à la répétition peut être référencée dans un calcul interne à la répétition.

sum(${question})

today()

Renvoie la date du jour, stockée en interne à midi heure locale. Cette fonction est utilisée dans les questions date.

today()

true()

True

true()

uuid()

Renvoie une chaîne UUID aléatoire.

uuid()

version()

Retourne la version de l'enquête définie dans la feuille de calcul des paramètres.

version()

Les fonctions mathématiques suivantes sont prises en charge dans Survey123 :

FonctionDescriptionExemple

acos(value)

Renvoie l’arc cosinus de la valeur.

acos(${question_one})

asin(value)

Renvoie l’arc sinus de la valeur.

asin(${question_one})

atan(value)

Renvoie l’arc tangent de la valeur.

atan(${question_one})

atan2(value1, value2)

Renvoie l’arc tangent du quotient des valeurs.

atan2(${question_one}, ${question_two})

cos(value)

Renvoie le cosinus de la valeur en tant qu’angle en radians.

cos(${question_one})

sin(value)

Renvoie le sinus de la valeur en tant qu’angle en radians.

sin(${question_one})

tan(value)

Renvoie la tangente de la valeur en tant qu’angle en radians.

tan(${question_one})

exp(value)

Renvoie l'exposant naturel de la valeur.

exp(${question_one})

exp10(value)

Renvoie 10 à la puissance de la valeur.

exp10(${question_one})

log(value)

Renvoie le logarithme naturel de la valeur.

log(${question_one})

log10(value)

Renvoie le logarithme en base 10 de la valeur.

log10(${question_one})

pi()

Renvoie pi.

pi()

pow(value, power)

Renvoie la valeur à la puissance spécifiée.

pow(${question_one}, 3)

round(value, power)

Renvoie la valeur arrondie.

round(${question_one}, 5)

sqrt(value)

Renvoie la racine carrée de la valeur.

sqrt(${question_one})

Mise en forme HTML

Vous pouvez utiliser la mise en forme HTML dans les étiquettes et les astuces des questions, ainsi que dans les étiquettes des listes de choix. La mise en forme HTML prise en charge est la suivante :

BaliseAttribut

a

href, style

abbr

title

audio¹

autoplay, controls, loop, muted, preload

b, strong, i, em, u, ul, ol, li, tbody, br, hr

dd, dl, dt

style

div¹

style, align

figcaption

style

figure

style

font

size, color, style

h1, h2, h3, h4, h5, h6

style

img

src, width, height, border, alt, style

p

style

source¹

media, src, type

span

style

sub

style

sup

style

table

width, height, cellpadding, cellspacing, border, style

td, th

height, width, valign, align, colspan, rowspan, nowrap, style

tr

height, valign, align, style

video¹

autoplay, controls, height, loop, muted, poster, preload, width

¹Prise en charge uniquement dans l’application Web Survey123.

Conseil :

Par défaut, un hyperlien créé au format HTML ouvert dans l’application Web Survey123 ouvre la destination sous le même onglet que l’enquête. Si vous préférez ouvrir ce lien sous un nouvel onglet, ajoutez target="_blank" à la balise a href ; par exemple :

<a href="https://www.esri.com" target="_blank">Link to Esri website</a>

Expressions régulières

Les expressions régulières sont des séquences de caractères qui définissent un modèle de recherche. Vous pouvez les utiliser dans une question pour déterminer ses valeurs en fonction d’autres questions ou pour restreindre la saisie de données. Il est possible de créer une expression régulière à partir des sous-expressions présentées dans le tableau suivant. Pour plus d’informations, reportez-vous à la rubrique Formules.

Sous-expressionApparier

^

Correspond au début de la ligne.

$

Correspond à la fin de la ligne.

.

Correspond à tout caractère unique sauf une nouvelle ligne.

[...]

Correspond à tout caractère unique entre crochets.

[^...]

Correspond à tout caractère unique sans crochets.

(re)

Regroupe les expressions régulières et mémorise le texte apparié.

(?: re)

Regroupe les expressions régulières sans mémoriser le texte apparié.

a| b

Correspond soit à a soit à b.

\A

Début de la chaîne entière.

\b

Correspond aux limites de mot en dehors de crochets, et au retour arrière (0x08) à l’intérieur de crochets.

\B

Correspond à des limites non alphanumériques.

\d

Correspond à des chiffres. Elle équivaut à [0 à 9].

D

Correspond à des caractères qui ne sont pas des chiffres.

\E

Finit les guillemets commencés avec \Q.

\G

Correspond au point où la dernière correspondance a fini.

\n, \t, \e, etc.

Correspond à une nouvelle ligne, une tabulation, un espace, etc.

\N

Référence arrière pour capturer le numéro N d’un groupe.

\Q

Echappe (guillemet) tous les caractères jusque \E.

re*

Correspond à 0 occurrence ou plus de l’expression précédente.

re+

Correspond à au moins 1 occurrence de l’expression précédente.

re?

Correspond à 0 ou 1 occurrence de l’expression précédente.

re{ n}

Correspond au nombre exact d’occurrences d’une expression précédente défini à la place de n.

re{ n,}

Correspond à au moins n occurrences de l’expression précédente.

re{ n, m}

Correspond à au moins le nombre d’occurrences défini par n et, au plus, défini par m dans l’expression précédente.

\s

Correspond à un espace blanc : onglet, saut de ligne, saut de page, retour chariot ou espace.

\S

Correspond à des caractères qui ne sont pas des espaces blancs.

\w

Correspond à des caractères alphanumériques.

\W

Correspond à des caractères non alphanumériques.

\z

Fin de la chaîne entière.

\Z

Fin de la chaîne entière, sauf terminateur de dernière ligne autorisé.

Par exemple, l’expression régulière regex(.,'^[A-Za-z]*$') nécessite que l’utilisateur saisisse uniquement des lettres, aucun nombre ni caractère spécial, dans une question de type chaîne.

Types de champ Esri

La colonne bind::esri:fieldType permet de remplacer le type de champ par défaut par l’une des valeurs suivantes. Pour plus d’informations, reportez-vous à la rubrique Colonnes personnalisées de Esri.

Valeur de champRésultat

esriFieldTypeDate

Valeurs de date et d’heure

esriFieldTypeDateOnly

Valeurs de date uniquement sans valeurs d’heure

esriFieldTypeTimeOnly

Valeurs d’heure uniquement sans valeurs de date

esriFieldTypeTimestampOffset

Valeur de date, d’heure et de décalage par rapport au temps universel coordonné (UTC)

esriFieldTypeDouble

Nombres à virgule flottante à double précision

esriFieldTypeGUID

Identifiant unique global

esriFieldTypeInteger

Nombres entiers (32 bits)

esriFieldTypeBigInteger

Nombres entiers (64 bits)

esriFieldTypePointZ

Permet la capture de l'altitude dans des géopoints

esriFieldTypeString

Série de symboles alphanumériques

null

Champ nul, ne stocke pas de valeurs

Caractères spéciaux

Les noms de question et de choix ne doivent pas contenir de caractères spéciaux, comme des espaces, virgules, traits d’union, parenthèses, crochets ou caractères tels que $, % et #. Il est important que les noms de choix des questions de type select_multiple ne contiennent pas d’espace ou de virgule.