Согласно документации MS количество промежуточных версий у списка/библиотеки должно быть не более 511, но я заметил что когда работаешь с файлом через WebDav, то не учитывается
лимит который установлен в списке/библиотеки.
Т.е. к примеру когда я редактирую файл через Блокнот, то у
меня плодятся промежуточные версии без ограничений.
То же с редактированием файлов в локальных приложения
офиса к примеру Word.
В общем написал скрипт, который пробегает по всем элементам
списка/библиотеки и подрезает все промежуточные версии больше указанного
количества.
cls $limitDraftVer = 10 # указать лимит промежуточных версий $countDelVer = 0 $web = Get-SPWeb http://site/ $list = $web.Lists['StyleLibrary'] $items = $list.Items foreach($item in $items) { #if($item.Id -eq 113) # { $myItem = $item $countVer = 0 for( $i = 0; $i -le $myItem.Versions.Count; $i++ ) { $ver = $myItem.Versions[$i] if($ver.Level -eq 'Draft' ) { $countVer ++ if($countVer -ge $limitDraftVer) { $ver.Delete() $countDelVer ++ $i-- } } } #} } $web.Dispose() $countDelVer
Комментариев нет:
Отправить комментарий