Au cours des différents projets sur lesquels nous sommes amenés à intervenir, nous décelons parfois des pistes de gain de productivité en terme d'utilisation de Dynamics CRM.
Grâce aux fonctions offertes par le SDK et au potentiel du Framework.NET, il est très simple de réaliser des outils permettant d'automatiser des taches ou de se substituer à l'interface Web en proposant un client riche avec des fonctions spécifiques.
Voici donc une sélection d'outils réalisés pour des besoins récurrents :

Prenez le contrôle de vos déploiements de solutions CRM

Les opérations relatives à la gestion des solutions sont parfois longues et de ce fait le navigateur maintient le focus de manière à empêcher l'exécution d'autres opérations en parallèle. Cela peut être parfois handicapant lorsque l'on souhaite réaliser d'autres tâches extérieures à CRM pendant ce temps.
C'est pour cela que l'outil CRM Solution Management Tool a été développé afin d’offrir une interface spécifique à la gestion de solution en arrière-plan.
CRM Solution Management Tool propose les fonctionnalités suivantes :


Gestion de solution en arrière-plan : import, export, publication, et suppression

Suivi détaillé de la progression de l'import


Historique des déploiements de solution avec possibilité de télécharger les journaux au format Excel

 

Pour simplement contrôler la progression d'un déploiement de solution sur une organisation spécifique, par exemple lors d'une opération de build, il est également possible d'utiliser l'outil CRM Solution Import Status qui est une version allégée de CRM Solution Management Tool.Les binaires et code source CRM Solution Management Tool sont disponibles en téléchargement sur CodePlex : https://crmsolutionmgttool.codeplex.com/

Les binaires et code source CRM Solution Import Status sont disponibles en téléchargement sur CodePlex : https://solutionimportstatus.codeplex.com/

 

Gérez la sécurité de vos utilisateurs en un seul clic

Le contexte est le suivant : vous avez importé vous utilisateurs dans CRM par le biais du module d'import. Malheureusement, ils ne disposent pas, à ce stade, d'un accès à Dynamics CRM du fait qu'ils ne possèdent pas de rôle de sécurité associé.
Afin de réaliser cette opération de façon massive, l'outil CRM Bulk Security Manager vous offre la possibilité de définir simplement les associations entre chaque utilisateur et un rôle de sécurité spécifique au travers d'un fichier CSV exploitable sous Excel.

 

Note : Il est possible d'assigner plusieurs rôles à un seul utilisateur en ajoutant plusieurs lignes de rôle pour le même identifiant.

Puis de l'importer dans l'outil afin qu'il associe les rôles aux utilisateurs :

 

Les binaires et code source CRM Bulk Security Manager sont disponibles en téléchargement sur CodePlex : https://bulksecurityrolemgr.codeplex.com/

Simplifiez vos développements avec les classes d'entités Late Bound

L'approche de développement "Late Binding" permet la manipulation du modèle de données CRM avec ce type d'instructions :

var MonEntite = new Entity("NomLogique");
MonEntite["mon_attribut"];

Cette syntaxe présente plusieurs risques :

  • Si le développeur fait une faute de frappe, l'exécution du code échouera sans avertissement préalable.
  • Si le modèle de donnée évolue, il faudra effectuer des recherches manuelles pour repérer le dépendances présentes dans le code.

Pourtant le choix du Late Binding est recommandé pour des raisons de performances, en effet, en Early Binding le système opère des opérations de sérialisation / désérialisation à chaque requête.

L'outil CRM Model Generator offre la même approche que l'outil CrmSvcUtil.exe en interrogeant les WebServices de métadonnées de Dynamics CRM afin d'en extraire les classes de schéma.
Cela présente plusieurs avantages :

  • Travailler en Late Binding sur des informations fiables du modèle de données
    • Il est possible d'automatiser l'exécution de l'outil dans une tache planifiée pour disposer de classes d'entités à jour
  • Exploiter l'intellisense de Visual Studio pour l'utilisation des noms d'attributs
    • Les classes autogénérées prennent en compte toutes les informations des métadonnées afin de les présenter dans les signatures des propriétés des attributs
  • Faciliter la recherche de dépendances
  • Remonter des erreurs de compilation sur les changements de schéma
  • Garantir un code propre et fiable :)

En complément, CRM Model Generator est entièrement personnalisable, permettant ainsi de définir la mise en forme de vos classes d'entités.
Enfin il permet l'exportation de l'ensemble des informations du modèle de données au format CSV pour l'exploiter sous Excel.

Les binaires et code source CRM Model Generator sont disponibles en téléchargement sur CodePlex : https://crmmodelgenerator.codeplex.com/

Pour conclure, ces outils sont proposés à titre d'exemple de ce qui peut être réalisé facilement et rapidement grâce au Framework .NET et au SDK CRM afin d’accélérer vos développements et déploiements Dynamics CRM 2011. Au fil de vos projets, tirez parti de ces possibilités afin d'améliorer votre productivité sur Dynamics CRM !

 

Les équipes Microsoft Services se tiennent prêtes à vous accompagner tout au long de la mise en place de votre outil CRM. Pour en savoir plus, n'hésitez pas à nous contacter, via notre formulaire de contact ou à l'adresse servicesfr@microsoft.com.