Порой бывают случаи, когда у ряда элементов нужно запустить определенный
РП.
Руками такой процесс может занять продолжительное время и
как всегда на помощь приходит PowerShell
И так, в текущем примере я запустил Workflow у элемента с Id равным
731. Воспользовавшись u2u caml query builder можно построить запрос и запустить
РП только у требуемых элементов
Сам скрипт
$web=Get-SPWeb http://site/sites/HR # заменить на требуемый адрес
$list=$web.Lists['Заявки']
cls
$manager = $web.Site.WorkFlowManager
$assoc = $list.WorkflowAssociations.GetAssociationByName("Согласование","ru-ru") # заменить первый параметр на требуемое (название РП)
$data = $assoc.AssociationData
$Query = New-Object Microsoft.SharePoint.SPQuery;
$Query.Folder = $List.RootFolder;
$camlQuery = "
731
"
$Query.Query = $camlQuery;
$Query.RowLimit = 100;
$items = $List.GetItems($Query)
$items.Count
foreach ($item in $items)
{
$wf = $manager.StartWorkFlow($item,$assoc,$data,$true)
$item['Title']
}
$manager.Dispose()
$web.Dispose()
как пользоваться:
заменить адрес сайта и название рабочего процесса.
Комментариев нет:
Отправить комментарий