На днях появилась задача удалить версии у неактуальных элементов которым уже 4 года и старше. Я решил воспользоваться уже знакомым PowerShell.
Для начала нужно понять до какого элемента будем удалять журнал версий и получить его ID.
Немного расскажу что делает скрипт:
1. меняет значение максимального числа хранимых версий в списке. (рис. ниже)
2. пробегает циклом по элементам списка начиная с ID = 1 и заканчивает значением установленным в скрипте.
надеюсь что статья Вам будет полезна.
Для начала нужно понять до какого элемента будем удалять журнал версий и получить его ID.
Немного расскажу что делает скрипт:
1. меняет значение максимального числа хранимых версий в списке. (рис. ниже)
Заметки: если Вы планируете в новых элементах хранить больше версий чем установлено в скрипте, то после отрабатывания скрипта, необходимо самостоятельно установить значение в настройках списка .
2. пробегает циклом по элементам списка начиная с ID = 1 и заканчивает значением установленным в скрипте.
cls if((Get-PSSnapin | Where {$_.Name -eq "Microsoft.SharePoint.PowerShell"}) -eq $null) { Add-PSSnapin Microsoft.SharePoint.PowerShell; } $SPWeb = Get-SPWeb http://server/sites/test #изменить на необходимый адрес сайта# $List = $SPWeb.Lists["Задачи"] #указать свой список# $ItemsColl = $List.Items $List.MajorVersionLimit = 2 #задать максимальное количество версий# $List.Update() foreach ($item in $ItemsColl) { if ($item.id -le 5) #до какого значения id элемента будет проводится чистка журнала# { write-host "у элемента с ID = "$item.id" журнал удален." -foregroundcolor Green $item.SystemUpdate($false) } } $SPWeb.Dispose();P.s. рекомендую проводить работы в не рабочее время т.к. после сохранений пользователем изменений в элементе так же будет урезан журнал версий у этого элемента.
надеюсь что статья Вам будет полезна.
Комментариев нет:
Отправить комментарий