Infrastructure du modèle BDC
Dernière modification : mardi 27 juillet 2010
S’applique à : SharePoint Server 2010
Dans cet article
Que sont les métadonnées ?
Modèle de métadonnées BCS
Notions fondamentales relatives au modèle BDC
Meilleures pratiques
L’un des principaux objectifs des Service BDC (Business Data Connectivity) en matière de conception consiste à vous aider à exposer des données à partir de différents systèmes externes tels que CRM, ERP et bases de données dans des applications Microsoft Office 2010 et dans Microsoft SharePoint Server 2010 avec un minimum d’effort de codage. Pour atteindre cet objectif, le service BDC procure un accès homogène aux sources de données sous-jacentes par le biais d’un modèle de métadonnées BDC déclaratif qui fournit un modèle objet client simplifié et cohérent.
Dans ce modèle, les développeurs ou utilisateurs expérimentés entrent des informations concernant le système externe dans le catalogue de métadonnées au moyen d’outils tels que SharePoint Designer ou Visual Studio. Les utilisateurs, analystes d’entreprise et développeurs d’applications interagissent ensuite avec ce composant indirectement à l’aide du modèle objet et des fonctionnalités Microsoft Business Connectivity Services (BCS).
Cette section du SDK SharePoint 2010 montre la hiérarchie de relations contenant-contenu du modèle de métadonnées, décrit les membres et fournit des exemples d’utilisation des membres.
Que sont les métadonnées ?
Les métadonnées sont des données relatives aux API des systèmes externes. Pour chaque système externe, les métadonnées définissent les entités métier avec lesquelles l’application interagit et les méthodes disponibles dans cette application. Les utilisateurs avec pouvoir et les développeurs définissent les métadonnées à l’aide de SharePoint Designer ou Visual Studio. Le service BDC stocke les métadonnées dans le Magasin de métadonnées BDC.
Les métadonnées sont des données relatives au système externe, et non les données externes proprement dites. Celles-ci existent uniquement dans le système externe (bien qu’il existe une copie en cache dans le cache client BCS si des listes externes sont mises hors connexion).
Modèle de métadonnées BCS
Le modèle de métadonnées BDC (modèle BDC) est au cœur du service BDC. Les structures de données telles que Entity (type de contenu externe) et Method qui fournissent une abstraction des détails complexes relatifs à un système externe sont nommées collectivement MetadataObjects et composent le modèle BDC. Le modèle BDC d’un système externe est essentiellement un fichier XML. Il est généré automatiquement lorsque vous créez un type de contenu externe dans SharePoint Designer. Une fois que vous avez créé et téléchargé un modèle dans le magasin de métadonnées BDC sur le serveur SharePoint Server, les types de contenu externe définis dans le modèle peuvent être utilisés à tout moment dans SharePoint Server et dans les applications Microsoft Office (telles qu’Microsoft Outlook, Microsoft SharePoint Workspace et Microsoft Word) pour afficher des données externes contextuellement au moyen des fonctionnalités de présentation du service Business Connectivity Services et à l’aide de solutions personnalisées.
Le diagramme suivant montre la hiérarchie des objets de métadonnées.
Figure 1. Hiérarchie des objets de métadonnées
Vous pouvez examiner le modèle BDC à tout moment à l’aide de l’option Exporter de la page Service d’application BDC dans l’Administration centrale de SharePoint Server ou à l’aide de l’option Exporter pour un type de contenu externe dans SharePoint Designer.
LobSystem
Un LOBSystem représente un système logiciel ou service externe, constitué généralement d’une logique métier qui opère sur des données (qui peuvent se trouver dans un magasin relationnel ou tout autre support de stockage de données persistant). La logique métier est représentée à travers une façade d’API. Ces API définissent les opérations autorisées et les contraintes prédéfinies.
Dans un modèle BDC, un élément LobSystem contient généralement des informations sur la manière de se connecter à un Type de système externe spécifique, l’ensemble d’Entities (types de contenu externe) associées à ce système externe, ainsi qu’une définition de la manière d’exécuter des opérations sur le système externe et d’envelopper les valeurs qui en sont renvoyées.
LobSystemInstance
Un LobSystemInstance est une implémentation spécifique d’un LobSystem donné. Par exemple, un service Web qui décrit un WSDL spécifique est un LobSystem, bien que l’URL à laquelle il est hébergé soit une instance de ce LobSystem. Le concept de LobSystemInstance aide à modéliser plusieurs instances d’hébergement d’un objet LobSystem donné.
Entity
Une Entity (qui représente un type de contenu externe) décrit la structure d’une entité métier. Conceptuellement parlant, cette structure est mappée à des objets métier réels tels que des clients, des commandes et des opportunités. Une Entity correspond à un type de contenu externe dans Business Connectivity Services. Un type d’entité BDC se compose au moins d’une ou plusieurs méthodes. Les champs (appelés TypeDescriptors dans le modèle BDC) de l’entité sont définis par l’ensemble des types complexes renvoyés par une ou plusieurs méthodes de système externe. Ainsi, une entité BDC se compose d’un ensemble de méthodes et, au moment de l’exécution, la structure de cette instance d’entité est déterminée à partir des valeurs renvoyées par les méthodes principales. Dans la plupart des cas, un type d’entité a une identité (ensemble de scalaires dont les valeurs identifient de manière unique l’instance d’entité au sein d’une collection d’instances d’entités. Chaque valeur scalaire qui fait partie de l’identité de l’entité porte le nom d’Identifier. Les champs d’une entité peuvent être des types simples ou complexes. Un SimpleType représente des types scalaires (ou atomiques) (par exemple, integer, string), tandis qu’un ComplexType représente des champs structurés (par exemple une adresse). Un ComplexType se compose de zéro champ ou plus, qui peuvent être des types complexes ou des scalaires. À chaque niveau d’objet de métadonnées BDC, les propriétés personnalisées sont prises en charge ; chaque propriété est composée de paires nom/valeur que les applications peuvent utiliser pour étendre le modèle.
Methods et MethodInstances
Les Methods dans le modèle de métadonnées sont des descriptions abstraites d’API principales. Il s’agit d’éléments non exécutables, alors que les MethodInstances représentent des instances exécutables de Methods. Le service BDC prend des valeurs par défaut définies dans le modèle et des entrées appropriées en provenance de l’application au moment de l’exécution, détermine l’API principale en fonction de la Method et de la MethodInstance, puis l’exécute. Les MethodInstances sont stéréotypées à une opération BDC prédéfinie telle que Create, Update, ReadSingle (appelé SpecificFinder), ReadMultiple (appelé Finder), Delete, et ainsi de suite. 20 stéréotypes sont définies par le service BDC. Tous sont basés sur des modèles de mutation de données bien connus utilisés dans des systèmes tels que des bases de données et des services Web. La fonction principale des stéréotypes consiste à fournir une interface d’accès aux données neutre du point de vue du domaine et du système principal utilisable par des personnes n’ayant pas connaissance du fonctionnement détaillé des systèmes principaux. L’utilisation de valeurs par défaut et de stéréotypes permet de simplifier l’appel à des API principales riches et complexes pour un travailleur de l’information ordinaire qui ne souhaite pas entrer dans les détails des systèmes complexes.
Associations
Les Associations dans le service BDC représentent des relations entre des entités (types de contenu externe). Cependant, l’objectif du service BDC étant de fournir une interface uniforme sur différents types de systèmes externes, une Association ne peut pas être modélisée comme une relation de base de données relationnelle. Une Association dans le service BDC pointe vers une certaine logique métier (ou une API) sur le système principal qui prend un ensemble d’instances d’entités et renvoie un ensemble d’instances d’un autre type d’entité. Contrairement aux bases de données relationnelles, le service BDC n’est pas en mesure de garantir l’intégrité référentielle car il ne contrôle pas la logique relationnelle, qui est contrôlée de manière explicite par le système externe.
Notions fondamentales relatives au modèle BDC
Explorez les rubriques suivantes de cette section pour découvrir les notions fondamentales concernant les modèles BDC.
Signatures de méthode recommandées pour les opérations stéréotypées
Types de filtres pris en charge par le service Business Data Connectivity
Meilleures pratiques
Les métadonnées stockées dans le Magasin de métadonnées dans Microsoft SharePoint Server 2010 décrivent la structure d’un système externe. Les métadonnées sont accessibles à tout le monde afin d’activer la découverte et la connexion à un système externe. Les métadonnées étant destinées à une consommation générale et pouvant être téléchargées à partir de SharePoint Server et archivées sur des ordinateurs clients, il est préférable de limiter la quantité d’informations qu’elles contiennent. Par exemple, il vaut mieux éviter d’utiliser des instructions SQL inline dans les métadonnées pour les systèmes de bases de données externes car elles risquent de fournir des informations concernant la structure de la base de données. Au lieu de cela, il est préférable que les métadonnées des systèmes de bases de données externes utilisent des procédures stockées.