Qu’est-ce qu’un attribut ? Un attribut dans Microsoft CRM peut être vu comme un champ (« field ») dans Microsoft Access ou SQL Server.
Figure 1 : Bases de données de Microsoft CRM
En effet, lors de la création d’un nouvel attribut, Microsoft CRM va réellement créer un nouveau champ dans la table correspondante à l’entité modifiée (une entité = un objet au sens POO ou une table au sens base de données).
Voyons de plus près comment cela se présente dans SQL Server : lors de l’installation de Microsoft CRM, le programme d’installation vous demande le nom de la société (de l’organisation) ; ce nom est utilisé lors de la création des 2 bases de données utilisées par Microsoft CRM (il est utilisé comme préfixe dans le nom complet de chacune des bases de données) comme on peut le voir sur la figure 1 (dans notre exemple, l’organisation s’appelle TEST).
A quoi correspondent ces 2 bases de données et quels sont leur rôle respectif ?
Il faut savoir que Microsoft CRM 3.0 est une plateforme autant qu’un produit ; ainsi, étant donné que chaque société a son propre mode de fonctionnement, Microsoft a décidé de créer une plateforme pouvant être « customisable » afin de s’adapter aux besoins de chaque société, quel que soit son business.
Dès lors, Microsoft a du, très tôt (dès la version 1.0), réfléchir à l’architecture de cette plateforme afin de garantir une grande souplesse de customisation : c’est le rôle de la « metabase » (Microsoft CRM est donc, fort logiquement, appelé application de métadonnées (« metadata »).
La metabase est une couche logicielle placée entre la couche présentation (les écrans) et la couche de données (les données encodées se trouvant dans la base de données XX_MSCRM).
Figure 2 : Architecture en couches
Prenons un schéma pour mieux comprendre cette architecture en couches :
A quoi sert une couche de métadonnées ? Cette couche sert essentiellement de s’affranchir de toute modification faite à la couche des données. Ainsi, si on ajoute un nouveau champ à une des tables dans la couche des données (représentée par la base de données XX_MSCRM), l’application continuera à fonctionner sans problèmes grâce à la couche des métadonnées (c’est elle qui « guide » l’affichage dans la couche présentation).
Définition : métadonnée = description de la structure des données.
A bientôt pour plus de choses !
Olivier