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

Область применения: ✓ Все пользовательские модели | ✓ Все предварительно созданные модели

Важно!

Командлеты PowerShell Microsoft Syntex и все остальные компоненты PnP являются инструментами с открытым кодом, поддерживаемыми активным сообществом, поддерживающим их. Со стороны официальных каналов поддержки Майкрософт отсутствуют соглашения об уровне обслуживания (SLA) для инструментов с открытым исходным кодом.

Модели Syntex обычно развертываются в библиотеках документов в клиенте. Это можно сделать с помощью сайта центра содержимого, но это также можно сделать с помощью PnP PowerShell , как описано в этой статье.

Перечисление доступных моделей в центре содержимого

Чтобы получить обзор моделей, добавленных на текущий сайт центра содержимого Syntex, используйте командлет Get-PnPSyntexModel :

Connect-PnPOnline -Url "https://contoso.sharepoint.com/sites/yourContentCenter"
Get-PnPSyntexModel

Применение модели к библиотеке

Чтобы применить модель к библиотеке, используйте командлет Publish-PnPSyntexModel :

Connect-PnPOnline -Url "https://contoso.sharepoint.com/sites/yourContentCenter"
Publish-PnPSyntexModel -Model "Contract Notice" -ListWebUrl "https://contoso.sharepoint.com/sites/finance" -List "Documents"

Общие сведения об использовании модели

После развертывания модели во многих библиотеках может потребоваться просмотреть список библиотек, использующих вашу модель. Это можно сделать с помощью командлета Get-PnPSyntexModelPublication :

Connect-PnPOnline -Url "https://contoso.sharepoint.com/sites/yourContentCenter"
Get-PnPSyntexModelPublication -Identity "Contract Notice"

Удаление модели из библиотеки

Удаление модели из библиотеки выполняется по той же схеме, что и при применении. Его можно выполнить с помощью командлета Unpublish-PnPSyntexModel либо в интерактивном режиме, либо в виде пакета из нескольких действий.

Connect-PnPOnline -Url "https://contoso.sharepoint.com/sites/yourSite"
Unpublish-PnPSyntexModel -Model "Invoice model" -ListWebUrl "https://contoso.sharepoint.com/sites/finance" -List "Documents"

Массовое применение моделей

Если вы хотите опубликовать несколько моделей в нескольких библиотеках, создайте входной CSV-файл со списком моделей и целевых расположений:

ModelName,TargetSiteUrl,TargetWebServerRelativeUrl,TargetLibraryServerRelativeUrl
Contract Notice,https://contoso.sharepoint.com/sites/Site1,/sites/Site1,/sites/site1/shared%20documents
Contract Notice,https://contoso.sharepoint.com/sites/Site1,/sites/Site1,/sites/site1/other
Trade Confirmation,https://contoso.sharepoint.com/sites/Site2,/sites/Site2,/sites/site2/shared%20documents

Затем этот CSV-файл можно использовать в качестве входных данных в скрипт, который будет публиковать перечисленные модели в соответствующих библиотеках. В следующем примере пакетная обработка используется для повышения эффективности запросов.

$contentCenterURL = "https://contoso.sharepoint.com/sites/yourSite"
$targetsCSV = "./Publish-SyntexModelBulk.csv"

Connect-PnPOnline -url $contentCenterURL

$targetLibraries = Import-Csv -Path $targetsCSV

$batch = New-PnPBatch

foreach ($target in $targetLibraries) {
    Publish-PnPSyntexModel -Model $target.ModelName -TargetSiteUrl $target.TargetSiteUrl -TargetWebServerRelativeUrl $target.TargetWebServerRelativeUrl -TargetLibraryServerRelativeUrl $target.TargetLibraryServerRelativeUrl -Batch $batch
}

Invoke-PnPBatch -Batch $batch