Rendre un champ obligatoire ou en lecture seule sur un formulaire
Objectif
Marquer un champ d’un formulaire comme obligatoire — l’utilisateur doit le remplir avant de pouvoir enregistrer l’enregistrement — ou en lecture seule — le champ est affiché mais ne peut pas être modifié.
Prérequis
- Vous êtes connecté avec un rôle de créateur (ou d’administrateur de la plateforme).
- Un formulaire est ouvert dans le concepteur de formulaires, avec le champ placé dessus (voir Créer un formulaire).
Étapes
-
Dans le concepteur de formulaires, sélectionnez le champ sur le canevas. Ses réglages apparaissent dans le panneau Propriétés.
-
Cochez Obligatoire pour rendre le champ obligatoire sur ce formulaire. Un champ obligatoire affiche un astérisque rouge à côté de son libellé, et le formulaire refuse d’enregistrer tant que le champ est vide, en le signalant par « Ce champ est obligatoire. »
La case reprend au départ le réglage du champ lui-même (voir Ajouter un champ à une table) : un champ marqué obligatoire lors de sa création est donc déjà coché ici — c’est ce que l’utilisateur rencontrera sur le formulaire. Laissez-la telle quelle, et l’emplacement suit simplement le champ ; décochez-la, et ce formulaire déclare le champ facultatif, quoi que dise plus tard le réglage du champ.
-
Cochez Lecture seule pour afficher la valeur du champ sans permettre à l’utilisateur de la modifier. Un champ en lecture seule s’affiche en texte simple, sans contrôle de saisie.
-
Sélectionnez Enregistrer.
Ce qui se passe en coulisses
Obligatoire et lecture seule sont des propriétés de l’emplacement du champ sur ce formulaire, et non du champ lui-même — le même champ peut donc être obligatoire sur un formulaire et facultatif sur un autre. Elles sont enregistrées dans la définition du formulaire et vérifiées par rapport au schéma de formulaire.
Un emplacement ne stocke Obligatoire que lorsqu’il diffère du réglage du champ. C’est ce qui permet à un champ marqué obligatoire plus tard de se propager à tous les formulaires qui n’ont jamais dit le contraire, tandis qu’un formulaire qui l’a délibérément assoupli conserve sa décision.
Le caractère obligatoire est une règle de formulaire, exactement comme dans Power Apps — ce n’est pas une contrainte de base de données. Toutes les colonnes d’une table acceptent les valeurs nulles au niveau de la base, donc :
- C’est le formulaire qui impose « remplissez ceci » : la vérification s’exécute dans le navigateur à l’enregistrement, et une valeur obligatoire manquante bloque l’enregistrement sans aller-retour avec le serveur.
- Un enregistrement créé d’une autre manière (une importation, un appel d’API, un enregistrement partiel) n’est pas rejeté pour un champ obligatoire manquant. La seule valeur exigée par le serveur est celle du champ principal (le nom) de l’enregistrement, car c’est par lui que chaque liste et chaque champ de recherche affichent l ’enregistrement.
Comme le caractère obligatoire vit sur le formulaire et non sur la colonne, vous pouvez ajouter un champ obligatoire à une table existante, ou en assouplir un, sans réécrire aucune donnée.
Dépannage
- L’astérisque et la vérification d’obligation n’apparaissent pas. — Vérifiez que vous avez coché Obligatoire sur l’emplacement du champ (sélectionnez le champ, pas sa section) et enregistré le formulaire. Le caractère obligatoire par défaut d’un champ ne s’applique que lorsque l’emplacement ne le remplace pas.
- Un champ marqué en lecture seule enregistre toujours une ancienne valeur. — Lecture seule signifie que l’utilisateur ne peut pas modifier le champ sur ce formulaire ; une valeur déjà présente sur l’enregistrement est affichée et conservée telle quelle. Pour empêcher toute écriture d’une valeur, retirez le champ du formulaire.