Mercri d'activer JavaScript Tutoriel : Synchronisation des données Dynamics CRM dans Outlook

Tutoriel : synchronisation des données Dynamics CRM dans Outlook en mode déconnecté

Si vous (ou vos clients) avez Outlook et utilisez également la solution Microsoft Dynamics CRM cet article répondra peut être à une problématique que vous rencontrez. Comment synchroniser des données Dynamics CRM dans Outlook en mode déconnecté ? Notre équipe de dév vous propose ce tutoriel pour vous éclairer. 


Microsoft met à disposition avec Dynamics CRM, un composant Outlook permettant l’utilisation d’un mode déconnecté. Dans le cadre d’un projet Dynamics CRM 2016 chez un de nos client, nous avons rencontrés des difficultés de synchronisation dans Outlook lors du passage en mode déconnecté.

L’erreur suivante survenait :


Erreur de synchronisation des données Dynamics CRM dans Outlook en mode déconnecté

Notre premier réflexe a donc été d’aller consulter le journal des événements Windows :


Consultation du journal des événements sous Windows

On constate que l’erreur provient d’une donnée apparemment trop longue «The column is too long… » Afin d’avoir plus de détails, nous décidons d’activer les traces. Lors de l’installation du complément Dynamics CRM pour Outlook, deux utilitaires sont présents et installés sur la machine :

  • Config Wizard : permettant de gérer l’organisation
  • Diagnostics : permettant d’activer les traces, de réactiver le complément Outlook etc..

C’est ce dernier que nous allons utiliser.


Outil de diagnostique de Microsoft Dynamics CRM

Dans l’onglet Dépannage avancé, nous pouvons activer le Traçage et sélectionner le niveau de détail souhaité :


Dépannage avancé : activation des traces dans Dynamics CRM

L’activation des traces nous permet de disposer de fichier de logs présents ici : C:\Users\%username%\AppData\Local\Microsoft\MSCRM\Traces

Après études des traces, nous confirmons que nous avons bien un problème de données trop longue empêchant la synchronisation mais cela ne nous permet pas de déterminer le champ concerné. L’entité concernée par le problème possèdent beaucoup de champs et les logs ne permettent pas d’identifier clairement le responsable, nous commençons donc un travail de fourmi : extraction de la structure de la table du serveur SQL associé à Dynamics et comparaison avec la structure de la table contenu dans le serveur SQL Express local de la machine utilisant le complément Outlook.

> Nous ne constatons pas de différence expliquant le problème.

Nous décidons donc d’extraire à l’aide des outils de XRMToolBox les métadonnées associées à l’entité afin de les comparer à la structure de la table.

Là nous constatons des différences

Après quelques recherches supplémentaires, nous trouvons enfin l’explication. Sur l’entité concernée, un champ personnalisé a été ajouté : un champ simple de format : Texte avec une longueur maximale de 10.

En requêtant dans la table, nous nous apercevons que sur ce champ certaines valeurs dépassent la limite de 10 caractères. Au départ ce champ a été créé avec une longueur maximale de 20, puis cette longueur a été modifiée pour les besoins du projet. Dans la Base de données le champ est créé comme : nvarchar(20)

Ce qu’il faut savoir, c’est que lors d’une synchronisation avec le complément Outlook, celui-ci utilise les métadonnées pour valider les champs synchronisés. Or si des données ne sont pas conforme, la synchronisation n’aboutira pas.

La subtilité réside au final dans l’import des données : les données de l’entité concerné ont été importées via l’import standard dans Dynamics CRM, lors de l’import Dynamics se contente de valider les données en fonction des propriétés des champs définies dans la base de données et ne s’occupe pas des métadonnées et des limitations ajoutées.

L’import permet donc d’ajouter dans la base des valeurs supérieures à 10 caractères (dans notre cas) entraînant nos problèmes de synchronisation. Une remise au propre des valeurs en tenant compte des métadonnées à solutionnée nos problèmes.

 

N'hésitez pas à nous contacter pour échanger avec notre équipe sur vos problématiques Dynamics CRM.