adding List / Library Mapping via Manifest File
This commit is contained in:
57
README.md
57
README.md
@@ -9,6 +9,7 @@ Das Skript kann:
|
||||
- normale SharePoint-Listen und deren Eintraege exportieren
|
||||
- exportierte Inhalte wieder in ein Ziel-Web importieren
|
||||
- Feldwerte ueber eine Mapping-CSV von Quell- auf Ziel-InternalNames abbilden
|
||||
- Listen- und Bibliotheksnamen ueber `manifest.csv` auf Zielnamen abbilden
|
||||
|
||||
## Voraussetzungen
|
||||
|
||||
@@ -49,6 +50,7 @@ OutputPath
|
||||
- Die Originaldatei wird in `Files\<Bibliothek>\...` gespeichert.
|
||||
- Die Metadaten liegen direkt daneben als Sidecar-Datei:
|
||||
`Dateiname.ext.properties.json`
|
||||
- `manifest.csv` enthaelt ausserdem Container-Eintraege fuer Listen und Dokumentbibliotheken
|
||||
|
||||
### Listen
|
||||
|
||||
@@ -86,6 +88,33 @@ Bedeutung:
|
||||
- `SourceInternalName`: interner Feldname aus dem Export
|
||||
- `TargetInternalName`: interner Feldname im Zielsystem
|
||||
|
||||
## manifest.csv fuer Listen- und Bibliotheksmapping
|
||||
|
||||
Beim Export wird fuer jede Liste und jede Dokumentbibliothek eine Container-Zeile in `manifest.csv` geschrieben.
|
||||
|
||||
Wichtige Spalten:
|
||||
|
||||
- `RecordType`
|
||||
- `ObjectType`
|
||||
- `SourceTitle`
|
||||
- `TargetTitle`
|
||||
- `BaseTemplate`
|
||||
|
||||
Fuer das Mapping ist insbesondere `TargetTitle` gedacht:
|
||||
|
||||
- leer: das Skript sucht im Ziel mit dem Quellnamen
|
||||
- gesetzt: das Skript sucht im Ziel mit dem Wert aus `TargetTitle`
|
||||
|
||||
Beispiel:
|
||||
|
||||
```csv
|
||||
RecordType;ObjectType;SourceWebUrl;SourceTitle;TargetTitle;BaseType;BaseTemplate;RootFolderUrl;SourceServerRelativeUrl;FileName;FileUniqueId;FileLength;LocalFilePath;LocalMetadataPath;ExportedAtUtc
|
||||
Container;DocumentLibrary;http://clshp001/;Documents;Dokumente;DocumentLibrary;101;/Documents;/Documents;;;;;;
|
||||
Container;List;http://clshp001/;TestListe;ZielTestListe;GenericList;100;/Lists/TestListe;/Lists/TestListe;;;;;;
|
||||
```
|
||||
|
||||
Wenn eine Ziel-Liste oder Ziel-Bibliothek nicht existiert, gibt das Skript eine Warnung aus, dass dieser Container manuell angelegt werden soll.
|
||||
|
||||
## Parameter
|
||||
|
||||
### Pflichtparameter
|
||||
@@ -98,6 +127,7 @@ Bedeutung:
|
||||
- `IncludeHiddenLibraries`: exportiert auch versteckte Bibliotheken
|
||||
- `IncludeHiddenLists`: exportiert auch versteckte Listen
|
||||
- `ExportOnly`: fuehrt nur den Export aus
|
||||
- `ImportOnly`: fuehrt nur den Import aus einem vorhandenen Exportordner aus
|
||||
|
||||
### Importparameter
|
||||
|
||||
@@ -111,6 +141,7 @@ Hinweis:
|
||||
|
||||
- Wenn weder `ImportFiles` noch `ImportLists` gesetzt sind, werden beim Import beide Bereiche verarbeitet.
|
||||
- Wenn `ExportOnly` gesetzt ist, wird kein Import gestartet.
|
||||
- Wenn `ImportOnly` gesetzt ist, wird kein neuer Export gestartet.
|
||||
|
||||
## Beispiele
|
||||
|
||||
@@ -133,6 +164,27 @@ Hinweis:
|
||||
-MappingCsvPath ".\FieldMapping.sample.csv"
|
||||
```
|
||||
|
||||
### Export, manifest.csv anpassen, dann nur Import
|
||||
|
||||
```powershell
|
||||
.\Start-SPMigration.ps1 `
|
||||
-WebUrl "http://sharepoint/sites/Quelle" `
|
||||
-OutputPath "C:\Temp\SP-Export" `
|
||||
-ExportOnly
|
||||
```
|
||||
|
||||
Danach `manifest.csv` bearbeiten und `TargetTitle` fuer Listen oder Bibliotheken setzen.
|
||||
|
||||
Anschliessend:
|
||||
|
||||
```powershell
|
||||
.\Start-SPMigration.ps1 `
|
||||
-OutputPath "C:\Temp\SP-Export" `
|
||||
-TargetWebUrl "http://sharepoint/sites/Ziel" `
|
||||
-MappingCsvPath ".\FieldMapping.sample.csv" `
|
||||
-ImportOnly
|
||||
```
|
||||
|
||||
### Nur Dateien importrelevant ausfuehren
|
||||
|
||||
```powershell
|
||||
@@ -160,7 +212,7 @@ Hinweis:
|
||||
|
||||
### Dokumentbibliotheken
|
||||
|
||||
- Dateien werden in die gleichnamige Zielbibliothek importiert.
|
||||
- Dateien werden in die per `manifest.csv` aufgeloeste Zielbibliothek importiert.
|
||||
- Unterordner werden bei Bedarf angelegt.
|
||||
- Metadaten werden anschliessend ueber das CSV-Mapping gesetzt.
|
||||
|
||||
@@ -171,9 +223,10 @@ Hinweis:
|
||||
|
||||
## Bekannte Einschraenkungen
|
||||
|
||||
- Zielbibliotheken und Ziellisten werden aktuell ueber den Titel aufgeloest.
|
||||
- Die Zielaufloesung kann ueber `manifest.csv` mit `TargetTitle` ueberschrieben werden.
|
||||
- Listenanhaenge werden derzeit noch nicht physisch mit importiert.
|
||||
- Ordner in normalen Listen werden beim Import derzeit uebersprungen.
|
||||
- Fehlende Ziellisten oder Zielbibliotheken werden derzeit nicht automatisch angelegt; das Skript gibt stattdessen eine Warnung zur manuellen Anlage aus.
|
||||
- Sehr spezielle Feldtypen koennen je nach Farm-Konfiguration zusaetzliche Anpassungen benoetigen.
|
||||
- Das Skript ist fuer SharePoint On-Premise mit serverseitigem Objektmodell gedacht, nicht fuer SharePoint Online.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user