Как известно, сейчас Microsoft работает над крупным проектом Patterns and Practices (PnP), в рамках которого выпускает примеры и документацию, демонстрирующие, как наиболее эффективно работать в среде Office 365. Проект хранится в интернет-репозитории GitHub, поэтому каждый может обратиться к источнику и при необходимости получить локальную копию (см. экран 1). Существует три основных репозитория:
- главный репозиторий PnP (https://github.com/OfficeDev/PnP);
- PnP Sites Core (https://github.com/OfficeDev/PnP-Sites-Core);
- PnP PowerShell (https://github.com/OfficeDev/PnP-PowerShell).
Экран 1. Получение Patterns and Practices |
Для доступа к репозиториям достаточно зайти на сайт GitHub, воспользовавшись предоставленными ссылками.
Чтобы использовать этот программный код и построить собственный, нужно сначала загрузить и установить перечисленные ниже компоненты.
- Набор инструментов WIX: http://wix.codeplex.com/.
- Windows Management Framework v4.0: http://www.microsoft.com/en-us/download/details.aspx? id=40855.
После того как необходимые компоненты загружены и установлены, можно приступать к делу. Если вы просто хотите установить компоненты PowerShell, можно загрузить созданные файлы MSI по адресу: https://github.com/officedev/pnp-powershell/releases.
Чтобы использовать команды PowerShell, загрузите нужный файл (см. экран 2). Мы загрузим файл SharePointPnPPowerShellOnline.msi, хотя при желании вы можете загрузить их все.
Экран 2. Доступные компоненты |
- SharePoint 2013: https://github.com/OfficeDev/PnP-PowerShell/releases/download/2.6.1608.0/SharePointPnPPowerShell2013.msi.
- SharePoint 2016: https://github.com/OfficeDev/PnP-PowerShell/releases/download/2.6.1608.0/SharePointPnPPowerShell2016.msi.
- SharePoint Online: https://github.com/OfficeDev/PnP-PowerShell/releases/download/2.6.1608.0/SharePointPnPPowerShellOnline.msi.
После завершения загрузки можно запустить файлы MSI. Все нужные компоненты будут вскоре установлены. Затем необходимо загрузить Powershell Window. Мы будем использовать SharePoint Online и выполним одну из приведенных ниже команд (если ваша операционная система Windows 10).
- SharePoint 2013: Install-Module SharePointPnPPowerShell2013;
- SharePoint 2016: Install-Module SharePointPnPPowerShell2016;
- SharePoint Online: Install-Module SharePointPnPPowerShellOnline.
Пользователям других операционных систем, таких как Windows Server 2012 R2, требуется выполнить следующую команду:
Invoke-Expression (New-Object Net.WebClient). DownloadString ('https:// raw.githubusercontent.com/OfficeDev/ PnP-PowerShell/master/Samples/ Modules.Install/Install-SharePointPnP PowerShell.ps1').
Эта команда загрузит необходимые компоненты и проведет вас по процессу установки (см. экран 3).
Экран 3. Ход процесса установки |
Вначале нужно выбрать версию для установки. По умолчанию используется версия SharePoint Online (см. экран 4).
Экран 4. Выбор версии для установки |
Далее мастер продолжает работу, устанавливая все необходимые компоненты (см. экран 5).
Экран 5. Продолжение установки |
После того как все установлено, можно выполнить простую команду, чтобы увидеть доступные варианты (см. экран 6).
Экран 6. Просмотр доступных вариантов |
Прежде чем приступить к использованию команд SharePoint Online, необходимо назначить учетные данные. Если вы часто вводите одни и те же имена и пароли, сохраните их в диспетчере учетных данных Windows для использования в будущем (см. экран 7).
Экран 7. Ввод учетных данных |
Сохранив учетные данные, можно просто вызвать команду Connect-SPOnline с URL-адресом и использовать ярлык для сохраненных учетных данных.
После того как соединение установлено, можно воспользоваться новыми командами PowerShell для создания, обновления, удаления и чтения из сайта SharePoint Online. С помощью Get-SPOList можно извлекать основные списки из подключенного семейства веб-сайтов, которое использовалось в Connect-SPOnline (см. экран 8).
Экран 8. Использование Get-SPOList |
Как вы могли заметить, я выполнил только две команды, чтобы получить этот список, в то время как обычно мне приходилось запускать много команд для подключения к SharePoint Online, доступа к объектам SPSite и SPWeb, наряду с перебором объектов SPList.
Помимо прочего, эти команды облегчают решение стоящих перед нами задач, предоставляя методы, отсутствующие в основных продуктах SharePoint On-Premises и SharePoint Online, или расширяя их, чтоб сократить объем проектируемого программного кода PowerShell.
Отличным примером тому может служить формирование нового списка (см. экран 9).
Экран 9. Формирование нового списка |
New-SPOList -Title "Sample PnP Docs" -Template DocumentLibrary -Url "SamplePnPDocs"
Полный список команд, их возможности и способы применения можно найти по следующей ссылке: https://github.com/OfficeDev/PnP-PowerShell/blob/master/Documentation/readme.md.
В целом команды PowerShell Patterns and Practices служат отличным дополнением к SharePoint Online или локальной версии SharePoint.