Infrastruktur des BDC-Modells

Letzte Änderung: Dienstag, 27. Juli 2010

Gilt für: SharePoint Server 2010

Inhalt dieses Artikels
Was sind Metadaten?
BDC-Metadatenmodell
Grundlagen der BDC-Modelle
Bewährte Methoden

Ein wichtiges Entwurfsziel für den Business Data Connectivity-Dienst (BDC) ist die Möglichkeit der Bereitstellung von Daten aus verschiedenen externen Systemen wie z. B. CRM, ERP und Datenbanken in Microsoft Office 2010-Anwendungen und Microsoft SharePoint Server 2010 mit geringem Codierungsaufwand. Zu diesem Zweck ermöglicht BDC den homogenen Zugriff auf die zugrunde liegenden Datenquellen mittels eines deklarativen BDC-Metadatenmodells, mit dem ein einheitliches und vereinfachtes Clientobjektmodell bereitgestellt wird.

In diesem Modell geben erfahrene Benutzer oder Entwickler mithilfe von Tools wie z. B. SharePoint Designer oder Visual Studio Informationen zum externen System im Metadatenkatalog ein. Benutzer, Business Analysts und Anwendungsentwickler interagieren dann mithilfe der Microsoft Business Connectivity Services (BCS)-Features und des Objektmodells indirekt mit dieser Komponente.

Dieser Abschnitt des SharePoint 2010 SDK zeigt die Kapselungshierarchie des Metadatenmodells, beschreibt die Member und enthält Beispiele zur Verwendung der Member.

Was sind Metadaten?

Metadaten sind Daten zu den Anwendungsprogrammierschnittstellen (Application Programming Interfaces, APIs) der externen Systeme. Für jedes externe System definieren Metadaten die Geschäftsentitäten, mit der die Anwendung interagiert, und die in dieser Anwendung verfügbaren Methoden. Hauptbenutzer und Entwickler definieren Metadaten mithilfe von SharePoint Designer oder Visual Studio. BDC speichert die Metadaten im BDC-Metadatenspeicher.

Metadaten sind Daten zum externen System, nicht die externen Daten selbst. Externe Daten sind nur im externen System vorhanden (obwohl eine zwischengespeicherte Kopie im BCS-Clientcache vorhanden ist, falls externe Listen offline geschaltet werden).

BDC-Metadatenmodell

Das BDC-Metadatenmodell (BDC-Modell) ist die zentrale Komponente von BDC. Die Datenstrukturen wie z. B. Entity (externer Inhaltstyp) und Method, mit denen komplexe Details zu einem externen System abstrahiert werden, werden zusammen als MetadataObjects bezeichnet und stellen das BDC-Modell dar. Das BDC-Modell für ein externes System ist im Prinzip eine XML-Datei. Sie wird automatisch generiert, wenn Sie in SharePoint Designer einen externen Inhaltstyp erstellen. Nachdem Sie ein Modell erstellt und in den BDC-Metadatenspeicher auf dem Server mit SharePoint Server hochgeladen haben, können die im Modell definierten externen Inhaltstypen jederzeit in SharePoint Server und in Microsoft Office-Anwendungen (wie z. B. Microsoft Outlook, Microsoft SharePoint Workspace und Microsoft Word) verwendet werden, um externe Daten mit den Präsentationsfeatures von Business-Konnektivitätsdienste (Business Connectivity Services) und mit benutzerdefinierten Lösungen kontextbezogen anzuzeigen.

Im folgenden Diagramm ist die Hierarchie der Metadatenobjekte veranschaulicht.

Abbildung 1. Hierarchie von Metadatenobjekten

Hierarchie von Metadatenobjekten

Sie können das BDC-Modell jederzeit mithilfe der Option Exportieren auf der BDC-Anwendungsdienstseite in der SharePoint Server-Zentraladministration oder mithilfe der Option Exportieren für einen externen Inhaltstyp in SharePoint Designer anzeigen.

LobSystem

Ein LOBSystem stellt einen externen Dienst oder ein Softwaresystem dar, der bzw. das in der Regel aus Geschäftslogik für Daten besteht (Daten können in einem relationalen Speicher oder auf einem beliebigen anderen beständigen Datenspeichermedium vorhanden sein). Die Geschäftslogik wird durch eine Fassade von APIs dargestellt. Diese APIs definieren zulässige Vorgänge und vordefinierte Einschränkungen.

Bei einem BDC-Modell enthält in der Regel ein LobSystem-Element Informationen zum Herstellen einer Verbindung mit einem bestimmten Type von externem System, die Entities (externe Inhaltstypen) für dieses externe System sowie eine Definition zum Ausführen für das externe System und zum Umschließen der davon zurückgegebenen Werte.

LobSystemInstance

Eine LobSystemInstance ist eine spezielle Implementierung eines bestimmten LobSystem. Beispielsweise ist ein Webdienst, der eine bestimmte WSDL-Datei beschreibt, ein LobSystem, obwohl die URL, unter der er gehostet wird, eine Instanz von diesem LobSystem ist. Das LobSystemInstance-Konzept hilft beim Modellieren mehrerer Hostinginstanzen eines bestimmten LobSystem-Objekts.

