Новая функция для изменения пользовательского языка по умолчанию или языка сеанса

Category: Статьи Post Date: 02.07.2020

На протяжении некоторого времени я думал о создании и распространении определенного функционала для Microsoft Dynamics 365 FO. Сейчас в стандартном приложении есть два способа изменить язык интерфейса. Я создал новую опцию, которую в некоторых случаях было бы проще использовать. В этом посте вы узнаете об этой новой функции и о том, как вы можете получить данное решение бесплатно.

Зачем менять язык

Что может привести к необходимости изменения языка сеанса? Я могу упомянуть несколько возможных причин. Первая причина заключается в том, что ваша учетная запись пользователя, например, была создана с неверным языком по умолчанию.

Вторая причина – когда вы оказываете поддержку в международной среде. Ваш язык по умолчанию может отличаться от вашего коллеги. Если вы хотите сравнить как выглядит конкретный экран или форма, то в некоторых случаях вы хотели бы временно установить свой язык таким же, как и у коллеги. Это облегчит, например, проверку все ли пункты меню доступны при определенной конфигурации системы безопасности.

Другая возможная причина связана с тестированием. Если вам нужно создать решение на нескольких языках, вам нужно проверить, имеют ли смысл переведенные метки в правильном контексте. Например, слово «Invoice» может быть использовано как существительное или глагол. Часто при просмотре файлов меток вы не найдете таких ошибок. Но в контексте приложения вы легко сможете найти такую ошибку. Наверняка вы будете смеяться, если перевод будет выглядеть странно.

В большинстве случаев мне нужно проверять перевод именно на голландский. Я всегда устанавливаю язык по умолчанию на английский, чтобы лучше понимать приложение и изучать деловой английский. Но иногда мне нужно посмотреть на голландскую версию. Тогда мне нужно сменить язык.

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

Язык пользователя по умолчанию

Когда вы переходите в форму Параметры пользователя, вы можете изменить язык, как я уже объяснял ранее в одном из моих постов, связанных с персонализацией. Посты о персонализации сейчас уже устарели. Формы выглядят по-другому в последней версии. Итак, вот скриншот свежей на данный момент среды, где вы можете изменить язык по умолчанию.

После изменения языка по умолчанию необходимо перезагрузить приложение Dynamics 365 в браузере, чтобы изменение языка вступило в силу. Если вы хотите переключить язык обратно, вам снова нужно изменить его в настройках пользователя.

Параметр языка в URL

Если вы хотите изменить язык без изменения настройки по умолчанию в форме параметров пользователя, вы можете манипулировать URL-адресом. Существует параметр запроса, называемый «lng», который также может переключать язык сеанса. Например, «https://dynamicspedia.cloudax.dynamics.com/?cmp=USMF&mi=DefaultDashboard&lng=nl» откроет приложение на голландском языке, независимо от языковых настроек пользователя.

Есть несколько недостатков изменения URL адреса:

  • Возможные ошибки: вы можете опечататься или случайно изменить часть URL
  • Вы должны знать код для каждого языка, который вы хотите использовать
  • Если вы используете новый браузер Edge на основе Chromium и установили Dynamics 365 в качестве приложения браузера, вы не сможете изменить URL

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

Утилита языка сессии

Чтобы иметь более удобный способ изменения языка сессии, я создал форму, в которой перечислены все языки, поддерживаемые в вашей среде. Затем вы можете выбрать, какой язык вы бы хотели временно активировать. Я начну с краткого введения, а затем предоставлю более подробную информацию о решении и о том, где вы можете загрузить решение и исходный код.

Если вы хотите запустить диалоговое окно Session language, вы можете кликнуть на значок конфигурации и выбрать пункт Session language, как показано на следующем скриншоте.

Этот пункт меню откроет диалоговое окно, в котором вы сможете найти нужный язык.

Диалоговая форма содержит три кнопки, которые имеют следующие действия:

ApplyЭто действие изменит текущий язык сеанса и перезагрузит форму Dynamics 365, которая открыта в данный момент.
ResetЭто действие сбросит язык сеанса и перезагрузит Dynamics 365 с вашим языком по умолчанию.
Set defaultЭто действие изменит язык по умолчанию в параметрах пользователя.

Вы можете увидеть утилиту в действии в следующем демо-ролике на YouTube.

Проект на GitHub

Теперь, когда вы знаете, для чего нужен этот инструмент, я расскажу, где вы можете получить бесплатную версию и исходный код утилиты языка сессий. Проект выложен на GitHub. Не стесняйтесь загружать и использовать его там, где хотите. Есть только одно ограничение: не разрешается использовать программное обеспечение в коммерческих целях и зарабатывать деньги, продавая его клиентам. Проект находится здесь: https://github.com/Dynamicspedia/Session-language-Microsoft-Dynamics-365

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

Поддерживаемые языки

Я использовал службы перевода Dynamics 365 для перевода этой утилиты на все языки, доступные в стандартном приложении. Вы можете так же использовать эти сервисы для добавления дополнительных местных языков. Поскольку я не могу знать всех языков, я не проверял правильность всех переводов. Для этого я хотел бы попросить вашей помощи. Если вы обнаружите неправильные переводы меток в вашей среде, пожалуйста, предоставьте мне эту информацию. Затем я смогу создать новый релиз с правильными переводами меток.

Подробности по системе безопасности

Пункт меню этой утилиты имеет свою новую привилегию, которая была добавлена к роли «Пользователь системы». Это означает, что каждый пользователь Microsoft Dynamics 365 сможет использовать эту утилиту. Если вы хотите ограничить доступ, вы можете использовать форму конфигурации безопасности, чтобы изменить ее, или попросить разработчика изменить исходный код в Visual Studio. Эта информация также важна для обеспечения соответствия требованиям безопасности, если вам необходимо сообщать об изменениях аудиторам.

Дисклеймер

Программное обеспечение предоставляется на условиях «как есть». Вы можете свободно использовать и изменять утилиту в соответствии с вашими потребностями. Использование и установка этой утилиты осуществляется на ваш страх и риск. Я не могу нести ответственность за любые ошибки или повреждения вашей среды. По этой причине, пожалуйста, сначала разверните его в тестовой среде, которая не является критичной на вашем проекте. Протестируйте утилиту внимательно, прежде чем использовать в производственной среде заказчика. Я проверял утилиту только на своих собственных песочницах.


Надеюсь, вам понравился этот пост, и он принесет вам пользу в вашей повседневной работе как профессионала.

Пока все. До следующего раза!

Оригинал статьи размещен по ссылке

Подписывайтесь на канал @d365neti в Telegram

Подписаться

Добавить комментарий