Preserve IDs issue

We have about 80 sites in several site collections. The items were imported into each of these "archive" sites from a main site and the SharePoint "export" functionality keeps the ID from the original site. So I have lists where there are huge gaps in the IDs and/or the IDs don't even start until they get into the hundred thousands. So if my list only has 261 items but the IDs are in the hundred thousands Content Matrix is creating 100,000 "temporary" items to "use" the non-existing IDs. This is taking a ton of time as you can imagine because it literally creating half a million items in each site since there are half a million items all together.

For several lists we have opted not to preserve IDs as there will only be new items and not any modified items. But for one list we will have many modifications and new items so a delta will be necessary. Is there anyway to do a delta without preserving the IDs? For instance can I supply Content Matrix with another Unique field and have it use that field for the incremental?  

Or is there another way to preserve the ID without the tool creating the "temporary" records.

Parents
  • Unfortunately, this is how SharePoint works and as IDs are unique it is not possible to manage that. Content matrix is just re-creating same thing that is on the source to target. So once this is created it is possible to delete items without changing ID, but it is not possible to create item with specific ID or change ID on existing item. SharePoint don't allow this to happen. Mind that there is an SQL database behind that field.

    Of course, you can create custom field that will contain your custom ID but if it is created by workflow from Sharepoint ID or by function then this workflow has to be disabled and has to be changed to static value before migration otherwise it will again inherit new ID on the target same way it did on the source. And this applies to any function created fields. So, yes, this is an option, but I would rather avoid that.

Reply
  • Unfortunately, this is how SharePoint works and as IDs are unique it is not possible to manage that. Content matrix is just re-creating same thing that is on the source to target. So once this is created it is possible to delete items without changing ID, but it is not possible to create item with specific ID or change ID on existing item. SharePoint don't allow this to happen. Mind that there is an SQL database behind that field.

    Of course, you can create custom field that will contain your custom ID but if it is created by workflow from Sharepoint ID or by function then this workflow has to be disabled and has to be changed to static value before migration otherwise it will again inherit new ID on the target same way it did on the source. And this applies to any function created fields. So, yes, this is an option, but I would rather avoid that.

Children
No Data