Entity

Eine Entity (die einen externen Inhaltstyp darstellt) beschreibt die Struktur einer Geschäftsentität. Konzeptionell ist diese Struktur realen Geschäftsobjekten zugeordnet, wie z. B. Kunde, Bestellung und Verkaufschance. Eine Entity entspricht einem externen Inhaltstyp in Business-Konnektivitätsdienste (Business Connectivity Services). Ein BDC-Entitätstyp besteht aus mindestens einer Methode. Felder (die im BDC-Modell als TypeDescriptors bezeichnet werden) der Entität werden durch die komplexen Typen definiert, die von einer oder mehreren externen Systemmethoden zurückgegeben werden. Demzufolge besteht eine BDC-Entität aus einem Methodensatz, und zur Laufzeit wird die Struktur dieser Entitätsinstanz anhand der Werte bestimmt, die von der Back-End-Methode bzw. den Back-End-Methoden zurückgegeben werden. In den meisten Fällen weist ein Entitätstyp eine Identität auf – Skalarwerte, die die Entitätsinstanz in einer Sammlung von Entitätsinstanzen eindeutig identifizieren. Jeder Skalarwert, der Teil der Identität der Entität ist, wird als Identifier bezeichnet. Die Felder einer Entität können einfache oder komplexe Typen sein. SimpleType stellt Skalartypen (oder unteilbare Typen) dar (z. B. integer, string), während ComplexType strukturierte Felder darstellt (z. B. eine Adresse). Ein ComplexType besteht aus keinen oder mehr Feldern, bei denen es sich um Skalartypen oder komplexe Typen handeln kann. Auf jeder BDC-Metadatenobjektebene werden benutzerdefinierte Eigenschaften unterstützt. Jede Eigenschaft besteht aus Name/Wert-Paaren, die von Anwendungen zum Erweitern des Modells verwendet werden können.

Methods/MethodInstances

Methods im Metadatenmodell sind abstrakte Beschreibungen von Back-End-APIs. Sie sind nicht ausführbare Elemente, während MethodInstances ausführbare Instanzen von Methods darstellen. BDC verwendet im Modell definierte Standardwerte und entsprechende Eingaben in der Anwendung zur Laufzeit, bestimmt die Back-End-API basierend auf Method und MethodInstance und führt sie aus. MethodInstances sind Stereotypen für eine vordefinierte BDC-Operation wie z. B. Create, Update, ReadSingle (wird als SpecificFinder bezeichnet), ReadMultiple (wird als Finder bezeichnet), Delete usw. In BDC sind 20 Stereotypen definiert. Sie basieren alle auf sehr bekannten Datenmutationsmustern, die in Systemen wie z. B. Datenbanken und Webdiensten verwendet werden. Mit den Stereotypen soll in erster Linie eine domänenneutrale und Back-End-neutrale Datenzugriffsschnittstelle bereitgestellt werden, die Personen verwenden können, die sich nicht mit den komplizierten Details der Back-End-Systeme auskennen. Mithilfe von Standardwerten und Stereotypen ist das Aufrufen von umfassenden und komplexen Back-End-APIs für einen typischen Information Worker, der sich nicht mit den Details komplexer Systeme befassen möchte, sehr einfach.

Associations

Associations in BDC stellen die Beziehung zwischen Entitäten (externe Inhaltstypen) dar. Da jedoch BDC eine einheitliche Schnittstelle für verschiedene Arten von Back-End-Systemen bereitstellen soll, kann eine Association nicht wie eine relationale Datenbankbeziehung modelliert werden. Eine Association in BDC verweist auf bestimmte Geschäftslogik (oder eine API) auf dem Back-End-System, die eine Reihe von Entitätsinstanzen verwendet und Instanzen eines anderen Entitätstyps zurückgibt. Im Gegensatz zu relationalen Datenbanken kann BDC nicht die referenzielle Integrität sicherstellen, da BDC nicht die Beziehungslogik kontrolliert, die explizit vom externen System kontrolliert wird.

Grundlagen der BDC-Modelle

In den folgenden Themen in diesem Abschnitt können Sie sich mit den Grundlagen der BDC-Modelle vertraut machen.

Bewährte Methoden

Im Metadatenspeicher von Microsoft SharePoint Server 2010 gespeicherte Metadaten dienen zur Beschreibung der Struktur eines externen Systems. Metadaten stehen allen Benutzern zum Ermöglichen der Erkennung eines externen Systems und der Herstellung einer Verbindung mit diesem zur Verfügung. Da Metadaten für die Allgemeinheit gedacht sind und von einem Server mit SharePoint Server heruntergeladen und auf Clientcomputern archiviert werden können, sollte die Menge an Informationen in den Metadaten begrenzt werden. Sie sollten beispielsweise die Verwendung eingebetteter SQL-Anweisungen in den Metadaten für externe Datenbanksysteme unterbinden, da diese Informationen zur Datenbankstruktur liefern können. Stattdessen wird empfohlen, für die Metadaten externer Datenbanksysteme gespeicherte Prozeduren zu verwenden.

Siehe auch

Weitere Ressourcen

BDCMetadata-Schema

BDC Model Basics