Depuis que vous avez basculé votre organisation Salesforce en interface Lightning avez-vous constaté que certains éléments de navigation conservent un aspect délicieusement retro ?
En effet, tous les composants de notre CRM préféré n’ont pas encore bénéficié du coup de jeune apporté par la refonte Lightning; les fiches détaillées des utilisateurs et les présentations de page en sont de bons exemples.
Classique, simple mais si restrictif !
Concédons aux présentations de page ‘classiques’ leur rapidité de mise en oeuvre; il suffit de glisser quelques sections puis les champs nécessaires et de sauvegarder pour mettre rapidement à disposition des utilisateurs les informations dont ils ont besoin.
Mais ce format nous limite à deux colonnes et pratiquement aucune gestion dynamique sur les champs en plus de nous restreindre à la règle ‘1 profil = 1 présentation de page par type d’enregistrement’.
De plus avec l’introduction des Flexipages (Pages d’enregistrement Lightning), la présentation de page est relayée au second plan en tant que composant d’une page Lightning bien plus prometteuse et flexible.
Formulaire Dynamique, presque sans limite ?
Une des contraintes de l’utilisation des présentations de pages ‘classiques’ est de ne pouvoir profiter pleinement des possibilité d’attribution des Flexipages. Par exemple, dans le cas de la création d’une Flexipage différente par application, le composant du détail de l’enregistrement affichera toujours le même contenu pour un profil donné: celui de l’utilisateur courant.
Or avec les Formulaires Dynamique cette rigidité et ces contraintes disparaissent ! En effet, cette nouvelle fonctionnalité vous permet de scinder l’information et de disposer les champs et sections où vous le souhaitez dans le générateur d’application Lightning.
Dites adieu au bloc de détails monolithique coincé dans un onglet et répartissez les champs comme autant de composants individuels dans votre page.
Et qui dit composants dit règles de gestion d’affichage ! Ainsi vous pouvez désormais appliquer des règles de visibilité dynamiques par section ou par champ. Par ailleurs les règles sur les champs se déclenchent même pendant l’édition d’un enregistrement !
Par exemple, il est possible d’afficher dynamiquement un champ selon la valeur d’un autre champ, comme une valeur de liste de sélection ou l’état d’un booléen.
Super ! Quand est-ce que je commence ?
Les formulaires dynamiques sont déjà disponible pour tout le monde… sur les objets custom ! Vous pouvez déjà retrouver les composants nécessaires dans le générateur d’application lightning:
Et si vous ne souhaitez pas repartir de zéro, Salesforce vous assiste dans la migration de vos pages. Pour cela il suffit de cliquer sur le composant ‘Détail d’enregistrement’ et dans le sous menu du composant sur l’option ‘Mettre à niveau maintenant’.
Important à savoir
- Les objets standards ne sont pas encore supportés (Aucune date avancée par Salesforce)
- Pour le moment les formulaires dynamiques ne sont disponibles que sur les objets custom.
- En formulaire dynamique le Type d’Enregistrement et le Propriétaire sont automatiquement placés en lecture seule et cela ne peut être modifié.
- Vous pouvez maintenant afficher plusieurs fois le même champ à différents endroits.
- Les champs dépendants apparaitront quelques soient les règles de visibilité appliquées.
- Les règles de visibilité sur les champs sont dynamiques, elles se déclenchent pendant la modification de l’enregistrement.
- Les règles de visibilité sur les sections ne sont pas dynamiques, elles ne se déclenchent qu’après l’enregistrement des modifications.
- Les listes associées sont toujours contrôlées par les présentations de page.
Pour aller plus loin
Vous pouvez consulter la feuille de route du déploiement Lightning à cette adresse
>> https://help.salesforce.com/s/articleView?id=sf.lex_roadmap.htm&type=5
Tips and Considerations
>> https://help.salesforce.com/s/articleView?id=sf.dynamic_forms_considerations.htm&type=5
Rejoignez la trailblazer Community autour des formulaires dynamiques
>> https://trailhead.salesforce.com/trailblazer-community/groups/0F93A000000TyRh