Как создать пользовательскую сущность в Microsoft Dynamics CRM

Довольно распространенной задачей при работе с Microsoft Dynamics CRM бывает необходимость создания новых объектов в системе, с набором определенных правил поведения и определенных отношений с другими сущностями в CRM. Первый способ – реализовать такой функционал при помощи разработки CRM Add-On. Следует отметить, что данный способ достаточно трудоемок и требует определенного опыта разработчика CRM. И тут приходит на помощь второй способ – разработка пользовательской сущности стандартными средствами Microsoft Dynamics CRM. Подробное описание такой разработки мы и рассмотрим в данной статье. Картинки будут продемонстрированы из англоязычной версии Microsoft Dynamics CRM.

Допустим, компания продает медицинское оборудование - приборы. Каждое продаваемое устройство - прибор должно иметь определенные атрибуты, которые сложно настроить в каталоге продуктов, и возникла необходимость создания новой пользовательской сущности «Приборы» (Devices). Приборы классифицируются по:
· группам приборов;
· типам приборов.

У каждого прибора должны быть определены атрибуты:
· название;
· описание;
· серийный номер;
· группа приборов;
· тип прибора;
· дата продажи;
· кто продал;
· кто купил;
· город, в который произведена продажа.

Группа приборов должна иметь следующие атрибуты:
· название;
· производитель;
· описание.

Определим две новые пользовательские сущности в Microsoft Dynamics CRM «Группа приборов» и «Приборы». В одной группе приборов может быть несколько приборов, поэтому «Прибор» относится к группе приборов, как «много к одному».

Создадим сначала сущность «Группу приборов» (Device groups). Для этого выберем в настройках CRM «Опции\Настройка\Настроить сущности» (Settings\Customizations\Customise Entities).


Нажимаем кнопку «New» для создания новой сущности.
Определяем отображаемое название сущности (Display name) «Device Group», название сущности во множественном числе (Plural Name) «Device Groups», описание (Description) и нажимаем кнопку «Сохранить» (Save).


Далее переходим на закладку «Атрибуты» (Attributes) и создаем новые атрибуты «Производитель» (Producer) и «Описание» (Description). «Производитель» будет выпадающим списком, а «Описание» будет текстовым атрибутом. В выпадающем списке настроим производителей оборудования, с которыми работаем.
Создание атрибута производится на отдельной форме, которая появляется после нажатия кнопки «Новый атрибут» (New).


Для настройки внешнего вида отображения и редактирования сущности «Группа приборов» (Device Group) настроим форму. Для этого переходим на закладку «Формы и представления» (Form and Views). В списке объектов находим форму и выбираем ее для редактирования.


На форму добавляем поля «Производитель» (Producer) и «Описание» (Description), нажатием кнопки «Добавить поля» (Add Fields) и выбором данных полей. Определяем порядок полей нажатием кнопок со стрелками и сохраняем результат.

Далее настраиваем представление для отображения сущности «Группа приборов» (Device Group) в интерфейсе, для этого открываем представление «Активные группы приборов» (Active Device Groups) и настраиваем порядок столбцов и видимость полей. Порядок полей устанавливается кнопками со стрелками. Добавление столбцов представления производится нажатием кнопки «Добавление столбцов» (Add Columns).


Сохраняем все наши настройки и публикуем их.
Чтобы изменения вступили в силу, нажимаем кнопку «Публикация» (Publish) . Это очень важный момент, так как если не опубликовать изменения, то данные настройки ни один пользователь CRM не увидит. Иногда, для вступления в силу изменений, этого недостаточно и при открытии настроенной сущности имеет место быть следующая ошибка:


В этом случае необходимо перегрузить сервер Inernet Information Services, на котором работает CRM. И со стороны клиента перегрузить Internet Explorer, который в данном случае является клиентской частью для работы с Microsoft Dynamics CRM.

В результате после определения нескольких записей сущности «Группы приборов» (Device Groups) получаем сущность, с которой уже можно работать в Microsoft Dymamics CRM. Для примера определим несколько записей сущности «Групп приборов» (Device Groups).


