Composants Screen Flow
À partir de la version 1.45, DQE One for Salesforce propose un ensemble de composants Aura spécialement conçus pour être utilisés dans les Screen Flows.
Ces composants effectuent des appels API en temps réel pour la validation des adresses postales, des adresses email et des numéros de téléphone.
Du point de vue de l'utilisation, ils se comportent comme des composants de champ Flow standards et sont disponibles dans la section Custom de la palette de composants Flow.
Ajoutez ces composants à votre Screen Flow de la même manière que des champs de saisie standards, puis liez leurs valeurs de sortie à des variables Flow afin de récupérer les informations souhaitées.
Address Lookup
Attributs :
- API Name : identifiant unique parmi les variables Flow
- Label : libellé affiché au-dessus du champ
- Street Value : variable de sortie pour Street
- City Value : variable de sortie pour City
- Country Value : variable de sortie pour Country
- Country Options : liste d'options au format JSON, par exemple : [{'label': 'United States', 'value': 'US'}]
- Postal Code Value : variable de sortie pour Postal Code
- State or Province Value : variable de sortie pour State
- Latitude Value : variable de sortie pour Latitude
- Longitude Value : variable de sortie pour Longitude
- Status Code : code de statut de l'API après validation
- Disabled : empêche les mises à jour manuelles dans le champ de saisie
- Required : affiche le champ comme obligatoire
Paramètres globaux hérités du custom setting DQE Address Setup :
- Default Country
- Autofill Address Complement : indique s'il faut insérer des informations d'adresse complémentaires dans le champ street
- Autofill Geolocation Info : insère les valeurs de latitude et de longitude
Email Lookup
Attributs :
- API Name : identifiant unique parmi les variables Flow
- Label : libellé affiché au-dessus du champ
- StatusCode : code de statut de l'API après validation
- Value : valeur saisie
- Placeholder Text : affiché dans le champ de saisie s'il est vide
- Required : affiche l'icône obligatoire à côté du champ de saisie
- Disabled : empêche la saisie manuelle dans le champ
Paramètres globaux hérités du custom setting DQE Email Setup :
- Suggest Username : la suggestion s'applique uniquement au domaine de l'email
- Code : Blacklisted Domain
- Code : Domain Throwable
- Code : Inbox Full
- Code : Invalid Email
- Code : Syntax Error
- Code : Unauthorized Username
- Code : Unknown Domain
- Code : User Not Verified
- Code : Valid Email
- Accept Extended Syntax
Phone Lookup
Attributs :
- API Name : identifiant unique parmi les variables Flow
- Label : libellé affiché au-dessus du champ
- StatusCode : code de statut de l'API après validation
- Value : valeur saisie
- Country Code : code ISO du pays (ISO-2)
- Placeholder Text : affiché dans le champ de saisie s'il est vide
- Required : affiche l'icône obligatoire à côté du champ de saisie
- Disabled : empêche la saisie manuelle dans le champ
Paramètres globaux hérités du custom setting DQE Phone Setup :
- Display Country Selector
- Code : Phone is Invalid
- Code : Phone is Valid
- Output Format
Actions invocables Flow
Toutes ces actions invocables doivent être exécutées de manière asynchrone, car elles effectuent des callouts vers les API DQE.
Par conséquent, chaque appel doit être exécuté dans une transaction distincte. Sinon, vous rencontrerez une exception indiquant qu'un traitement est toujours en attente et que le callout ne peut pas être effectué.
Une fois la réponse reçue, le code de statut est stocké dans le champ mappé dans le custom setting correspondant, de la même manière que lors de l'utilisation d'un composant DQE Form pour créer ou mettre à jour un enregistrement.
Prérequis
La liste suivante présente les exigences générales et recommandations de la documentation Salesforce concernant les actions invocables et leur utilisation.
Validation d'adresse postale
Cette classe Apex invocable permet de valider une adresse postale.
Custom setting associé : DQE Address Setup
Paramètres
Type : List<String>
Paramètres :
- RecordId (String) : ID de l'enregistrement
- FieldNameAPI (String) : nom du champ d'adresse
Exemple :
Pour un enregistrement Account : ("001KG00000Mi2khYAB", "BillingAddress")
Validation d'email
Cette classe Apex invocable permet de vérifier une adresse email.
Custom setting associé : DQE Email Setup
Paramètres
Type : List<String>
Paramètres :
- RecordId (String) : ID de l'enregistrement
- FieldNameAPI (String) : nom du champ email
Exemple :
Pour un enregistrement Lead : ("00QKG000001RLeL2AW", "Email")
Validation de téléphone
Cette classe Apex invocable permet de vérifier un numéro de téléphone.
Custom setting associé : DQE Phone Setup
Paramètres
Type : List<String>
Paramètres :
- RecordId (String) : ID de l'enregistrement
- FieldNameAPI (String) : nom du champ téléphone
- CountryCode (String) : code pays (ISO2 ou ISO3) à utiliser pour la recherche
Exemple :
Pour un enregistrement Account : ("001KG00000Mi2khYAB", "Phone", "USA")
Exemple étape par étape
Étape 1 : définition du Record-Triggered Flow
- Sélectionnez le SObject.
- Sélectionnez l'événement déclencheur.
- Sélectionnez l'optimisation Actions and Related Records.
- Créez un scheduled path. Ceci est nécessaire en raison du callout effectué par l'action Apex.
Vous devriez obtenir une structure de flow telle que :
Étape 2 : paramètres
- Définissez une variable de flow, par exemple params.
Attention : définissez-la comme une collection.
- Créez une variable nommée targetField.
- Affectez-lui l'ID de l'enregistrement, le nom du SObject et le nom API du champ.
Exemple complet étape par étape : Screen Flow et actions invocables
Diagramme de flow pour la validation d'adresse
Étape par étape
- Créez un Picklist Choice Set.
- Créez un Screen Flow pour la picklist des pays.
- Créez la variable Address_Status pour stocker le code qualité de l'adresse.
- Créez un Screen Flow où vous pouvez afficher tous les champs nécessaires à la création de votre futur enregistrement.
Dans ce scénario, l'action invocable DQE Address Check est également utilisée après la création de l'enregistrement.
Data binding :
L'idée principale est de mapper les attributs du composant DQE Address Field au champ Address standard. Dans cet exemple, ils sont nommés :
- DQE_Address
- AddressField
Cela donne le mapping suivant.
- Créez la variable CityValue.
- Créez Check Manual Input.
Même si le mapping effectué à l'étape précédente semble bidirectionnel, une mise à jour manuelle dans le composant AddressField ne mettra pas à jour la valeur dans le composant DQE_Address.
Cela permet de vérifier si une saisie manuelle a eu lieu après que DQE a complété les informations.
- Créez l'assignment Reset Quality Code.
- Créez la variable Type Record Object.
- Créez l'assignment Set Fields.
- Créez un composant Create a record.
- Créez une decision nommée Check if address has status code.
- Créez la variable params.
- Créez l'assignment Set API parameters.
- Appelez l'action invocable.
Associé à