SharePoint 2010 29.06.2010, 09:47 Uhr

Datenintegration mit BCS (Teil 2)

Über die Business Connectivity Services (BCS) können in SharePoint 2010 Daten aus externen Systemen (Datenbanken, LOB-Systeme, Web Services) angebunden und den Benutzern über SharePoint-Listen, Web-Part-Dashboards oder die Suche zur Verfügung gestellt werden. Dank neuen Werkzeugen in SharePoint Designer und Visual Studio 2010 ist die Umsetzung solcher Lösungen nun wesentlich einfacher geworden.
von Urs BertschyIm ersten Teil [1] der zweiteiligen Mini-Serie zu den Business Connectivity Services von SharePoint 2010 ging es um die Architektur und die Einsatzmöglichkeiten der Datenintegrationstechnologie. Im zweiten Teil stehen die verfügbaren Werkzeuge und die Entwicklung von BCS-Lösungen auf dem Themenplan. War die Realisierung von BDC-Datenanbindungen in SharePoint 2007 mangels geeigneter Tools eine zeitraubende und fehleranfällige Angelegenheit, denn die dazu notwendigen sehr langen XML-Files (ADFs) mussten mühsam von Hand erstellt werden[2], stehen in SharePoint 2010 mit dem SharePoint Designer und Visual Studio 2010 gleich zwei Werkzeuge zur Verfügung, die bei der Umsetzung von BCS-Lösungen behilflich sind:1) SharePoint Designer 20102) Visual Studio 2010No-Code-Lösungen mit SharePoint Designer 2010 Der komplett überarbeitete SharePoint Designer richtet sich weniger an hartgesottene Entwickler, sondern wurde so konzipiert, dass auch erfahrene Anwender und Mitarbeiter der IT-Abteilung in der Lage sind, SharePoint-Lösungen umzusetzen, ohne dabei eine Zeile Code schreiben zu müssen [3].Datenanbindungen werden in SharePoint Designer auf Basis von External Content Types definiert ([1]), in welchen die Datenverbindung, das Mapping der Daten und die Operationen für den Zugriff auf die Datenquelle festgelegt werden. Das Tool stellt dazu einfach bedienbare Dialoge und Wizards bereit (Abbildungen 1 und 2). Als Datenquelle können ein SQL Server, WCF/Web Service oder .NET-Assembly-Konnektoren angegeben werden. Steht die Verbindung zur Quelle, werden die gewünschten Daten ausgewählt und mit Hilfe eines Wizards werden die notwendigen Mappings und Parameter festgelegt. Anschliessend wird der External Content Type auf dem SharePoint Server gespeichert und steht fortan für die Verwendung in External Lists oder in BCS Web Parts bereit. SharePoint Designer bietet Zugang zu den meisten in den ECT zur Verfügung gestellten Funktionen wie Filter-, Offline- und Such-Optionen. Nicht unterstützt werden jedoch die neu in BCS hinzugekommenen Batch- und Bulk-Operationen, mit deren Hilfe man mehrere Items in einer einzigen Anfrage auslesen und verarbeiten kann. Abbildung 1: External Content Types können in SharePoint Designer bequem zusammengeklickt werden. Das notwendige XML-File wird automatisch im Hintergrund generiert und auf dem SharePoint Server im BDC Metastore publiziert Abbildung 2: Daten, Mappings, Operationen und Filter von ECTs lassen sich in SharePoint Designer mit Hilfe eines Wizards festlegen External Lists lassen sich direkt aus SharePoint Designer- ohne Umweg über die SharePoint UI - erstellen. Dabei erhält man auch gleich die Möglichkeit, die Eingabeformulare der Liste in InfoPath-Formulare umzuwandeln. Diese lassen sich dann mit InfoPath Designer 2010 beispielweise mit komfortableren Eingabehilfen und Validierungsfunktionen aufpeppen.Visual Studio 2010 für komplexere DatenintegrationenIm Gegensatz zu SharePoint Designer zielt Visual Studio 2010 auf die Umsetzung codebasierter BCS-Anbindungen sowie in SharePoint verwendbaren BCS-Komponenten (WebParts etc.) und Office-Add-ins ab. Die prominenteste BCS-spezifische Erweiterung in Visual Studio 2010 ist die Business-Data-Model-Projektvorlage, welche einen visuellen Designer und Codegerüste für die Erstellung von Enterprise Content Types zur Verfügung stellt (Abbildung 3). Dank der Möglichkeit, eine eigene Programmlogik verwenden zu können, lassen sich damit wesentlich mächtigere ECTs als mit SharePoint Designer erstellen. So kann nicht nur praktisch jede beliebige Datenquelle angesprochen werden, es lassen sich auch Daten von unterschiedlichen Systemen wie Datenbanken, LOB-Systemen (CRM, ERP etc.), WCF-Services oder externe Web API (z.B. Twitter, Flickr, Amazon) kombinieren und via BCS zur Verfügung stellen. Ausserdem lassen sich Datentransformationen durchführen und es kann eigene Business Logik auf Daten angewendet werden. Mit Visual Studio 2010 erstellte ECTs werden in Form von .NET-Assembly-Konnektoren zur Verfügung gestellt und können auch in SharePoint Designer wiederverwendet, in dem sie dort als Datenquelle angegeben werden. Abbildung 3: Komplexeren BDC-Lösungen wie das Zusammenfassen von Daten aus mehreren Tabellen lassen sich nur mit Visual Studio 2010 bewerkstelligen Ein weiteres Einsatzgebiet von Visual Studio ist die Erstellung von einzelnen client- oder serverseitigen Komponenten, welche über das von der BCS Client Runtime zur Verfügung gestellte BCS Objektmodell auf externe Daten zugreifen können. Dazu zählen beispielsweise Menüerweiterungen oder Task Panes (External Data Parts) für Outlook, Workflow-Activities, Web Parts oder Feldtypen. Deployment via WSP und ClickOnceAuch beim Deployment gibt es zwischen SharePoint Designer und Visual Studio wesentliche Unterschiede. SharePoint Designer arbeitet mit einer Live-Connection zum Server, so dass sämtliche vorgenommenen Änderungen immer direkt auf dem SharePoint-Server aktiv werden.Mit Visual Studio erstellte BCS-Projekte werden in ein WSP-Paket (SharePoint Solution Package) eingebettet, das dann manuell auf dem Server installiert werden kann. WSPs haben den Vorteil, dass einerseits gleich alle zur Lösung gehörenden SharePoint-Artefakte (z.B. External List, Web-Part-Seiten, Menüerweiterungen) in ein Installationspaket integriertund andererseits beliebig zwischen verschiedenen SharePoint-Systemen (z.B. zwischen Entwicklungs-, Test- und Produktionsserver) übertragen werden können. In SharePoint Designer erstellte BCS-Komponenten können über eine Exportfunktion an Visual Studio übergeben werden. Auf diese Weise übernommene ECTs lassen sich allerdings nur mit dem XML-Editor weiterbearbeiten. Der visuelle Business-Modell-Designer steht hier nicht zur Verfügung. Immerhin können mit SharePoint Designer erstellte ECTs auf diese Weise in ein portierbares WSP-Package integriert werden. Beim Deployment von Client-Lösungen kommen ClickOnce-Pakete zum Einsatz, die via SharePoint Server zur Verfügung gestellt werden. Diese werden bei erstmaliger Nutzung automatisch auf dem Client installiert. Praktisch: ClickOnce erlaubt, es neue Versionen automatisch auf dem Client zu aktualisieren. ClickOnce-Pakete lassen sich zudem auch in ein WSP integrieren, so dass man eine auf Server- und Client-Komponenten basierende Gesamtlösung in ein einziges Installationspaket verpacken kann.Fantastische Möglichkeiten Punkto Anbindung von externem Datenmaterial eröffnet BCS fantastische neue Möglichkeiten. Einfache Datenintegrationen sind mit SharePoint Designer im Handumdrehen erledigt. Mit Visual Studio 2010 erhalten Developer vielseitige Möglichkeiten, Informationen aus unterschiedlichen Quellen zu aggregieren und in SharePoint zu präsentieren. Sehr spannend ist auch, dass sich die neuen Office-2010-Clients, allen voran Outlook 2010 und SharePoint Workspace, inklusive Offline-Support, in eine BCS-Lösung einbeziehen lassen.Urs Bertschy ist Inhaber der auf Web- und SharePoint-Consulting/-Development spezialisierten Bertschy Informatik AG. Unter http://www.bertschy.ch/blog unterhält er einen Technologieblog, der sich vor allem SharePoint- aber auch anderen IT-Themen widmet.Links[1] http://www.computerworld.ch/aktuell/news/51271/index.html[2] http://www.computerworld.ch/aktuell/developerworld/48594/index.html[3] http://www.bertschy.ch/2010/03/sharepoint-designer-2010-ready-for-prime-time Peter Monadiemi


Das könnte Sie auch interessieren