Теперь создадим основную сущность «Приборы» (Devices).

Для этого выберем в настройках CRM «Опции\Настройка\Настроить сущности» (Settings\Customizations\Customise Entities).

Нажимаем кнопку «New» для создания новой сущности.
Определяем отображаемое название сущности (Display name) «Device», название сущности во множественном числе (Plural Name) «Devices», описание (Description) и нажимаем кнопку «Сохранить» (Save).


Далее переходим на закладку «Атрибуты» (Attributes) и создаем новые атрибуты «Город» (City), «Описание» (Description), «Тип прибора» (Device Type), «Дата продажи» (Sale Date), «Серийный номер» (Serial Number). «Город» будет текстовым полем, «Описание» будет текстовым атрибутом, «Тип прибора» будет выпадающим списком (заполняем значения возможные типов прибора), «Дата продажи» будет полем с датой без времени, «Серийный номер» будет текстовым полем. Создание атрибутов производится на отдельной форме, которая появляется после нажатия кнопки «Новый атрибут» (New).


Теперь настроим связи объекта «Прибор» (Device) с другими сущностями системы. Обратим Ваше внимание, что атрибуты прибора «Группа приборов», «Кто продал» и «Кто купил» еще не определены. Эти атрибуты будут созданы автоматически после настройки отношений между сущностями.
Прибор будет иметь отношение «один ко многим» к сущности группа приборов. После настройки такого отношения у нас автоматически появится новый атрибут «Группа приборов» (Device Group). Для настройки такого отношения нужно выбрать вкладку «N:1 отношения» (N:1 Relationships) и нажать кнопку «Создать новое отношение» (New Many-to-1 RelationShip).


В поле «Первичная сущность» (Primary Entity) указываем «Группу приборов» (Device Group). В поле «Отображаемое название» (Display Name) указываем название атрибута, который автоматически появится в сущности «Прибор». После указания вышеперечисленных настроек нажимаем кнопку «Сохранить» (Save) в верхнем меню страницы.
Аналогичным образом настраиваем отношение к сущности «клиенты» (Accounts), автоматически определяя атрибут «Кто купил» (Account), и отношение к сущности «пользователи» (Accounts), автоматически определяя атрибут «Кто продал» (Seller).
Теперь все атрибуты сущности «Прибор» (Device) настроены.


Для настройки внешнего вида отображения и редактирования сущности «Прибор» настроим форму. Для этого переходим на закладку «Формы и представления» (Form and Views). В списке объектов находим форму и выбираем ее для редактирования.


На форму добавляем все поля, указанные на рисунке, нажатием кнопки «Добавить поля» (Add Fields) и выбором данных полей. Определяем порядок полей нажатием кнопок со стрелками и сохраняем результат.

Далее настраиваем представление для отображения сущности «Прибор» (Device) в интерфейсе, для этого открываем представление «Активные приборы» (Active Devices) и настраиваем порядок полей и видимость полей. Порядок полей устанавливается кнопками со стрелками. Добавление столбцов представления производится нажатием кнопки «Добавление столбцов» (Add Columns). Представление «Активные приборы» выделено звездочкой, что означает, что данное представление будет выводиться клиенту при открытии сущности «Прибор» (Device).


Сохраняем все наши настройки и публикуем их.
Чтобы изменения вступили в силу, нажимаем кнопку «Публикация» (Publish) .

В результате получаем сущность «Приборы» (Devices), с которой уже можно работать в Microsoft Dymamics CRM. Здесь для примера я определил несколько записей сущности «Приборы».


В итоге мы получили новую пользовательскую сущность «Приборы» (Devices), которую настроили в соответствии с нашими требованиями, чтобы обеспечить максимальное удобство в своей работе.

Данный пример демонстрирует насколько гибкой системой является Microsoft Dynamics CRM и адаптируемой под различные задачи.

Свяжитесь с нами