Настройка сервиса Dynamics 365 CRM
В следующем разделе приведены подробные инструкции по выгрузке файлов настройки для Dynamics 365 CRM.
Предварительные требования
Убедитесь, что в системе установлены инструменты ThingWorx Flow.
Инструменты ThingWorx Flow устанавливаются автоматически вместе с установкой. Дополнительные сведения об инструментах ThingWorx Flow см. в разделе Развертывание соединителей.
Чтобы выполнить это действие, требуется вход с именем администратора ThingWorx.
Шаги
Можно настроить сервис Dynamics 365 CRM одним из следующих способов.
Обновление метаданных OData - сервис Dynamics 365 CRM включает версию 9.0 метаданных OData. Может потребоваться работать с другой версией или добавить изменения в свою версию. В этом случае необходимо обновить файл метаданных Dynamics 365 CRM. Можно загрузить упакованную версию файла метаданных Dynamics 365 CRM для справки и выгрузить свою версию или обновленную версию в свой экземпляр ThingWorx Flow.
Готовый к применению экземпляр ThingWorx Flow поддерживает только несколько сущностей из модели Dynamics 365 CRM. Готовый к применению файл settings.json включает только эти поддерживаемые сущности. Однако в упакованных метаданных OData имеются все сущности, связи и все остальное, что поддерживает Microsoft. Возможно, потребуется проверить Dynamics 365 CRM на наличие дополнительных сущностей и включить их в список сущностей, свойств и связанных элементов, обновив файл settings.json. Затем выгрузите его в свой экземпляр ThingWorx Flow. Будьте внимательны при правке этого файла, поскольку любая ошибка синтаксиса может сделать невозможным использование Dynamics 365 CRM в ThingWorx Flow. Чтобы понять, как обновить этот файл, загрузите упакованный файл и сравните его с используемым файлом метаданных OData.
В следующей таблице приведена информация об атрибутах, которые можно обновить в файле settings.json Dynamics 365 CRM для настройки Dynamics 365 CRM:
Атрибут
Описание
DynamicsApiVersion
Указывает версию интерфейса API Dynamics 365 CRM. По умолчанию задано 9.0.
EntitySetDefinitions
propertyDefinitions
Определяет наборы сущностей Dynamics 365 CRM, которые должны отображаться в интерфейсе пользователя ThingWorx Flow.
Например, чтобы включить набор сущностей accounts в интерфейс пользователя, в атрибуте EntitySetDefinitions укажите следующее:
"name": "accounts",
"include": true,
"label": "Account",
Здесь name указывает наименование набора сущностей Dynamics 365 CRM.
Задайте для include значение true, чтобы отображать набор сущностей в интерфейсе пользователя.
Атрибут label определяет наименование набора сущностей, который требуется отображать в интерфейсе пользователя.
У каждого набора сущностей имеются свойства. Определите свойства из набора сущностей, которые должны отображаться в пользовательском интерфейсе под атрибутом propertyDefinitions. Можно ограничить количество свойств любого набора сущностей, которые должны отображаться в пользовательском интерфейсе, предоставив массивы name и label для свойства.
Например, чтобы отображать свойство accountid, в атрибуте propertyDefinitions атрибута accounts EntitySetDefinitions укажите следующее:
{
"name": "accountid",
"label": "Account ID"
}
Здесь name указывает имя свойства.
Атрибут label определяет имя свойства, которое должно отображаться в интерфейсе пользователя.
Если нужно включить все свойства набора сущностей, задайте значение propertyDefinitions как пустой массив, т. е. "propertyDefinitions": [].
* 
propertyDefinitions не применяется к действиям Выполнить действия и Выполнить функции.
relatedItems
Если добавляются связанные элементы, в возвращаемые данные набора сущностей включаются данные связанных элементов для этого отдельного набора сущностей.
Например, чтобы отображать свойство attachments, в атрибуте relatedItems атрибута accounts EntitySetDefinitions укажите следующее:
{
"name": "attachments",
"label": "Attachments"
}
Здесь name указывает наименование связанного элемента.
Атрибут label определяет наименование связанного элемента, которое должно отображаться в интерфейсе пользователя.
Если не нужно включать никакие связанные элементы набора сущностей, задайте значение relatedItems как пустой массив, т. е. relatedItems: [].
Выгрузка файла метаданных OData
1. Загрузите свою версию файла метаданных, обратившись к нему из своего экземпляра Dynamics 365 CRM. Например: https://host.dynamics.com/api/data/v9.0/$metadata. Имейте в виду, что номер версии должен совпадать с версией вашего экземпляра.
Как вариант, можно также загрузить версию, упакованную с ThingWorx Flow, выполнив следующую команду:
flow-deploy settings file-download -t <URL_ThingWorx_базовая> -u <Имя_администратора_ThingWorx> -p '<Пароль_администратора_ThingWorx>' -f <Путь_к_XML_файлу_метаданных> -s default -c dynamics365 --fileId DynamicsMetadata --contentType application/xml
* 
Значение параметра fileId должно быть задано как DynamicsMetadata.
2. Откройте XML-файл и убедитесь, что требуемая настройка, если применимо, присутствует в загруженном XML-файле. При необходимости измените файл, чтобы добавить свою настройку.
3. Выполните следующую команду, чтобы выгрузить пользовательский файл метаданных OData в свой экземпляр ThingWorx Flow:
flow-deploy settings file-upload -t <URL_ThingWorx_базовая> -u <Имя_администратора_ThingWorx> -p '<Пароль_администратора_ThingWorx>' -f <Путь_к_XML_файлу_метаданных> -s default -c dynamics365 --fileId DynamicsMetadata --contentType application/xml
* 
Значение параметра fileId должно быть задано как DynamicsMetadata.
Выгрузка файла settings.json
1. Выполните следующую команду, чтобы загрузить файл settings.json, упакованный с ThingWorx Flow:
flow-deploy settings download -t <URL_ThingWorx_базовая> -u <Имя_администратора_ThingWorx> -p '<Пароль_администратора_ThingWorx>' -f <Путь_к_файлу_настроек__Dynamics365> -s default -c dynamics365
2. Исправьте файл settings.json и убедитесь, что он совместим с файлом метаданных OData, который планируется использовать.
Убедитесь, что значение DynamicsApiVersion в файле settings.json соответствует версии в файле метаданных OData, выгруженном ранее.
3. Выполните следующую команду, чтобы выгрузить файл settings.json Dynamics 365 CRM:
flow-deploy settings upload -t <URL_ThingWorx_базовая> -u <Имя_администратора_ThingWorx> -p '<Пароль_администратора_ThingWorx>' -f <Путь_к_файлу_настроек__Dynamics365> -s default -c dynamics365
После успешного выполнения всех выгрузок перезапустите все сервисы ThingWorx Flow. Теперь ваша настройка является видимой для всех действий Dynamics 365 CRM.
Было ли это полезно?