Présentation

Effectué

Une exigence courante concernant le stockage de données des applications métier est de disposer d’une colonne de données contenant une liste de valeurs standardisées et faisant l’objet de peu de modifications pour assurer la cohérence des données. Les utilisateurs qui saisissent des données choisiront ainsi une option dans une liste au lieu de saisir une valeur de forme libre. Ces options sont, par exemple, une liste de pays/régions, la priorité des incidents, l’évaluation de satisfaction, etc.

Microsoft Dataverse a un type de colonne qui prend en charge ce concept : la colonne Choix. Les colonnes Choix permettent à un utilisateur de choisir des valeurs dans une liste. Par défaut, les utilisateurs peuvent choisir une seule valeur, mais la colonne peut être facilement configurée pour autoriser plusieurs valeurs à partir d’une seule liste de valeurs connues. Par exemple, Catégorie principale peut être une colonne Choix et Autres catégories peut être configurée pour effectuer plusieurs sélections, et les deux peuvent utiliser la même liste de catégories.

Le système (ou un personnalisateur) définit la liste des valeurs d’une colonne Choix et stocke ces valeurs en tant que métadonnées de colonne de table. Contrairement aux données d’application, ces valeurs ne peuvent être modifiées que par un créateur d’application, et non par un utilisateur d’application. L’un des avantages de cette fonctionnalité est que vos formules peuvent utiliser le nom de la liste de choix lorsque vous créez une application qui fonctionne avec une liste de valeurs. Vos formules peuvent également utiliser le nom d’affichage des valeurs. Par exemple, la formule suivante définit une couleur sur la propriété Fill d’un élément en fonction de la colonne Catégorie, qui est une colonne Choix.

Capture d’écran de la formule Power Fx suivante : Switch( ThisItem.Category, ’Category (Accounts)’.’Preferred Customer’, Green, ’Category (Accounts)’.’Standard’, Black. )

Lorsque vous composez cette formule, Power Apps connaît les valeurs possibles de la colonne Catégorie et vous permet de sélectionner la valeur à comparer dans la liste des valeurs connues pour la colonne Choix.

Remarque

Si vous ajoutez ou modifiez des valeurs dans une liste de choix et que l’élément modifié ne s’affiche pas encore dans l’éditeur, actualisez la table dans le volet Données en cliquant sur les points de suspension () en regard de la table et en sélectionnant Actualiser dans le menu contextuel.

Capture d’écran de l’option Actualiser dans le menu contextuel d’une table Dataverse. Ce menu est appelé en cliquant sur les points de suspension en regard de la table.

Locale ou globale

Vous pouvez créer une liste de valeurs de choix disponibles sous forme de liste locale ou globale. Les valeurs d’une liste Choix local ne sont utilisées que pour la colonne où elles sont définies et peuvent être utilisées uniquement dans cette table. L’option Choix global permet d’utiliser la liste pour plusieurs colonnes dans la même table ou dans plusieurs tables différentes. Lorsque vous créez une colonne Choix, la valeur par défaut de l’option Synchroniser avec le choix global ? est Oui (ce qui est recommandé). L’option Choix global permet d’utiliser les mêmes choix dans d’autres tables. Sauf si vous êtes sûr que les valeurs ne s’appliquent qu’à cette seule colonne dans cette seule table, privilégiez l’utilisation de valeurs de choix globales.

Capture d’écran des propriétés de la colonne Choix dans l’interface du créateur mettant en évidence les options Choix global et Choix local.

Lorsque vous sélectionnez Oui, notez comment Synchroniser ce choix avec devient un champ obligatoire et vous devez faire une sélection pour les choix. Lorsque vous sélectionnez ce champ, un volet affichant les différentes options disponibles s’affiche en regard du volet Nouvelle colonne. Vous pouvez saisir le type de choix que vous recherchez ou faire défiler la liste pour en sélectionner un. Notez également que lorsque vous survolez l’un des groupes de choix, vous bénéficiez d’un aperçu des choix qui font déjà partie de ce groupe.

Capture d’écran du champ de saisie pour Synchroniser ce choix avec et du volet contextuel avec les valeurs de choix s’affichant en cas de survol.

Il est également possible de créer un groupe de choix en cliquant sur + Nouveau choix et en saisissant des informations sur vos choix.

Notez que vous pouvez également affecter un Choix par défaut pour votre colonne lors de sa création. Rassurez-vous : vous pourrez revenir plus tard et définir ou modifier le choix par défaut.

