Conception de critères de Process Builder pour gérer les types d’enregistrement avec d’anciennes données3 minutes de lecture
Je n’ai pas blogué depuis toujours… J’ai une excuse. Elle est là:
Ma belle fille, Teagan Elizabeth Goerke
Je devais vous donner à tous une bonne raison de m’absenter si longtemps. Maintenant que les choses mignonnes sont terminées, passons aux choses sérieuses. Business Process Builder qui est.
J’ai récemment rencontré ce scénario et vous pourriez le rencontrer aussi. Je vais vous expliquer comment y remédier.
Scénario commercial: Les anciens enregistrements n’ont aucun type d’enregistrement associé, mais les enregistrements plus récents ont un type d’enregistrement attribué
Erreur: Le processus échoue avec «Le flux n’a pas pu accéder à la valeur pour [example] car il n’a pas été défini ni attribué. »
L’erreur la plus pertinente dans notre scénario est la suivante:
Élément d’erreur myDecision (FlowDecision).
le couler n’a pas pu accéder à la valeur pour myVariable_current.RecordType.Name car il n’a pas été défini ni attribué.
Lorsque les enregistrements n’ont pas de type d’enregistrement, ils le font techniquement. Il s’appelle le type d’enregistrement principal et chaque objet en reçoit un lors de sa création, même les objets standard. Vous ne pouvez tout simplement pas le voir. Il est donc étrange que cette erreur se produise avec ce scénario. Je l’attendrais si nous travaillions avec une variable de recherche qui n’était pas nécessaire. Mais je ne m’y attendais pas pour Record Type. Mais il semble que Process Builder ne puisse pas non plus voir le type d’enregistrement principal. Dommage.
Nous avons deux correctifs:
- Mettre à jour tous nos enregistrements avec un type d’enregistrement – Un peu peu pratique dans certaines situations
- Concevez notre Process Builder pour qu’il fonctionne avec des types d’enregistrements vierges – Beaucoup plus pratique
Je vais me concentrer sur le n ° 2.
Vous devriez lire cet article car il décrit le correctif: https://help.salesforce.com/articleView?id=Process-fails-with-The-flow-failed-to-access-the-value-for-example-because-it-hasn-t-been-set- ou-assigné & language = en_US & type = 1
Mais voici un aperçu:
Aucun type d’enregistrement
Maintenant notre processus
Dans notre première conception, nous n’acceptons que le type d’enregistrement:
Mais cette conception provoquera des erreurs pour les types d’enregistrements vides.
Une meilleure conception consiste à rechercher d’abord un type d’enregistrement vierge ainsi qu’un type d’enregistrement spécifique. Comme ça:
Il est important de noter que vous devez toujours placer l’étape de critères de type d’enregistrement vide comme toujours avant toute évaluation de critères de type d’enregistrement supplémentaire par rapport à d’autres valeurs. Il n’est pas nécessaire que ce soit le premier, mais ce doit être avant toutes les autres références de type d’enregistrement.
En tant que meilleure pratique du point de vue de la conception, si votre objet contient des enregistrements avec des types d’enregistrement vides, vous devez créer vos processus pour accueillir ces enregistrements ou vos utilisateurs obtiendront des erreurs et personne n’aime les erreurs de flux.