Passer au contenu principal

ID des éléments de liste

Détails

Les IDs des éléments de liste sont conservés uniquement lors de l'utilisation du Insane mode pour Microsoft 365 dans ShareGate Migrate, car cela utilise la nouvelle migration API de Microsoft, qui permet de définir ces valeurs dans une nouvelle liste. Les IDs des éléments de liste ne doivent pas déjà être utilisés par d'autres éléments dans la liste de destination.

Les IDs des éléments de liste ne seront pas conservés lors des migrations effectuées sans Insane mode activé ou lors d'une migration avec Insane Mode vers une destination On-Premises.

Ces deux scénarios utilisent l'API SharePoint classique, qui attribue automatiquement les valeurs d'ID des éléments de liste. Conserver les IDs des éléments de liste pour toute version de SharePoint utilisant cette API nécessiterait de manipuler directement la base de données de contenu, ce qui annulerait la garantie de votre SharePoint. En raison de cela et de l'indisponibilité de la base de données dans Microsoft 365, la conservation des IDs des éléments de liste n'est pas prise en charge en dehors de l'Insane Mode ou vers une destination On-Premises.

Remarque : Si vous supprimez un élément de votre liste de destination Microsoft 365, un autre élément ne réutilisera pas son ID. Par exemple, si vous supprimez un élément de liste avec l'ID 2 à la destination puis migrez de nouveaux éléments avec Copy content only en Insane mode, un élément source avec le même ID (2) ne pourra pas avoir ce même ID à la destination. La solution de contournement dans ces cas est d'utiliser Copy structure and content à la place.

Solution de contournement

Avertissement : La solution de contournement suivante est fournie telle quelle, sans aucune garantie ni support. Elle n'a pas été testée dans tous les scénarios, il se peut donc qu'elle ne fonctionne pas dans tous les cas. Si cette solution échoue, nous ne pouvons pas proposer d'alternative.

Si vous souhaitez tenter de conserver les IDs des éléments de liste sans utiliser la migration API de Microsoft 365, la solution de contournement suivante est proposée en alternative :

Remarque : La procédure suivante vous permettra de conserver les IDs des éléments de liste. Cependant, elle implique certaines étapes manuelles et ne conservera pas les autorisations, l'historique des versions ni les pièces jointes.

  1. Assurez-vous que les options de performance de ShareGate Migrate sont réglées sur Minimal (cela garantit un seul thread afin que les IDs soient copiés séquentiellement. Si un autre paramètre est utilisé, cela pourrait ne pas fonctionner à cause du multi-threading).

  2. Créez une nouvelle liste dans votre destination (assurez-vous qu'aucun élément n'y ait jamais été créé, une liste vide qui avait des éléments supprimés ne fonctionnera pas).

  3. Copiez des éléments (dans n'importe quel ordre) dans votre liste de destination jusqu'à ce que vous ayez des éléments avec les mêmes numéros d'ID qu'à la source (même si les mauvais éléments ont les mauvais IDs). Par exemple, si vous avez des IDs de 1 à 100 dans votre liste source, assurez-vous d'avoir des éléments avec les IDs 1 à 100 dans votre liste de destination.

  4. S'il y a des trous dans les IDs à la source (par exemple, aucun élément avec l'ID 30), vous devrez supprimer les éléments dans la destination pour avoir les mêmes trous (donc, dans mon exemple, supprimez l'élément avec l'ID 30).

  5. Dans ShareGate Migrate, accédez à votre liste source et cliquez sur Bulk edit content.

  6. Sélectionnez tous les éléments et cliquez sur Export metadata.

  7. Enregistrez-le à l'emplacement de votre choix.

  8. Dans ShareGate Migrate, accédez à votre liste de destination et cliquez sur Bulk edit content.

  9. Sélectionnez Import and Edit.

Cela réattribuera toutes les bonnes valeurs aux éléments pré-créés avec les bons IDs, ce qui revient au même que de copier tout en conservant les IDs.

Si vous utilisez vos IDs d'éléments de liste dans un workflow, la solution de contournement suivante est proposée en alternative :

  1. Dans la liste de destination, créez une nouvelle colonne (ligne de texte unique) appelée Ancien ID (ou un autre nom de votre choix).

  2. Faites correspondre la colonne ID de la source à cette nouvelle colonne Ancien ID via l'option map properties.

  3. Configurez le workflow pour utiliser cette colonne à la place.


"Cet article a été traduit à l'aide de l'intelligence artificielle. En cas de doute, veuillez vous référer à la version originale en anglais."

Avez-vous trouvé la réponse à votre question ?