пятница, 20 февраля 2015 г.

Работа с полями элемента с помощью jQuery в EditForm (jQuery + SharePoint 2013 Fields Part 4)

Ранее я рассказывал, как можно работать с полями элемента, те примеры хорошо применять в NewForm создания элемента. Сегодня я хочу рассказать, как можно работать с полями в форме EditForm.
В этой статье:
1. Режим "только чтение" для полей 
2. Скрытие комментариев к полю
3. Скрытие полей в зависимости от значений

понедельник, 2 февраля 2015 г.

Поиск давно не используемых списков и библиотек с помощью PowerShell

Сегодня я расскажу как найти все старые списки, элементы которых давно не меняли.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
$arraySite =
"http://site/hr/" # перечень семейства сайтов, через запятую
 
$modifieDate = "09/24/2014 00:00:00"  #дата последнего изменения
 
$ListsInfo = @{}
$TotalItems = 0
Foreach ($currentSite in $arraySite)
{
   $SiteCollection = Get-SPSite $currentSite
   ForEach ($Site in $SiteCollection.AllWebs)
   {
                 ForEach ($List in $Site.Lists)
                 {
                                 if ($List.LastItemModifiedDate -lt $modifieDate)
                                {
                                   $ListsInfo.Add($Site.Url + " - " + $List.Title, $List.LastItemModifiedDate)
                                   $TotalItems += $List.ItemCount
                                }
                 }
   $SiteCollection.Dispose()
   }
}
$ListsInfo.GetEnumerator() | sort name | Format-Table -Autosize
Write-Host "Количество списков: " $ListsInfo.Count
Write-Host "Общее количество элементов: " $TotalItems
получаем такой результат
Обновление!!!
на форуме меня попросили написать аналогичный код для поиска страниц, которые находятся в библиотеках с названием "Страницы сайта" 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
$arraySite =
 
$modifieDate = "01.12.2014 00:00:00"  #дата изменения mm.dd.yyyy
$listTitle = "Страницы сайта"
 
$ListsInfo = @{}
$TotalItems = 0
 
Foreach ($currentSite in $arraySite)
{
   $SiteCollection = Get-SPSite $currentSite
   ForEach ($Site in $SiteCollection.AllWebs)
   {
                 ForEach ($List in $Site.Lists)
                 {
                                 if ($List.Title    -eq $listTitle)
                                {
                                    $items = $List.Items
                                    foreach($item in $items)
                                        {                                          
                                             
                                            if ($item['Modified'-le $modifieDate)
                                            {
                                             
                                               $ListsInfo.Add($Site.Url + " - " + $item.Name , $item['Modified'])
                                               $TotalItems += $List.ItemCount
                                            }
                                        }
 
                                }
 
                 }
   $SiteCollection.Dispose()
   }
}
$ListsInfo.GetEnumerator() | sort name | Format-Table -Autosize
Write-Host "Количество страниц: " $TotalItems

Надеюсь статья будет Вам полезна.