Dans l'article précédent Nouveautés Microsoft Dynamics CRM 2016 : Gestion de Solution 1/2, nous avons
commencé la présentation des nouveautés Microsoft Dynamics CRM 2016 concernant
la gestion de solution. Nous avons notamment détaillé la façon avec laquelle les
solutions peuvent être créées et la capacité d'embarquer des sous-composants
d'une entité dans une solution et non l'entité au complet. Dans cette seconde
partie, je vous propose de découvrir les autres nouveautés apportées aux
solutions, et comment grâce à ces dernières nous pourrons gérer de manière
efficace les différents scénarii de livraison de solution.
Pour vous présenter ces nouveautés, rien de mieux qu'un
exemple concret qui couvre les différents scénarii possibles de livraisons de
solution dans la vie d'un projet CRM.
Pour réaliser cet exemple, nous allons avoir besoin de
deux environnements Microsoft Dynamics CRM 2016 :
§
Environnement de développement : qui va servir pour
préparer les solutions
§
Environnement de recette : qui va servir à organiser
la destination pour nos solutions.
Tout d'abord, nous allons créer une nouvelle solution
avec le nom "Solution_CRM" sur l'environnement de développement. Cette
solution contiendra les deux entités standard Compte et Contact :
Etape 1 : Livraison de la solution
initiale
La première étape consiste tout simplement à livrer la
solution "Solution_CRM" vers l'environnement de recette du client.
Pour cela, rien de compliqué, il suffit de suivre les étapes classiques pour
exporter et importer une solution. Dans cet exemple nous livrons les solutions
en mode géré.
Maintenant, l'environnement de recette est installé,
le client peut réaliser ses tests et nous remonter ses remarques et
commentaires
Dans notre exemple, le client a effectivement testé et
il a malheureusement détecté un bug. Il voudrait que le champ "accountnumber"
de l'entité Compte soit nommé "Identifiant du compte" au lieu de
"Numéro de compte" et que le nombre de caractères maximum du même
champ soit à 10 et non pas à 20.
Je me suis trompé dans ma première livraison, je dois
donc corriger et livrer rapidement le correctif au client.
Comment dois-je procéder ?
Etape 2 : Livraison des corrections
Pour corriger ce bug, nous allons créer une solution
Patch qui n'inclura que le composant qui pose problème. Ceci est aujourd'hui
possible grâce à la nouvelle version de Microsoft Dynamics CRM qui nous donne
la possibilité de choisir les sous-composants de l'entité à intégrer dans une
solution (pour plus de détails, voir l’article Nouveautés Microsoft Dynamics CRM 2016 : Gestion de Solution 1/2). Pour ce faire,
il suffit de sélectionner la solution "Solution_CRM", puis de cliquer
sur le nouveau bouton "Cloner correctif". La fenêtre ci-dessous apparait :
Le Framework de
solution CRM va donc créer une solution de correctif avec le même nom et
éditeur de la solution existante, et il va incrémenter le numéro de la version
de 1.1.0.0 à 1.1.1.0.
La solution créée ne contient aucun élément, nous
allons donc y inclure le champ "accountnumber". Pour cela, je
sélectionne l'entité Compte, puis dans l'onglet Champs, je choisie l'attribut
"accountnumber".
Comme vous pouvez le constater ci-dessous notre
solution ne contient plus que le champ "accountnumber".
Maintenant, nous allons donc pouvoir ouvrir les
propriétés de ce champ, et appliquer les modifications demandées par notre
client.
Une fois les modifications apportées, nous allons
exporter notre solution Patch afin de l'importer ensuite sur l’environnement de
recette du client en suivant les étapes classiques, sans oublier de publier les
modifications.
Après import, la solution Patch reste lisible dans la
liste des solutions en tant que Patch de la solution précédente.
L’installation de cette solution a permis de changer
les propriétés du champ "Numéro de compte" uniquement.
Nous avons donc pu prendre en compte rapidement la
correction de ce bug et déployer la correction sans impacter les autres
composants de la même entité.
Après quelques jours, notre client a fait une nouvelle
demande d'évolution. Il souhaite ajouter une nouvelle entité pour gérer son
catalogue de Formations.
Comment dois-je procéder ?
Etape 3 : Livraison des évolutions
Pour
intégrer des nouvelles fonctionnalités à la solution existante, nous allons
utiliser la nouvelle fonction de Microsoft Dynamics CRM 2016 qui permet de
créer une version mineur/majeur (en fonction des évolutions à apporter) de la
solution existante. Pour cela, nous allons simplement sélectionner la solution
existante 1.1.0.0 et cliquer sur le nouveau bouton "Cloner la
solution".
Le Framework de solution va alors cloner la solution
existante en gardant le même nom, le même éditeur et il va incrémenter le
numéro de version de 1.1.0.0 à 1.2.0.0.
À la fin de l'opération, nous remarquons que le
Framework de solution :
1.
N'a pas créé une nouvelle solution mais il a mis à
niveau la solution existante
2.
A supprimé la solution Patch
La solution mise à niveau 1.2.0.0 se compose des deux
entités Contact et Compte et des correctifs qui ont été apportés dans la
solution Patch supprimée.
Nous
pouvons désormais ajouter la nouvelle entité "Formation".
Ensuite, nous allons publier les modifications et
exporter notre solution.
De
l'autre côté, nous allons suivre la procédure standard pour importer cette
solution sur l'environnement de recette. Lors de l'importation, le Framework de
solution détecte qu’il s’agit de la mise à jour d’une solution déjà installée et
il indique qu’il va donc réaliser une phase de mise à niveau.
À la fin de l'import, nous allons avoir les lignes
suivantes dans la vue des solutions :
Le Framework de solution a conservé la solution
1.1.0.0, la solution Patch 1.1.1.0 et il a ajouté la solution de mise à niveau
1.2.0.0.
Dans les versions antérieures à Microsoft Dynamics CRM
2016, l'importation d'une solution avec un numéro de version supérieur remplace
la solution existante, ce qui ne permet pas de revenir en arrière dans le cas
où la version N+1 installée ne fonctionne pas correctement. Nous devions
désinstaller l'intégralité de la solution ou passer par une procédure de dé commissionnement complexe.
Aujourd'hui avec ces nouvelles améliorations, nous
pourrons revenir en arrière facilement et sans risque en désinstallant le Patch
ou la version N+1.
Maintenant que l'évolution est déployée sur
l'environnement de recette, le client peut réaliser sa recette.
Une fois
que le client nous aura validé le bon fonctionnement de la livraison, nous
pourrons nettoyer l'environnement de recette en appliquant la mise à niveau de
la solution. Pour cela, il faut toujours sélectionner la solution initiale
1.1.0.0, puis utiliser le nouveau bouton "Appliquer la mise à niveau de la
solution".
Suite à cette opération, le Framework de solution
va conserver la dernière solution installée (la version 1.2.0.0), et il va
supprimer toutes les autres solutions existantes ainsi que leurs dépendances
vers les composants CRM de la base de données CRM.
Et voilà, l'environnement de recette est dans son état
final avec une solution qui contient l'ensemble des composants livrés depuis le
début du projet et de leurs correctifs.
Pour résumer, grâce aux nouveautés Microsoft Dynamics
CRM 2016 concernant la gestion de solution présentées dans cet article, nous
avons la possibilité de :
§
Revenir en arrière dans le cas d’un problème suite à
une livraison ce qui n'était pas le cas jusqu'à présent.
§ Livrer
des correctifs ayant accès sur des sous composants de l'entité, plutôt que de
livrer l'entité au complet.
J’espère que cet article peut vous être utile.
Merci beaucoup d'avoir visité mon blog et à très bientôt
:)
Aucun commentaire:
Enregistrer un commentaire