Si vous décidez de conserver vos options de choix en tant que groupe de choix local, vous devez sélectionner Non sous Synchroniser avec le choix global ? Dans ce cas, définissez vos choix juste en dessous du bouton Non. (Au moins un est requis.) Il vous suffit d’ajouter un Libellé pour le choix ; Power Apps affecte alors automatiquement une valeur entière à cet élément, que vous pouvez modifier à votre convenance. Vous pouvez également sélectionner une couleur pour chaque choix en cochant la case juste à gauche du nom de Libellé que vous avez saisi. Dans la fenêtre contextuelle Sélectionner une couleur, vous pouvez coder en dur la valeur de couleur au moyen des champs de saisie pour les valeurs hexadécimales ou RVB. Vous pouvez également ajuster la barre de défilement des couleurs et affiner le contenu du curseur des couleurs à l’aide de la case au-dessus du curseur. Cette couleur est référencée uniquement dans les applications pilotées par modèle.

Capture d’écran illustrant les valeurs renseignées pour les propriétés Label et Value du champ de choix, ainsi que le champ des options de couleur avec les options de saisie de couleur mises en évidence.

Vous pouvez ajouter d’autres choix en cliquant sur le bouton + Nouveau choix et en répétant le processus.

Si vous devez autoriser l’utilisateur à sélectionner plusieurs choix, vous devez cocher la case « La sélection de plusieurs choix est autorisée » avant de terminer la création de la colonne, car cette option est désactivée une fois que vous avez créé la colonne.

Afficher les valeurs de colonne

Lorsque les données d’un choix sont stockées dans une ligne Dataverse, seule la valeur numérique est stockée, et non le texte. Pour les choix multiples, une liste de valeurs numériques séparées par des virgules est stockée pour représenter plusieurs sélections.

L’affichage des valeurs dans un contrôle tel qu’un libellé est différent pour les valeurs à choix unique ou multiple. Des champs de choix permettent de définir la valeur d’un libellé afin d’afficher la valeur textuelle de la liste. Par exemple, si vous avez un champ de choix Catégorie pour la catégorie de client, vous pouvez l’afficher sur un libellé dans une galerie à l’aide de la formule suivante :

Capture d’écran de la formule Power Fx : ThisItem.Category.

Pour les colonnes à choix multiple, la propriété sur l’enregistrement est de type Table. Il s’agit d’une table à une seule colonne avec une colonne Valeur, chaque ligne représentant une valeur sélectionnée. Pour afficher une liste conviviale de valeurs textuelles séparées par des virgules, un prétraitement est nécessaire. Par exemple, si vous avez une colonne Preferred Delivery permettant aux utilisateurs de choisir un ou plusieurs jours de la semaine pour la livraison, la formule suivante vous permet de définir la propriété Text sur un libellé :

Capture d’écran de la formule Power Fx : Concat(ThisItem.’Preferred Delivery’,Text(Value),

Cette formule entraîne l’affichage suivant de la liste des valeurs sélectionnées.

Capture d’écran illustrant une livraison préférée le lundi et le mardi, qui est le résultat de la formule Power Fx.

Choix ou Recherche

Une décision courante à prendre en matière de modélisation des données consiste à choisir entre une colonne Choix et une colonne Recherche, ou entre des choix multiples et une relation plusieurs-à-plusieurs. Il n’y a pas de bonne ou de mauvaise réponse. Cependant, votre décision affecte votre gestion de la liste de valeurs et des formules que vous pouvez appliquer. Examinez les différences résumées dans le tableau suivant :

Choix Recherche ou relation plusieurs-à-plusieurs
Liste modifiée par le créateur, aucune modification par l’utilisateur. La liste ne contient que des données de table et la sécurité standard s’applique.
Les données sont stockées sous forme de nombre entier ou de liste de nombres (s’il y en a plusieurs) séparés par des virgules. Les données sont stockées sous forme de référence de table.
Aucun moyen intégré de désactiver ou retirer un choix. Prend en charge l’état inactif sur la ligne et peut être filtré par des formules dans l’application afin de limiter la sélection.
Traitée comme un composant de solution avec prise en charge complète d’ALM. Traitées comme des données de référence.
N’a qu’un libellé, une valeur et une couleur, et seul le libellé est utilisable dans les formules. (Par exemple, filtrage et tri uniquement sur le libellé d’affichage.) Peut ajouter d’autres données à une table cible de recherche utilisables dans des formules. (Par exemple, filtrage et tri sur toute colonne ajoutée à la table.)
Localisation intégrée. Vous gérez vous-même la localisation.
Aucune prise en charge intégrée des colonnes Choix dépendantes. Plus facile de modéliser les données et d’implémenter des colonnes dépendantes. (Voir Créer une liste déroulante dépendante dans une application canevas.)

N’oubliez pas qu’après avoir créé la colonne, vous ne pouvez pas modifier le type de données. Par conséquent, avant de créer la colonne, réfléchissez à la manière dont les applications, l’automatisation et le reporting utiliseront les données.

La suite de ce module explique comment utiliser les colonnes Choix lorsque vous créez une application canevas à partir de Microsoft Power Apps.