Power Apps – Règles de nommage des contrôles
-
Power Apps – Règles de nommage des contrôles
Comme je vois régulièrement fleurir de-ci de-là des questions sur la bonne pratique en termes de nommage des contrôles dans ses applications Power Apps, je vous propose ci-dessous les règles que j’applique depuis pas mal de temps à mes propres applications.
Ces règles s’appuient sur le Power Apps canvas app coding standards and guidelines de Microsoft, avec quelques retouches personnelles que je considère comme des améliorations ou des facilités que j’ai mis en place au fur et à mesure de mes expériences. Celles-ci sont bien sûr ouvertes à tout débat… 😉 N’hésitez pas à donner votre avis…
Les écrans
Nom de mon écran
👉 Nom clair et parlant pour ce qu’il contient, pas d’abréviations
J’étais parti au départ pour une nomenclature plutôt technique pour les écrans mais suite à des retours et des confirmations vues ailleurs, il s’avère que les noms des écrans sont lus par les lecteurs d’écrans pour les personnes en difficulté visuelle. Il est donc important que celui-ci soit le plus clair possible, quitte à ce qu’il soit un peu long.
Exemples :
-
Accueil
-
Liste produits
-
Edition client externe
Note : cela impliquera, dès lors qu’il contient un espace, de l’entourer d’apostrophes dans vos formules Power Fx.
A chaque écran va correspondre un code (en majuscule) sur 2, 3 ou 4 caractères au plus afin de suffixer les contrôles qu’il contiendront (voir ci-après).
Les contrôles
xxxMonContrôle_YYY
(xxx
=type de contrôle,YYY
=code écran)👉 Pas d’espace, pas de caractères spéciaux, caractères accentués autorisés
RAPPEL : un contrôle doit avoir un nom unique dans l’ENSEMBLE de votre application -> 2 contrôles ne peuvent avoir le même nom sur 2 écrans différents.
Pour cette raison, il est recommandé d’utiliser systématiquement un code écran en suffixe du nom de vos contrôle pour identifier clairement leur localisation dans l’application. Je l’invente en fonction du nom de l’écran :
ACC
pourAccueil
,LP
pourListe produits
,ECE
pourEdition client externe
, …J’utilise les préfixes suivants pour les types de contrôles :
Les plus utilisés
lbl
= Etiquette (Text label)btn
= Bouton (Button)txt
= Entrée de texte (Text input)cbx
= Zone de liste déroulante (Combo box)ddl
= Liste déroulante (Drop down)dat
= Sélecteur de dates (Date picker)lbx
= Zone de liste (List box)chk
= Case à cocher (Check box)rad
= Case d’option (Radio)tog
= Bascule (Toggle)gal
= Galerie (Gallery)sli
= Curseur (Slider)tim
= Minuteur (Timer)frm
= Formulaire Modifier/Affichage (Edit/Display form)dc
= Datacard (dans un formulaire)ctr
= Conteneur (Container)lay
= Conteneur horizontal/vertical (Horizontal/Vertical container) *img
= Imagecmp
= Composant (Component)ico
= Icône (Icon)rec
= Rectanglecir
= Cercle (Circle)htm
= Texte HTML (HTML text)rte
= Editeur de texte enrichi (Rich Text Editor)cam
= Caméra (Camera)* Car en réalité il s’agit (en anglais) de Layout Containers
Les autres
pen
= Entrée du stylo (Pen input)rat
= Evaluation (Rating)adr
= Entrée d’adresse (Address input)tab
= Table de données (Data table)bar
= Scanneur de codes-barres (Barcode scanner)vid
= Vidéo (Video)aud
= Audiomic
= Microphonepic
= Ajouter une image (Add picture)imp
= Importer (Import)exp
= Exporter (Export)pdf
= Visionneuse PDF (PDF viewer)map
= Carte (Map)Les variables
xxxMonNomDeVariable[_YYY]
(xxx
=type de variable,YYY
=code de l’écran, facultatif)👉 Pas d’espace, pas de caractères spéciaux, caractères accentués autorisés
J’utilise les préfixes suivants pour les types de variables :
glo
= variable globale définie avec Set()loc
= variable locale définie avec UpdateContext()col
= collection définie avec ClearCollect()Le suffixe facultatif
_YYY
me sert principalement à identifier une collection que je n’utilise que sur un écran en particulier. Ainsi, si je vois une collection suffixée avec un code d’écran je sais qu’elle n’est utilisée que sur cet écran là…Les composants
MonNomDeComposant
👉 Pas de préfixe, pas d’espace, pas de caractères spéciaux, caractères accentués autorisés
Pour les contrôles, même nomenclature que sur les écrans mais où le suffixe
YYY
représente le code du composant.
Par exemple, pour un composant ActiveEasyTheme -> togMonToggle_AET, pour un composant ActionPopup -> cbxMaComboBox_AP, …
Et je m’assure qu’il n’y a pas déjà un écran avec le même suffixe…Voilou… 😉
PostID=rBXRms6gmFVcdT5
-
Connectez-vous pour répondre.