Composants Screen Flow
Depuis la version 1.45, DQE One pour Salesforce fournit un ensemble de composants Aura spécialement conçus pour une utilisation dans les Screen Flows.
Ces composants implémentent 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 standard et sont disponibles dans la section Personnalisé (Custom) de la palette de composants du Flow.
Ajoutez ces composants à votre Screen Flow de la même manière que des champs de saisie standard, puis liez leurs valeurs de sortie à des variables du Flow afin de récupérer les informations nécessaires.
Address Lookup
Attributs :
- API Name : identifiant unique parmi les variables du Flow
- Label : libellé affiché au-dessus du champ
- Country Selector Label : libellé affiché au-dessus du sélecteur de pays
- Street Value : variable de sortie pour la rue
- City Value : variable de sortie pour la ville
- Country Value : variable de sortie pour le pays
- Country Options : liste d'options au format JSON, par exemple : [{'label': 'United States', 'value': 'US'}]
- Postal Code Value : variable de sortie pour le code postal
- State or Province Value : variable de sortie pour l'état/la région
- Latitude Value : variable de sortie pour la latitude
- Longitude Value : variable de sortie pour la longitude
- Status Code : code de statut API après validation
- Placeholder Text : texte affiché dans le champ de saisie de la rue lorsqu'il est vide
- Disabled : empêche les mises à jour manuelles dans le champ de saisie
- Required : affiche le champ comme obligatoire
Réglages globaux hérités du paramètre personnalisé DQE Address Setup :
- Default Country
- Autofill Address Complement : indique s'il faut insérer des informations complémentaires d'adresse dans le champ rue
- Autofill Geolocation Info : renseigne les valeurs de latitude et longitude
- Display Maps On Creation
- Display Maps On Edition
- Prevent Saving On
Email Lookup
Attributs :
- API Name : identifiant unique parmi les variables du Flow
- Label : libellé affiché au-dessus du champ
- StatusCode : code de statut API après validation
- Value : valeur saisie
- Placeholder Text : texte affiché dans le champ de saisie lorsqu'il est vide
- Required : affiche l'icône obligatoire à côté du champ de saisie
- Disabled : empêche la saisie manuelle dans le champ
Réglages globaux hérités du paramètre personnalisé 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
- Prevent Saving On
- Use default mapping
Phone Lookup
Attributs :
- API Name : identifiant unique parmi les variables du Flow
- Label : libellé affiché au-dessus du champ
- StatusCode : code de statut API après validation
- Value : valeur saisie
- Country Code : code ISO du pays (ISO-2)
- Placeholder Text : texte affiché dans le champ de saisie lorsqu'il est vide
- Required : affiche l'icône obligatoire à côté du champ de saisie
- Disabled : empêche la saisie manuelle dans le champ
Réglages globaux hérités du paramètre personnalisé DQE Phone Setup :
- Display Country Selector
- Code: Phone is Invalid
- Code: Phone is Valid
- Output Format
- Prevent Saving On
- Use default mapping
Actions invocables du Flow
Toutes ces actions invocables doivent être exécutées de manière asynchrone, car elles effectuent des appels (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 encore en attente et que l'appel ne peut pas être effectué.
Une fois la réponse reçue, le code de statut est stocké dans le champ mappé dans le paramètre personnalisé correspondant, de la même manière que lors de l'utilisation d'un composant DQE Form pour créer ou mettre à jour une fiche.
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.
Postal Address Validation
Cette classe Apex invocable permet de valider une adresse postale.
Paramètre personnalisé associé : DQE Address Setup
Paramètres
Type : List<String>
Paramètres :
- RecordId (String) : ID de la fiche
- FieldNameAPI (String) : nom du champ adresse
Exemple :
Pour une fiche Account : ("001KG00000Mi2khYAB", "BillingAddress")Email Validation
Cette classe Apex invocable permet de vérifier une adresse email.
Paramètre personnalisé associé : DQE Email Setup
Paramètres
Type : List<String>
Paramètres :
- RecordId (String) : ID de la fiche
- FieldNameAPI (String) : nom du champ email
Exemple :
Pour une fiche Lead : ("00QKG000001RLeL2AW", "Email")Phone Validation
Cette classe Apex invocable permet de vérifier un numéro de téléphone.
Paramètre personnalisé associé : DQE Phone Setup
Paramètres
Type : List<String>
Paramètres :
- RecordId (String) : ID de la fiche
- FieldNameAPI (String) : nom du champ téléphone
- CountryCode (String) : code pays (ISO2 ou ISO3) à utiliser pour la recherche
Exemple :
Pour une fiche 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 chemin planifié (scheduled path). Ceci est nécessaire à cause de l'appel (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 la fiche, 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 liste de sélection 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 future fiche.
Dans ce scénario, l'action invocable DQE Address Check est également utilisée après la création de la fiche.
Liaison des données (data binding) :
L'idée principale est de mapper les attributs du composant DQE Address Field au champ Adresse 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 vous permet de vérifier si une saisie manuelle a eu lieu après que DQE a complété l'information.
- Créez l'affectation Reset Quality Code.
- Créez la variable Type Record Object.
- Créez l'affectation Set Fields.
- Créez un composant Create a record.
- Créez une décision nommée Check if address has status code.
- Créez la variable params.
- Créez l'affectation Set API parameters.
- Appelez l'action invocable.
Associé à