PnP PowerShell: зависимость от языка профиля

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

Проблема

В ходе различных проектов клиентов возникала проблема, которую было трудно объяснить: „иногда“ команды PnP не показывали ожидаемого поведения. Например, разработчик мог успешно обновить описание страницы SharePoint, но изменения не были видны другим пользователям! Кроме того, при экспорте шаблона страницы с Get-PnPSiteTemplate имена библиотек документов, полей и представлений сохранялись на английском языке, хотя веб-сайт был настроен на немецкий.

Причина

Обе проблемы имеют одну и ту же причину: команды PnP зависят от языка пользователя, выполняющего сценарий PnP.

Какой язык имеется в виду? SharePoint, веб-браузер или Delve?

Решающим языком является язык профиля пользователя Microsoft 365, то есть Delve.

Решение: избегайте проблем

Зная это, можно избежать многих проблем, связанных с языком. Прежде чем обновлять языкозависимые поля или экспортировать шаблон сайта, задайте себе следующий вопрос:
Какой язык у меня установлен? Обновления и экспорт всегда основаны на языке, установленном в вашем профиле Delve. Например, если вы хотите использовать шаблон страницы для немецкого сайта, перед началом экспорта убедитесь, что в профиле пользователя установлен немецкий язык. Таким образом, имена библиотек документов и других объектов будут экспортироваться и импортироваться на немецком языке. То же самое относится к именам столбцов и представлений.
Также обратите внимание на языковые настройки для описания страниц: В нашем примере разработчик имел английский профиль и видел сайт на английском языке (браузер также на английском). Другие пользователи с немецким профилем и браузером не могли видеть изменения в описании страницы, поскольку PnP-обновления изменяли только английскую версию строки.

Заключение

При использовании команд PnP PowerShell необходимо учитывать язык пользовательского профиля выполняющего их пользователя. Подробные инструкции по изменению языка можно найти в FAQ по Delve в разделе „Как изменить язык в Delve“.