diff --git a/README.md b/README.md index 954cf01..7994075 100644 --- a/README.md +++ b/README.md @@ -161,7 +161,7 @@ Fuer das Mapping ist vor allem relevant: - `CustomColumns`: eigene Fachspalten, die im Ziel oft umbenannt oder anders aufgebaut sind - `SourceSupportingInternalNames`: technische Begleitspalten wie `_0` werden nur noch informativ aufgefuehrt und nicht separat gemappt - `ImportSupported`: steuert, ob eine Spalte beim Import ueberhaupt beruecksichtigt wird -- Taxonomy-Felder werden beim Import ueber den exportierten `TermGuid` gesetzt; dabei wird angenommen, dass derselbe Term im Ziel bereits mit identischer GUID existiert +- Taxonomy-Felder (Einfach- und Mehrfachwerte) werden beim Import ueber den exportierten `TermGuid` gesetzt; dabei wird angenommen, dass dieselben Terme im Ziel bereits mit identischer GUID existieren - Die exportierte `WssId` wird bewusst nicht uebernommen: Sie ist nur innerhalb der Quell-SiteCollection gueltig. SharePoint loest beim Setzen des Feldwerts die zielseitige `WssId` auf und legt den Eintrag in der `TaxonomyHiddenList` bei Bedarf selbst an. Die Hidden List soll deshalb nicht separat migriert oder vorab befuellt werden. Wenn eine Ziel-Liste oder Ziel-Bibliothek nicht existiert, gibt das Skript eine Warnung aus, dass dieser Container manuell angelegt werden soll. diff --git a/Start-SPMigration.ps1 b/Start-SPMigration.ps1 index a4360e7..26516f5 100644 --- a/Start-SPMigration.ps1 +++ b/Start-SPMigration.ps1 @@ -2222,7 +2222,10 @@ function Set-SPTaxonomyFieldValue { $labelGuidPairs += ("{0}|{1}" -f $label, $termGuid) } - $pairString = $labelGuidPairs -join ";#" + # PopulateFromLabelGuidPairs expects repeated label|Guid pairs separated + # by a plain semicolon. ";#" is SharePoint's serialized field-value + # delimiter and causes multi-value collections to be parsed incorrectly. + $pairString = $labelGuidPairs -join ";" $taxonomyCollection = $null try {