Définition de chemins multiples dans un flux
Objectifs de formation
Une fois cette unité terminée, vous pourrez :
- Interpréter des exigences métier et les visualiser dans un organigramme de processus
- Créer un flux pour implémenter le processus associé aux exigences métier
- Utiliser la logique de branchement pour sélectionner l’un des multiples chemins d’un flux
Avant de commencer
Ce badge part du principe que vous savez créer un flux avec des variables, des entrées et des éléments de données, tels que Get Records (Obtenir des enregistrements). Si vous ne connaissez pas bien ces concepts ou avez besoin d’un rappel à leur sujet, consultez les badges Concepts de base de Flow Builder et Données et actions dans les flux.
Lorsque votre flux s’exécute, il se déplace comme un train, en parcourant son itinéraire vers sa destination et en déclenchant des actions à chacun de ses arrêts. Toutefois, les trains ne suivent pas toujours systématiquement le même chemin. Les voies ferrées se séparent, convergent et font des boucles pour faire arriver les trains à destination. Flow Builder vous permet de créer des automatisations qui font la même chose, avec des chemins qui se séparent ou qui convergent en fonction des paramètres que vous avez définis.
La puissance de la condition If (Si)
Certains cas d’utilisation de l’automatisation nécessitent que vous employiez des méthodes d’automatisation différentes en fonction de situations particulières. Prenons un exemple.
Flo Smith est administratrice Salesforce et analyste d’entreprise senior pour Pyroclastic, Inc. Dans ce module, vous êtes un administrateur Salesforce travaillant dans l’équipe de Flo et vous l’aidez à automatiser certains des processus commerciaux de Pyroclastic.
La tâche que vous confie Flo aujourd’hui est de créer une automatisation qui définit automatiquement la priorité adéquate lorsque des requêtes de support sont créées. La valeur de priorité dépend du type de problème et de l’influence du demandeur. Flo commence par examiner les exigences métier.
- If Type = Downtime: priority = Severity 0 (Si Type = Temps d’arrêt : priorité = Gravité 0).
- If Type = Usability and the contact who submitted it is a VIP: priority = Severity 1 (Si Type = Convivialité et que le contact qui l’a soumis est un VIP : priorité = Gravité 1)
- If Type = Usability and the contact who submitted it is not a VIP: priority = Severity 2 (Si Type = Convivialité et que le contact qui l’a soumis n’est pas un VIP : priorité = Gravité 2).
- Otherwise (else), priority = Severity 3 (Sinon [autrement], priorité = Gravité 3).
Notez que toutes les lignes, sauf la dernière, commencent par if (si). La dernière ligne sert d’exigence métier par défaut pour les requêtes qui ne répondent à aucune des trois exigences précédentes.
Ensuite, vous et Flo créez un organigramme pour représenter visuellement l’automatisation qui définira la priorité des requêtes. Pour ce faire, vous pouvez avoir recours à toute méthode qui vous convient : vous pouvez faire un dessin sur un papier, utiliser un outil de conception ou encore employer un programme de création d’organigramme. Votre objectif est de transformer les exigences du texte en un modèle visuel de votre automatisation souhaitée.
Examinons l’organigramme. Il comporte quatre exigences métier.
Chaque exigence métier comprend une zone de gravité sur laquelle débouche le chemin Yes (Oui), qui est sélectionné lorsque l’exigence est satisfaite. Dans Flow Builder, on appelle cela des résultats, et chaque résultat dispose de son propre chemin sur la zone de dessin.
Chaque résultat (sauf le dernier) est associé à des conditions qui doivent être remplies. Dans Flow Builder, on appelle cela des exigences de condition.
Le dernier résultat est le résultat par défaut. Il n’est associé à aucune condition. Le flux choisit le résultat par défaut lorsqu’aucune des conditions des autres résultats n’est remplie.
Pour créer ce type de logique de branchement dans un flux, vous devez utiliser un élément Decision (Décision).
L’élément Decision (Décision)
L’élément Decision (Décision) vous permet de créer plusieurs chemins. La création d’un élément Decision (Décision) s’appuyant sur un organigramme est un processus en deux étapes.
- Créez un résultat pour chaque chemin Yes (Oui) dans le diagramme. (Le chemin No [Non] final est géré par le résultat par défaut.) Les résultats sont classés par ordre sous Outcome Order (Numéro d’ordre du résultat).
- Ajoutez des exigences de condition à chaque résultat, à l’exception du résultat par défaut. Les conditions requises pour chaque résultat sont indiquées dans le losange lui correspondant dans l’organigramme.
Les chemins de l’élément Decision (Décision) représentent les différents résultats.
Lorsque le flux atteint un élément Decision (Décision), il évalue le premier résultat. Si ses conditions sont remplies, le flux choisit ce résultat et suit le chemin lui correspondant. Dans le cas contraire, le flux continue à évaluer les résultats en fonction du paramètre Outcome Order (Numéro d’ordre du résultat) jusqu’à ce qu’il trouve un résultat pour lequel les conditions requises sont remplies. Si aucune des conditions requises pour les résultats n’est remplie, le flux emprunte le chemin du résultat par défaut. Lorsque les chemins séparés convergent à nouveau, le flux revient sur ce chemin unique.
Utilisation pratique de Flow Builder
À présent, lancez votre Trailhead Playground pour suivre les étapes de ce module et tenter de les répéter. Pour ouvrir votre Trailhead Playground, faites défiler l’écran jusqu’au défi pratique et cliquez sur Lancer. Vous utilisez également le Playground au moment de relever les défis pratiques.
Élaboration d’un élément Decision (Décision)
Créons un flux pour automatiser ce processus métier. Toutefois, avant que nous commencions, ajoutez ces valeurs de liste de sélection obligatoires aux champs appropriés. Pour plus d’informations sur l’ajout de valeurs de liste de sélection, consultez l’unité Gestion de vos valeurs de liste de sélection dans le badge Administration des listes de sélection.
- Sur l’objet Case (Requête), dans le champ Priority (Priorité), ajoutez les valeurs suivantes :
Severity 0
(Gravité 0),Severity 1
(Gravité 1),Severity 2
(Gravité 2),Severity 3
(Gravité 3) - Sur l’objet Case (Requête), dans le champ Type, ajoutez les valeurs suivantes :
Downtime
(Temps d’arrêt),Usability
(Convivialité)
Création d’un élément Decision (Décision) et définition de résultats
Pour recréer le processus de l’organigramme sous forme de flux à l’aide d’un élément Decision (Décision), procédez comme suit :
- Créez un flux déclenché par un enregistrement :
- Pour Object (Objet), sélectionnez Case (Requête).
- Acceptez la configuration du déclencheur par défaut et les conditions d’entrée.
- Sous Optimize the Flow for (Optimiser les flux pour), sélectionnez Fast Field Updates (Mises à jour du champ rapides).
Choisissez Fast Field Updates (Mises à jour du champ rapides) lorsque vous voulez seulement mettre à jour l’enregistrement déclencheur. Pour plus d’informations sur les mises à jour de champ rapides, consultez le badge Flux déclenchés par des enregistrements.
- Ajoutez un élément Decision (Décision) à votre flux.
- Sur la zone de dessin, survolez
, puis cliquez sur
.
- Sélectionnez Decision (Décision).
- Pour Label (Étiquette), saisissez
Check Case Details
(Vérifier les détails de la requête).
- Définissez les résultats :
- Sous OUTCOME ORDER (NUMÉRO D’ORDRE DU RÉSULTAT), laissez New Outcome (Nouveau résultat) sélectionné.
- Pour Label (Étiquette), sous OUTCOME DETAILS (DÉTAILS DU RÉSULTAT), saisissez
Severity 0
(Gravité 0).
- En regard de OUTCOME ORDER (NUMÉRO D’ORDRE DU RÉSULTAT), cliquez sur
pour créer un résultat.
- Attribuez l’étiquette
Severity 1
(Gravité 1) au deuxième résultat.
- Créez un autre résultat et attribuez-lui l’étiquette
Severity 2
(Gravité 2).
- Sous OUTCOME ORDER (NUMÉRO D’ORDRE DU RÉSULTAT), sélectionnez Default Outcome (Résultat par défaut).
- Modifiez son étiquette en
Severity 3 (Default)
(Gravité 3 [par défaut]).
Ajout d’exigences de condition aux résultats
- Définissez les exigences de condition pour le résultat Severity 0 (Gravité 0) :
- Sous OUTCOME ORDER (NUMÉRO D’ORDRE DU RÉSULTAT), sélectionnez Severity 0 (Gravité 0).
- Sous OUTCOME DETAILS (DÉTAILS DU RÉSULTAT), pour Resource (Ressource), cliquez sur Triggering Case (Requête déclenchante) et sélectionnez Case Type (Type de requête).
- Conservez l’opérateur Equals (Égal à).
- Pour Value (Valeur), sélectionnez Downtime (Temps d’arrêt).
- Définissez les exigences de condition pour le résultat Severity 1 (Gravité 1) :
- Saisissez la première exigence de condition : Triggering Case (Requête déclenchante) > Case Type (Type de requête), Equals (Égal à), Usability (Convivialité).
- Cliquez sur Ajouter une condition.
- Saisissez la deuxième exigence de condition : Triggering Case (Requête déclenchante) > Contact ID (ID de contact) > Contact Description (Description du contact), Contains (Contient),
VIP
.
- Définissez les exigences de condition pour le résultat Severity 2 (Gravité 2) :
-
Triggering Case (Requête déclenchante) > Case Type (Type de requête), Equals (Égal à), Usability (Convivialité).
Même si le troisième losange de notre diagramme précise que le contact ne doit pas être un VIP, nous n’avons pas besoin de vérifier cette exigence pour le résultat Severity 2 (Gravité 2). Les exigences de condition étant évaluées dans l’ordre, l’élément Decision (Décision) ne vérifie de toute manière ce résultat que lorsque le contact n’est pas un VIP.
Votre élément Decision (Décision) devrait ressembler à ceci :
- Cliquez sur
pour fermer le panneau latéral.
Comme votre organigramme avait quatre résultats potentiels, l’élément Decision (Décision) a quatre résultats. Ces quatre résultats créent quatre chemins possibles que le flux peut emprunter, chacun étant nommé d’après son résultat correspondant. Voici comment cela se présente sur la zone de dessin.
Maintenant, enregistrez votre nouveau flux et nommez celui-ci.
- Cliquez sur Enregistrer.
- Pour Flow Label (Étiquette du flux), saisissez
Set Case Priority
(Définir la priorité de la requête).
- Cliquez sur Enregistrer.
Éléments de création et de mise à jour d’enregistrements
Sur chaque chemin de gravité, vous devez ajouter un élément qui met à jour la nouvelle requête en lui attribuant la valeur de priorité appropriée. Par exemple, dans le chemin Severity 0 (Gravité 0), il vous faut définir le champ Priority (Priorité) sur Severity 0 (Gravité 0).
Tout d’abord, ajoutez un élément Update Records (Mettre à jour les enregistrements) aux trois premiers chemins.
- Sous Severity 0 (Gravité 0), survolez
et cliquez sur
.
- Sous Shortcuts (Raccourcis), sélectionnez Update Triggering Record (Mettre à jour l’enregistrement déclenchant).
- Pour Label (Étiquette), saisissez
Set Priority to Sev0
(Définir la priorité sur Grav0).
- Acceptez le nom d’API généré automatiquement.
- Sous How to Find Records to Update and Set Their Values (Comment rechercher des enregistrements pour mettre à jour et définir leur valeur), conservez la valeur par défaut : Use the case record that triggered the flow (Utiliser l’enregistrement de requête qui a déclenché le flux).
- Faites défiler l’écran jusqu’à la section Set Field Values (Définir les valeurs de champ) se rapportant à Case Record (Enregistrement Requête).
- Pour Field (Champ), sélectionnez Priority (Priorité).
- Pour Value (Valeur), sélectionnez Severity 0 (Gravité 0).
- Cliquez sur
dans le panneau Update Records (Mettre à jour les enregistrements) pour fermer ce dernier.
- Répétez les étapes 1 à 9 pour les chemins Severity 1 (Gravité 1) et Severity 2 (Gravité 2). N’oubliez pas de modifier l’étiquette et la valeur de chaque chemin.
Pour le chemin Severity 3 (Gravité 3), copiez-collez l’élément à partir du chemin Severity 2 (Gravité 2). (Il s’agit là d’un exemple assez simple, mais si jamais vous avez besoin de copier ou de déplacer [couper et coller] tout un ensemble d’éléments, il s’agit d’une bonne technique à connaître.)
- Cliquez sur l’élément Set Priority to Sev2 (Définir la priorité sur Grav2).
- Cliquez sur Copy Element (Copier l’élément).
- Sous Severity 3 (Gravité 0), survolez
et cliquez sur
.
- Cliquez sur Paste 1 Element (Coller 1 élément).
- Cliquez sur le nouvel élément et sélectionnez Edit Element (Modifier l’élément).
- Modifiez l’étiquette en
Set Priority to Sev3
(Définir la priorité sur Grav3).
- Dans API Name (Nom d’API), changez la valeur existante en
Set_Priority_to_Sev3
(Définir_la_priorité_sur_Grav3). - Remplacez la valeur du champ par Severity 3 (Gravité 3).
- Enregistrez le flux.
Sur la zone de dessin, votre flux devrait ressembler à ceci.
Lorsque le flux emprunte un chemin correspondant à un résultat spécifique, il exécute uniquement l’élément Update Records (Mettre à jour les enregistrements) figurant dans ce chemin.