I am in the process of moving team sites with document libraries from MOSS 2007 - to newly created SharePoint 2013 team sites - based upon trial/error my 1st site which was HR did not move over so smoothly because I did not check the permissions before hand and I created a record library and nearly all the documents came over declared (it's becoming tedious to go 1-by-1 to undeclared them all). I created a PowerShell script but this did not work as excepted. Is it best practice to go with a 3rd party vendor (we are a small organization, and limited with funds).

PowerShell script:

$SPAssignment = Start-SPAssignment 
$web = Get-SPWeb <a href="your-site">http://your-site</a>; -AssignmentCollection $spAssignment 
$list = $web.lists["your-list"].items 
foreach ($item in $list) { 
$IsRecord = [Microsoft.Office.RecordsManagement.RecordsRepository.Records]::IsRecord($Item) if ($IsRecord -eq $true)
Write-Host "Undeclared $($item.Title)" [Microsoft.Office.RecordsManagement.RecordsRepository.Records]::UndeclareItemA‌​sRecord($Item) 
Stop-SPAssignment $SPAssignment
  • Have you looked into ShareGate? It's not very expensive, plus they got free 15-days trial.
    – Aveenav
    Commented Apr 25, 2016 at 20:46
  • The trial version for ShareGate was super fast but it didn't do exactly what I wanted and when I talked to the sales rep - they quoted me a higher price then what was on the website. Commented Apr 27, 2016 at 13:50

2 Answers 2


It depends upon on your environment ( i.e number of the site collection, Size of data, Complexity of sites).

As you know, there is no direct way of migration from SharePoint 2007 to 2013. The only way is to build a temporary SharePoint 2010 farm( btw 2010 also pass End of life) then Backup the content DB from 2007 and restore it 2010 after upgrade here then backup from 2010 then restore it in 2013.

I would personally go for the 3rd party to migrate when we have a version skip.

  • It will be clean migration.
  • all the orphan stuff will remain on an old farm.
  • easy to migrate.

But it cost, you can check Share-gate or Metalogix or etc

  • Thanks for your feedback...however; we have a quote from Metalogix that is a NO go for us 27K is too much - in my previous role we used Dell - but that organization also, had a license so that worked. Commented Apr 26, 2016 at 12:26
  • Try sharegate, it is cheap
    – Waqas Sarwar MVP
    Commented Apr 26, 2016 at 13:08

If it were me, I'd try to get help on the PowerShell script and get some test runs in. I wouldn't buckle into purchasing from a 3rd party just yet, when it's entirely possible to fix the PowerShell script.

In my experience the script will use sharepoint web services in 2007 to grab the file and be uploaded through the sharepoint management shell snapin. Maybe you can share your powershell script and we can diagnose what's going wrong with it.

  • Hello Mike, I downloaded ShareGate - I felt it was a waste of my time - I will post the powershell script and maybe you can guide me in the right direction - this is becoming very frustrating and I have to get this corrected. The issue with ShareGate that I ran into is that I am not the Site Collection Admin in our SharePoint 2007 environment however; I am the collection owner for SharePoint 2013 - I just want to get this done and move on to my next order of business. Commented Apr 27, 2016 at 13:52
  • $SPAssignment = Start-SPAssignment $web = Get-SPWeb <a href="your-site">http://your-site</a> -AssignmentCollection $spAssignment $list = $web.lists["your-list"].items foreach ($item in $list) { $IsRecord = [Microsoft.Office.RecordsManagement.RecordsRepository.Records]::IsRecord($Item) if ($IsRecord -eq $true){ Write-Host "Undeclared $($item.Title)" [Microsoft.Office.RecordsManagement.RecordsRepository.Records]::UndeclareItemAsRecord($Item) } } Stop-SPAssignment $SPAssignment Commented Apr 27, 2016 at 14:29
  • edit your original post to post your powershell script.
    – Mike
    Commented Apr 27, 2016 at 14:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.