Получить имя пользователя в Microsoft Dynamics CRM с помощью JavaScript

В данной статье мы рассмотрим быстрый способ получения имени пользователя с помощью JavaScript в Microsoft Dynamics CRM.

Существуют три полезные функции, позволяющие получить сведения о текущем пользователе в Microsoft Dynamics CRM:

getUserId

Данная функция возвращает значение уникального идентификатора (GUID) текущего пользователя CRM.

Xrm.Page.context.getUserId();

getUserName

Данная функция возвращает имя пользователя.

Xrm.Page.context.getUserName();

getUserRoles

Данная функция возвращает массив строке, содержащий значения идентификаторов (GUID) ролей безопасности, которые связанны с текущим пользователем или роли команд, в которые входит текущий пользователь.

Xrm.Page.context.getUserRoles();

Рассмотрим элементарный пример использования данных команд. Давайте выведем информацию по текущем пользователе в сообщении при нажатии кнопки. Для этого мы можем создать кнопку на ленте-меню (ribbon) на которую повесим обработчик события нажатия. Подробнее о том, как создавать кнопки на риббоне и добавлять обработчики их нажатия описано в статье Добавление кнопки на меню-ленту (ribbon) Microsoft Dynamics CRM.

Для начала с помощью плагина для утилиты XrmToolBox под названием Ribbon Workbench 2016 создадим кнопку и команду для нее с представленным ниже содержимым.

Установка свойств кнопки риббона
Установка свойств обработчика нажатия на кнопку риббона

Теперь с помощью плагина Web Resources Manager этой же утилиты XrmToolBox создадим и опубликуем JavaScript ресурс со следующим содержимым:

function GetUserInfo() {
    var id = Xrm.Page.context.getUserId();
    var login = Xrm.Page.context.getUserName();
    var groups = Xrm.Page.context.getUserRoles();
    var message = "Идентификатор пользователя: " + id + "\r\n";
    message += "Имя пользователя: " + login + "\r\n";
    message += "Роли безопасности пользователя:\r\n";
    groups.forEach(function(currentValue, index, array) {
        var number = index + 1;
        message += number + ". " + currentValue;
    });

    alert(message);
}

Теперь нам остается только проверить результат работы нашего скрипта на форме интереса (lead).

Нажимаем на кнопку риббона и получаем следующее сообщение.