Office 365 - SharePoint Online: Listen kopieren (Part 3)

In den beiden vorherigen Posts zum Thema Listen kopieren unter SharePoint Online wurden die über die Oberfläche verfügbaren Funktionen vorgestellt. Die dort verfügbaren Funktionen ermöglichen bereits eine einfache erneute Anlage einer SharePoint Liste basierend auf einer bestehenden Liste. Wie aber deutlich wurde, ist die direkte Übernahme der Daten nicht einfach möglich. Die unter SharePoint Server (On-Premise) bekannte und einfache Methode über Listenvorlagen (List Templates) ist teilweise in SharePoint Online nicht immer verfügbar (siehe auch: Manage list templates). Um dies zu ermöglichen, muss zunächst das "Benutzerdefinierte Scripting"aktiviert werden. Ist dies nicht möglich bzw. sprechen Richtlinien des Unternehmens dagegen, kann die Liste inkl. deren Inhalte per PowerScript kopiert werden.

Ein weiterer Weg, eine Liste samt Daten zu duplizieren, führt also über PowerShell und den PnP-Erweiterungen, die eine einfache Übernahme ermöglichen. Das nachfolgende Powershell Script zeigt die dafür notwendigen Schritte:

$tenantSiteURL = "https://[TENANT DOMAIN].sharepoint.com/sites/CommunicationDemo"
$tenantTargetURL = "https://[TENANT DOMAIN].sharepoint.com/sites/CommunicationDemo/sub01"
$listTitle = "Adressen"
$templateXML ="X:\...\template.xml"
Connect-PnPOnline -Url $tenantSiteURL -Interactive
Get-PnPSiteTemplate -Out $templateXML -ListsToExtract $listTitle -Handlers Lists
#Daten von SharePoint laden
Add-PnPDataRowsToSiteTemplate -Path $templateXML -List $listTitle
(Get-Content -path $templateXML) -replace ‘RootSite’,’Web’ | Set-Content -Path $templateXML
#Mit Ziel verbinden
Connect-PnPOnline -Url $tenantTargetURL -Interactive
#Kopierte Informationen der Liste anwenden
Invoke-PnPSiteTemplate -Path $templateXML

Nach der Ausführung des oberen Scriptes steht die neue Liste samt Inhalten in der Ziel-Website bereit. Zu beachten ist hier, dass abhängige Lookup-Listen vor dem Kopieren der Liste verfügbar sind.

Kommentare

Beliebte Posts aus diesem Blog

Connect-SPOService: The remote server returned an error: (400) Bad Request

Exchange Online: Schutzregel für E-Mail Weiterleitung

SharePoint Online: Optimale Bildgrößen für Seiten (Teil 1)