目的:批量的将SharePoint items变成records或者将records变成普通的items。
1.Add records(用处不大,SharePoint中可以批量添加records,还算方便):
Add-PSSnapin Microsoft.SharePoint.PowerShell
function AddRecords($webURL,$listTitle)
{
$web = Get-SPWeb $webURL
$list = $web.Lists[$listTitle]
$items = $list.Items
Write-Host "Start declaring..." -ForegroundColor Cyan
foreach($item in $items)
{
$IsRecord = [Microsoft.Office.RecordsManagement.RecordsRepository.Records]::IsRecord($Item)
if ($IsRecord -eq $false)
{
Write-Host "Item declared" -ForegroundColor Green
[Microsoft.Office.RecordsManagement.RecordsRepository.Records]::DeclareItemAsRecord($Item)
}
}
}
AddRecords webUrl listTitle
2.Remove records(这个用处比较大,尤其items较多时,在SharePoint中移除records是非常麻烦的事):
Add-PSSnapin Microsoft.SharePoint.PowerShell
function RemoveRecords($webURL,$listTitle)
{
$web = Get-SPWeb $webURL
$list = $web.Lists[$listTitle]
$items = $list.Items
Write-Host "Start undeclaring..." -ForegroundColor Cyan
foreach($item in $items)
{
$IsRecord = [Microsoft.Office.RecordsManagement.RecordsRepository.Records]::IsRecord($Item)
if ($IsRecord -eq $true)
{
Write-Host "Item undeclared" -ForegroundColor Green
[Microsoft.Office.RecordsManagement.RecordsRepository.Records]::UndeclareItemAsRecord($Item)
}
}
}
RemoveRecords webUrl listTitle
效果:将在指定的web的指定list中批量添加/移除records。
运行效果:
使用方法: