powered by simpleCommunicator - 2.0.30     © 2024 Programmizd 02
Map
Форумы / SharePoint [игнор отключен] [закрыт для гостей] / Организация автоматической очистки пользовательских данных
8 сообщений из 8, страница 1 из 1
Организация автоматической очистки пользовательских данных
    #39306797
stavgreengo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго времени суток !!!
На Sharepoint 2010 имеются библиотеки в которых необходимо автоматически удалять пользовательский контент, аля библиотека картинок для фотографий с корпоративов. Необходимо организовать в ней автоматическое удаление данных по шедулеру с условием, допустим удалить всё старше года. Как организовать данную задачу ?
...
Рейтинг: 0 / 0
Организация автоматической очистки пользовательских данных
    #39307421
chel_2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stavgreengo,

Скрипт повершелл в крон поставить, сайт воркфлоу запилить, задачу таймера. Миллион вариантов.
...
Рейтинг: 0 / 0
Организация автоматической очистки пользовательских данных
    #39308171
stavgreengo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chel_2000stavgreengo,

Скрипт повершелл в крон поставить, сайт воркфлоу запилить, задачу таймера. Миллион вариантов.
А можно чуть подробнее про задачи таймера шарепоинт и как их организовать(а лучше ссылкой ткнуть), повершелл + крон или прочие шедулеры не подходят в виду того что не хотелось бы задачность выносить за пределы шарика, а варганить сайт воркфлоу это по воробьям из пушки.
...
Рейтинг: 0 / 0
Организация автоматической очистки пользовательских данных
    #39308211
stavgreengo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
https://msdn.microsoft.com/ru-ru/library/office/hh528519(v=office.14).aspx
Это то что мне надо, позволит решить поставленную задачу или я пошёл не верным путём ?
...
Рейтинг: 0 / 0
Организация автоматической очистки пользовательских данных
    #39308419
chel_2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stavgreengo,

Воркфлоу совсем на пушка, снижает участие программиста во многих сценариях. Крон от задачи таймера по сути ничем не отличается, т.к. и то и другое за пределы фермы не выходит.

По задачам таймера есть статейка в блоге Стаса Выщепана, она лучше MSDN:)
...
Рейтинг: 0 / 0
Организация автоматической очистки пользовательских данных
    #39308505
stavgreengo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chel_2000,

Спасибо. Вот нашёл powershell скрипт
Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
$web = Get-SPWeb "http://s01-dv01:15000/Group"
$Libraries = $web.Lists | where {$_.BaseType -eq "DocumentLibrary" -And $_.Title -eq "LibraryName" -and -not $_.hidden }
 
foreach ($library in $Libraries) {
 
    Write-Output "Getting files from $($library.Title)"
    $Files = $library.Items | where {$_.FileSystemObjectType -eq "File"}
    foreach ($file in $Files) {
        Write-Output "Deleting file $($file.Name)..."
        $file.Delete()
    }
}


Осталось допилить сюда условие, затрагивать файлы старше одного года и работу по конкретному каталогу библиотеки, а не по всей. Помогите пожалуйста, уже чуть-чуть осталось и победа)
...
Рейтинг: 0 / 0
Организация автоматической очистки пользовательских данных
    #39308616
stavgreengo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нашёл ещё вот такой скрипт
Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
[System.Reflection.Assembly]::Load("Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c")

$site = new-object Microsoft.SharePoint.SPSite("http://s01-dv01:15000/Group")
$web = $site.OpenWeb("РПС")
$documentLibrary = $web.Lists["Business Studio"]

$yesterdaysDate = [Microsoft.SharePoint.Utilities.SPUtility]::CreateISO8601DateTimeFromSystemDateTime([System.DateTime]::UtcNow.AddYears(-1.0))
$query = new-object Microsoft.SharePoint.SPQuery
$query.ViewFields = "<FieldRef Name='Modified' />"
$query.Query = "<Where><Leq><FieldRef Name='Modified' /><Value Type='DateTime' IncludeTimeValue='TRUE'>" + $yesterdaysDate + "</Value></Leq></Where>"
$queryItems = $documentLibrary.GetItems($query)
foreach ($item in $queryItems)
{
    echo $item.Url
    $item.Delete()
}
$web.Dispose()
$site.Dispose()


Но он выдаёт ошибку
авторGetItems : Нельзя вызвать метод для выражения со значением NULL.
C:\Users\KuleshovVS\1.ps1:11 знак:40
+ $queryItems = $documentLibrary.GetItems <<<< ($query)
+ CategoryInfo : InvalidOperation: (GetItems:String) [], RuntimeE
xception
+ FullyQualifiedErrorId : InvokeMethodOnNull

Delete : Нельзя вызвать метод для выражения со значением NULL.
C:\Users\KuleshovVS\1.ps1:15 знак:17
+ $item.Delete <<<< ()
+ CategoryInfo : InvalidOperation: (Delete:String) [], RuntimeExc
eption
+ FullyQualifiedErrorId : InvokeMethodOnNull
Помогите его поправить, если не сложно)
...
Рейтинг: 0 / 0
Организация автоматической очистки пользовательских данных
    #39308827
stavgreengo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В результате родился вот такой вот скрипт, который посредством шедулера будет обеспечивать мне хотелки первоначального условия
Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
$web = Get-SPWeb "http://s01-dv01:15000/Group"
$Libraries = $web.Lists | where {$_.BaseType -eq "DocumentLibrary" -And $_.Title -eq "Обучение" -and -not $_.hidden }
 
foreach ($library in $Libraries) {
 
    Write-Output "Getting files from $($library.Title)"
    $Files = $library.Items | where {$_.FileSystemObjectType -eq "File"  -And ($_.File.TimeCreated -lt (Get-Date).AddYears(-1))  -And ($_.File.ParentFolder.Name -eq "Тесты")}
    foreach ($file in $Files) {
       # Write-Output "$($file.Name), $($file.Length)"
    Write-Output "Deleting file $($file.Name)..."
        $file.Delete()
    }
}
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / SharePoint [игнор отключен] [закрыт для гостей] / Организация автоматической очистки пользовательских данных
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]