Reconstruction automatique du champ fullname des contacts de Dynamics CRM
La problématique
Dans Dynamics CRM, l’entité Contact comprend un champ nommé Nom complet représentant (comme son nom l’indique) le nom complet du contact, c’est-à-dire à la fois son prénom et son nom. Plusieurs formats sont disponibles et configurables dans la zone Paramètres > Administration > Paramètres du système par un administrateur CRM. Ainsi, il est possible de paramétrer le nom complet d’un certain Jean Dupont en “Jean Dupont” ou “Dupont Jean” ou encore “Dupont, Jean” etc…
En base, l’attribut fullname de l’entité Contact est tout simplement calculé automatiquement par le système, en concaténant les attributs firstname et lastname, selon le format choisi par l’administrateur CRM.
Le problème est que, si le format du nom complet est modifié en cours de production, seuls les nouveaux contacts insérés dans CRM auront le nouveau format défini. Tous les contacts existant conservent l’ancien format.
Ce cas se produit malheureusement fréquemment et l’on se demande comment reconfigurer l’ensemble des contacts avec le même format de nom complet pour tous.
Proposition de solution
La solution repose sur la mise à jour du prénom ou nom de tous les contacts pour provoquer le rafraichissement du nom complet sur la base du nouveau format défini. Malheureusement une telle opération manuellement n’est pas envisageable sur un volume important de contacts.
Une solution simple (que m’a soufflée Tanguy Touzard (MVP CRM) aujourd’hui à l’occasion des Techdays 2011 à Genève où nous animions ensemble une session sur l’intégration de CRM 2011 et Azure) est de provoquer la mise à jour à l’aide d’un workflow.
Le principe est le suivant :
-
créer un workflow basé sur un objet de type Contact.
-
configurer le workflow pour pouvoir le déclencher manuellement (coche “A la demande”).
-
ajouter une action de mise à jour de l'enregistrement. Configurer l’enregistrement, à l’aide des valeurs dynamiques pour que le champ “Nom” soit mis à jour avec la valeur actuelle du “Nom”, et que le champ “Prénom” soit mis à jour avec celle du “Prénom”. Cela revient à remettre les mêmes valeurs dans les deux champs, donc à ne pas réellement les modifier, mais ce qui est intéressant ici c’est que CRM prendra cela tout de même pour une modification et déclenchera ainsi le re-calcul du nom complet.


Remarque :
Si vous déclenchez le workflow à partir de la liste des contacts, vous aurez la mauvaise surprise de devoir effectuer l’opération par page d’enregistrements. Or dans CRM, le maximum d’enregistrements par page qu’il est possible de configurer est 250 seulement. Si vous avez plusieurs milliers d’enregistrement, c’est un peu gênant…
Vous trouverez une idée pour palier à cet inconvénient sur ce poste :
http://blogs.developpeur.org/cdubois/archive/2011/04/05/comment-augmenter-le-nombre-d-enregistrements-affich-s-par-page-dans-une-liste-dynamics-crm.aspx
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :