На днях появилась задача удалить версии у неактуальных элементов которым уже 4 года и старше. Я решил воспользоваться уже знакомым PowerShell.
Для начала нужно понять до какого элемента будем удалять журнал версий и получить его ID.
Немного расскажу что делает скрипт:
1. меняет значение максимального числа хранимых версий в списке. (рис. ниже)
2. пробегает циклом по элементам списка начиная с ID = 1 и заканчивает значением установленным в скрипте.
P.s. рекомендую проводить работы в не рабочее время т.к. после сохранений пользователем изменений в элементе так же будет урезан журнал версий у этого элемента.
надеюсь что статья Вам будет полезна.
Для начала нужно понять до какого элемента будем удалять журнал версий и получить его ID.
Немного расскажу что делает скрипт:
1. меняет значение максимального числа хранимых версий в списке. (рис. ниже)
Заметки: если Вы планируете в новых элементах хранить больше версий чем установлено в скрипте, то после отрабатывания скрипта, необходимо самостоятельно установить значение в настройках списка .
2. пробегает циклом по элементам списка начиная с ID = 1 и заканчивает значением установленным в скрипте.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | cls if(( Get-PSSnapin | Where {$_.Name -eq "Microsoft.SharePoint.PowerShell" }) -eq $null ) { Add-PSSnapin Microsoft.SharePoint.PowerShell; } $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(); |
надеюсь что статья Вам будет полезна.
Комментариев нет:
Отправить комментарий