Solutions Dynamics CRM 2011 et bonnes pratiques associées: Concepts clés

Ce billet ouvre une série d’articles permettant de comprendre le cycle de vie des solutions Dynamics CRM 2011. L’objectif de ce premier article est de présenter les concepts principaux de la gestion des solutions Dynamics CRM 2011 notamment :

  • Le package CRM conteneur des composants d'un projet de personnalisation 
  • Les couches créées lorsque nous installons ou modifions un package (ou un composant d’un package) 
  • Les propriétés gérées permettant de définir le périmètre de personnalisations autorisées sur les composants.

 

Packages CRM

 

Les packages CRM appelés plus communément solutions sont des conteneurs constitués de tous les éléments pouvant faire l'objet d'une personnalisation ou d'un processus de personnalisation. Une solution permet donc de déployer simultanément un ensemble de personnalisations qui étendent les fonctionnalités de base du produit.

Microsoft Dynamics CRM 2011 possède trois types de solutions :

Solution par défaut :

Lorsqu'une organisation CRM est créée, une solution contenant tous les composants du système est également créée. Il s'agit de la solution par défaut. Les composants standards peuvent être personnalisés dans la solution par défaut et de nouvelles entités ainsi que d’autres composants peuvent lui être ajoutés. La solution par défaut peut être exportée à partir de l'application, puis importée vers une autre organisation Microsoft Dynamics CRM.

Une solution peut exister dans l’état géré ou non géré.

Solution non gérée :

Lors de la création d’une solution celle-ci ne possède aucun composant et existe dans un état non gérée.

Lorsque l’on ajoute des composants existants à une solution, une nouvelle référence à ce composant est créée dans la solution.

Ce type de solution :

  • Ne contient que des configurations se trouvant dans la couche non gérée du système
  • Ne contiendra pas d'éléments dépendants
  • Ne s’importera que dans la couche non gérée
  • N’est adaptée qu’aux phases de développement
  • Tous les composants peuvent être modifiés
  • L’import remplace les configurations existantes
  • Contient une copie complète de tous ses composants

 Solution gérée :

Une solution gérée est créé par l’export d’une solution non gérée en mode gérée de l’environnement source, puis l’import de cette dernière dans l’organisation cible.

Les composants d'une solution gérée sont isolés du reste de l'organisation et ne peuvent être modifiés directement.

Ces différents types solutions contiennent différents composants regroupés en familles :       

 

Par ailleurs, le packaging des solutions standards ne permet pas d’inclure les éléments suivants : 

  • Les vues enregistrées des utilisateurs
  • Les règles de détection des doublons 
  • Les données de référence éventuelles 

 

Couches

 

Dynamics CRM 2011 stocke les personnalisations dans des couches de configuration tel que décrit ci-dessous.

La couche non gérée présente les caractéristiques suivantes :

  • Il existe une et une seule couche non gérée
  • Toutes les personnalisations faites sur un serveur et une organisation donnée seront présentes dans cette couche
  • Les « solutions » ne sont ici que des conteneurs :
    • Il n’y a pas d’inclusion de propriété d’un élément, uniquement des références à celui-ci
    • Il n’existe pas d’indépendance entre les solutions. Si un composant est présent dans deux solutions, les deux voient l’état courant du composant
  • Les nouvelles personnalisations effectuées surchargent toute configuration précédente (la couche non gérée recouvre toutes les couches)
  • Les configurations ne peuvent être annulées mais elles peuvent être supprimées     

          

Les couches gérées présentent les caractéristiques suivantes :

  • Créées que lors de l’import de solutions gérées
  • Peut en exister plusieurs
  • L’ordre des couches est déterminé par les dates et heures d’import
  • Peuvent être supprimées, remplacées. Supprimer une couche peut supprimer des données. En effet la suppression peut supprimer des composants de la solution ce qui provoquera la suppression des données stockées dans ces composants.

Exemple : Lors de la suppression de la solution 1 ci-dessous, l’ensemble des livres seront supprimés de l’environnement

 

  • La modification des composants dépendent des propriétés gérées appliquées à ce composant

 

Propriétés gérées

 

Lorsqu'une solution gérée est importée dans une organisation cible, les « propriétés gérées » configurées sur les composants deviennent actives. Les propriétés gérées permettent de limiter les personnalisations apportées aux composants ou d'en permettre davantage sur un environnement cible.

Les personnalisations d’entité pouvant être faites sont les suivantes :

  • Modification du nom d’affichage

  • Création de formulaires

  • Modification de nom d’affichage d’un champ 

Ces modifications sont stockées sur l’environnement cible dans la couche non gérée de Dynamics CRM 2011.

Exemple : La solution gérée contient une entité nommée « Client ».

 

La propriété « Nom d’affichage modifiable » est positionnée sur « Vrai », l'administrateur pourra donc modifier le nom de l’entité « Client » en « Portefeuille».

Dès lors que la solution a été installée une première fois avec une propriété gérée à « Vrai », elle ne pourra pas être positionnée sur « Faux » lors d'une prochaine installation.

  • La possibilité de configurer un composant géré ne peut pas être retirée ou désactivée lors d’une mise à jour de solution
  • La possibilité de configurer un composant peut être activée lors de la mise à jour d’une solution
  • Par défaut les possibilités de configuration sont positionnées sur « Vrai »

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Nous avons évoqué les concepts de base des solutions Dynamics CRM 2011, le prochain billet Stratégie de déploiement abordera l’impact lors de l’import, des solutions non gérées et gérées sur les composants. 

  Auteur : Victorine Lengue - Consultant Dynamics CRM