SharePoint 2010 Deployment (Teil 4) – Importieren von Business Data Connectivity Models

11. Mai 2012

Bei SharePoint 2010 Deployment handelt es sich um eine Serie von Blogbeiträgen, die die verschiedenen Schritte für das Deployment von SiteCollections erläutert und ausführt. Dabei wird der Fokus auf das Wiederherstellen einer Backup-Datei aus einer SharePoint-Umgebung in eine andere (z.B. von einer Entwicklungsumgebung auf eine Test- oder Produktivumgebung) gelegt.

 

Die Serie “SharePoint 2010 Deployment” besteht aus den folgenden Beiträgen:

  1. Erstellen einer SiteCollection
  2. Wiederherstellen einer Backup-Datei
  3. Erstellen von SecureStore-Applikationen
  4. Importieren von Business Data Connectivity Models (BDCM)
  5. Deployment von SQL Server Reporting Service Reports

Im vierten Teil dieser Blogserie behandeln wir das Importieren von Business Data Connectivity Models in SharePoint 2010 mit Hilfe von Powershell. Dafür erweitern wir die, im ersten Teil der Blogserie, erstellte Konfigurationsdatei sowie das Powershell-Skript, um die Aktionen für das Importieren von BDCM-Dateien. Diese Powershell-Skript kann entsprechend der Anforderungen individuell angepasst werden.

Dieser Schritt muss nur in das Deployment eingebunden werden, wenn Sie Business Data Connectivity Models (BDCM) erstellt haben, die in die Zielumgebung deployed werden müssen.

Für das Erweitern der im ersten Teil dieser Blogserie erstellten Powershell-Datei sowie das nachträgliche Ausführen, sind die folgenden Schritte notwendig:

  1. Erweitern der Konfigurationsdatei
  2. Erweitern der Powershell-Datei
  3. Ausführen

Beim Importieren von BDCMs ist zu beachten, dass die Datenquellen, auf die das Model zugreift, vorhanden sind.

Was sind Business Data Connectivity Models (BDCM)

BDCMs werden verwendet, um in SharePoint 2010 externe Listen z.B. aus einer SQL Server Datenbank oder über einen Webservice, einzubinden. Mit Hilfe solcher externen Listen können die Daten einfach von den Benutzern bearbeitet werden. Die Aktionen, die in diesem Model zu Verfügung stehen, werden beim Erstellen eines Business Data Connectivity Model gewählt.

Eine Möglichkeit, eine BDCM-Datei zu erstellen, ist das Erstellen eines External Content Types der anschließend als BDCM-Datei exportiert wird.

Hier finden Sie eine Anleitung um einen External Content Type zu erstellen.

Erweitern der Konfigurationsdatei

Um ein unabhängiges Deployment zu verwenden, haben wir im ersten Teil diese Blogserie Erstellen einer SiteColleciton, eine Konfigurationsdatei (Konfiguration.xml) erstellt. Diese müssen wir nun um den Pfad für die BDCMs erweitern

<!-- Paths -->
<BDCMFilePath>Pfad zu den BDCM-Dateien</BDCMFilePath>

Erweitern der Powershell-Datei

Im nächsten Schritt erweitern wir, das im ersten Teil der Blogserie erstellte Powershell-Skript (Deployment.ps1) um das Element <BDCMFilePath> aus der Konfigurationsdatei

$BDCMFilePath = $configurationElement.Config_Content.BDCMFilePath

Im zweiten Schritt müssen wir dem Powershell-Skript nun dem Befehl zum Importieren der BDCMs hinzufügen.

Write-Host "Import Business Data Catalog Models Start"
#Get metadata informations from the existing Business Data Catalog.
$MetadataStore = Get-SPBusinessDataCatalogMetadataObject -BdcObjectType Catalog -ServiceContext $Webapplication

#Import Business Data Catalog Models
#Read content of the folder to get the list of the BDCM files.
$models = [IO.Directory]::GetFiles($BDCMFilePath, "*.bdcm")
foreach($model in $models)
{
  Import-SPBusinessDataCatalogModel -Identity $MetadataStore -Path "$model" -force -    ModelsIncluded -PermissionsIncluded -PropertiesIncluded -Confirm:$false
  Write-Output "BDCM '$model' imported successfully."
}
Write-Host "Import Business Data Catalog Models End"
Write-Host "----------------------------------------------------"

Ausführen

Öffnen Sie nun auf dem Server das Microsoft SharePoint 2010 Management Shell und navigieren zu dem Verzeichnis, in dem Sie das Powershell-Skript gespeichert haben.

Um das Powershell-Skript auch in der von Windows Server mitgelieferten Powershell-Konsole auszuführen, finden Sie im zweiten Teil dieser Blogserie eine Anleitung.

Führen Sie das Powershell-Skript Deployment.ps1 aus. Anschließend sollte folgendes Fenster erscheinen:

image

Fazit

Zusammenfassend kann man sagen, dass sich mit Hilfe von Powershell in SharePoint 2010 einfach administrative und konfigurierbare Schritte ausführen lassen. Dieses bedeutet, insbesondere für Administratoren und Entwickler, eine erhebliche Zeitersparnis.

Aufgrund des angepassten Skriptes können nun BDCM-Informationen ausgewertet werden, und diese in das Deployment integriert werden. Hierbei werden die Dateien passend ausgelesen und, mit Hilfe des Powershell-Skripts, in die neue Datenbank importiert.

Im fünften Teil dieser Blogserie SharePoint 2010 Deployment beschäftigen wir uns mit dem Thema Deplyoment von SQL Server Reporting Services Reports.

Hier finden Sie eine Übersicht aller Blogbeiträge zu dieser Blogserie

Teil 1                    Teil 2                    Teil 3                    Teil 4                    Teil 5