Utiliser les champs de fusion dans les modèles
Les champs de fusion personnalisent un même modèle pour chaque client. Insérez un espace réservé comme {{FirstName}} dans le Corps du modèle : au moment de l’envoi, REDA Connect consulte l’enregistrement associé au message et remplace cet espace réservé par sa valeur. Cet article présente la syntaxe, les deux paramètres nécessaires et l’erreur de configuration la plus fréquente.
- Vous devez savoir créer un modèle : voir Créer un modèle.
- Préparez les noms API de l’objet et des champs à fusionner. Vous les trouverez dans Configuration → Gestionnaire d’objet → (votre objet) → Champs et relations. Les noms API doivent être exacts :
FirstName, et nonFirst Name.
La syntaxe : un chemin de champ entre doubles accolades
Un champ de fusion est un chemin de champ interprété à partir de l’Objet applicable du modèle :
{{<Field API Name>}} — champ de l’Objet applicable
{{<Relationship Name>.<Field API Name>}} — champ d’un enregistrement lié
Par exemple, pour un modèle Contact : Bonjour {{FirstName}}, votre solde est de {{Outstanding_Balance__c}}. Le chemin commence directement par le champ, puisque l’Objet applicable indique déjà l’objet auquel il appartient.
Trois différences avec d’autres outils Salesforce sont à connaître :
- Utilisez des doubles accolades, pas
{!...}. REDA Connect n’utilise pas la syntaxe de formule{!Object.Field}des modèles d’e-mail et boutons Salesforce. Ici,{!FirstName}est du texte ordinaire, envoyé tel quel au client. - Ne préfixez pas le champ par le nom de son propre objet. Écrire
{{Lead.FirstName}}sur un modèle Lead peut sembler naturel, mais REDA Connect interprète la partie avant le premier point comme une relation à parcourir. Une Piste n’a pas de relation nommée « Lead ». Le test échoue avec :Invalid relationship Lead for Lead. Sur ce modèle, utilisez simplement{{FirstName}}. - Accédez aux enregistrements liés par le nom de la relation, comme en SOQL :
{{Owner.Name}}reprend le nom du propriétaire ; sur un modèleOpportunity,{{Account.Name}}suit la relation Account de l’Opportunité pour reprendre le nom du compte.
L’aide du produit limite les champs relationnels pris en charge aux valeurs textuelles. Le moteur convertit les valeurs des chemins relationnels en texte sans appliquer le traitement de format des champs directs. Pour un nombre, une date ou une case à cocher liés, ne présumez donc pas du format : exposez la valeur sur l’Objet applicable ou testez soigneusement le rendu avec vos données.
Les deux paramètres nécessaires à la fusion
- Objet applicable — renseignez le nom API exact de l’objet auquel appartiennent les champs. Enregistrer un modèle avec la fusion cochée et sans cet objet déclenche l’erreur :
Si des champs de fusion sont présents dans le corps du modèle, l'« Objet applicable » doit être renseigné. - Champ(s) de fusion — cette case active la fusion. Elle se coche manuellement : c’est le piège décrit ci-dessous.
{{...}} du corps. Si vous insérez des champs mais laissez Champ(s) de fusion décoché, le modèle est traité comme du texte simple : le client reçoit les espaces réservés bruts, par exemple « Bonjour {{FirstName}}, votre solde est de... ». De plus, le test ne détecte pas cet oubli : sans cette case, il traite le corps comme du texte simple, peut réussir et permettre l’activation. Le contrôle essentiel est donc le suivant : si le corps contient {{, cochez Champ(s) de fusion avant d’enregistrer.
{{FirstName2}}, {{Owner.Name}} et {{Owner.Phone}}. Champ(s) de fusion est coché et l’Objet applicable définit le point de départ des chemins. Les noms montrés sur la capture sont des exemples à vérifier dans votre propre organisation.Rendu des valeurs
| Situation | Ce que voit le client |
|---|---|
| Le champ contient une valeur | La valeur remplace l’espace réservé |
| Le champ est vide sur l’enregistrement | Un espace simple : le message reste envoyé, avec un petit vide à la place de la valeur, sans erreur ni avertissement de champ vide |
| Champ Date | Format défini dans Format de date, ou valeur par défaut de l’organisation (EEE, d MMM,yy dans la configuration fournie) |
| Champ Date/heure | Format défini dans Format date/heure, ou valeur par défaut de l’organisation (d MMM,yy h:mm aaa dans la configuration fournie) |
Comme un champ vide devient silencieusement un espace, les champs facultatifs peuvent produire des phrases maladroites, par exemple « Bonjour , votre... ». Utilisez des champs que votre processus garantit renseignés, ou rédigez la phrase pour qu’une valeur manquante reste naturelle.
Exemple complet : trois champs de fusion
Modèle avec l’Objet applicable Contact et Champ(s) de fusion coché :
Bonjour {{FirstName}}, merci de votre visite chez {{Account.Name}}.
Votre conseiller {{Owner.Name}} vous appellera sous un jour ouvré.
{{FirstName}} est un champ du Contact ; {{Account.Name}} et {{Owner.Name}} suivent ses relations Account et Owner.
Envoi pour le contact Maria Silva, du compte Acme Rentals, dont le propriétaire est Alex Chen :
Bonjour Maria, merci de votre visite chez Acme Rentals.
Votre conseiller Alex Chen vous appellera sous un jour ouvré.
Envoi pour un contact dont FirstName est vide :
Bonjour , merci de votre visite chez Acme Rentals.
Votre conseiller Alex Chen vous appellera sous un jour ouvré.
Remarquez l’espace après « Bonjour » : c’est le comportement des valeurs vides décrit ci-dessus.
{{FirstName}} a été remplacé par Maya. Le test a utilisé la Piste dont l’ID à 18 caractères a été collé dans Fusionner l'identifiant d'enregistrement, et Test du modèle réussi apparaît au-dessus du message fusionné.Le test d’un modèle avec fusion nécessite un enregistrement
Lorsque vous lancez Tester le modèle avec des champs de fusion, le texte suivant demande un enregistrement : Veuillez fournir un identifiant d'enregistrement de 18 caractères de l'objet concerné pour tester le modèle. Copiez l’ID à 18 caractères d’un enregistrement de l’Objet applicable depuis son URL. Un ID appartenant à un autre objet provoque l’erreur Les paramètres d'entrée fournis sont invalides. Voir la procédure complète dans Tester et activer un modèle.
Résoudre les problèmes
| Symptôme | Cause | Solution |
|---|---|---|
Le client a reçu littéralement {{FirstName}} | Champ(s) de fusion était décoché | Désactivez le modèle, cochez la case, définissez l’Objet applicable, puis testez et activez à nouveau |
Le test échoue avec Invalid relationship Lead for Lead ou une erreur similaire | Le champ commence par le nom de son propre objet, par exemple {{Lead.FirstName}} sur un modèle Lead | Supprimez ce préfixe : {{FirstName}}. Seules de véritables relations précèdent le point |
Le test échoue avec Les paramètres d'entrée fournis sont invalides. | L’ID est absent ou appartient à un autre objet que l’Objet applicable | Testez avec un ID d’enregistrement de l’Objet applicable |
Le champ de message d’erreur de l’envoi indique 5. Erreur de modèle : Les paramètres d'entrée fournis sont invalides. | Le message a été créé sans enregistrement de l’Objet applicable à utiliser pour la fusion, ce qui arrive notamment dans les automatisations personnalisées | Vérifiez que les envois automatisés fournissent l’enregistrement utilisé par la fusion |
| La valeur est fusionnée, mais un vide inattendu apparaît dans la phrase | Le champ est vide sur cet enregistrement : il devient un espace simple | Renseignez le champ ou reformulez le modèle |
Le rendu est incorrect, ou l’envoi échoue, lorsqu’une valeur contient $ ou \ | Les caractères spéciaux dans la valeur fusionnée peuvent perturber la substitution | Évitez $ et \ dans les champs utilisés, ou testez avec des valeurs réalistes |
Questions fréquentes
Le modèle possède un seul Objet applicable, point de départ de tous les chemins. Vous pouvez accéder aux données liées par une relation à partir de cet objet, avec la limite de prise en charge textuelle indiquée dans l’aide, par exemple {{Account.Name}} sur un modèle Contact.
Utilisez-les principalement dans les corps Texte. Les modèles multimédias Image et Document contiennent l’adresse web d’un fichier : conservez une adresse valide et accessible, sans supposer qu’une personnalisation libre y soit appropriée.
Définissez Format de date et Format date/heure avec des motifs Java SimpleDateFormat, par exemple dd/MM/yyyy. Un champ vide utilise la valeur par défaut de l’organisation définie dans Paramètres globaux.
Vous pouvez modifier les libellés : la fusion utilise les noms API. Si le nom API change ou si le champ est supprimé, refaites le test pour détecter les erreurs d’analyse avant l’envoi aux clients.
Pour aller plus loin
- Tester et activer un modèle — tester chaque modèle avec fusion sur un enregistrement réel avant son utilisation.
- Créer un modèle — les autres champs du modèle.