Сообщения Exchange RosettaNet для интеграции B2B с помощью рабочих процессов в Azure Logic Apps
Область применения: Azure Logic Apps (потребление)
Для отправки и получения сообщений RosettaNet в рабочих процессах, создаваемых с помощью Azure Logic Apps, можно использовать соединитель RosettaNet, который предоставляет действия, которые управляют и поддерживают обмен данными, которые соответствуют стандартам RosettaNet. RosettaNet — это некоммерческий консорциум, который устанавливает стандартные процессы для совместного использования бизнес-информации. Эти стандарты обычно используются для процессов цепочки поставок и широко распространены в отраслях производства полупроводников, электроники и логистики. Консорциум RosettaNet создает и обслуживает процессы партнерского интерфейса (PIP), которые предоставляют общие определения бизнес-процессов для всех операций обмена сообщениями RosettaNet. RosettaNet основан на XML и определяет рекомендации по сообщениям, интерфейсы для бизнес-процессов и платформы реализации для обеспечения связи между компаниями. Дополнительные сведения см. на сайте RosettaNet.
Соединитель основан на платформе реализации RosettaNet (RNIF) версии 2.0.01 и поддерживает все IP-адреса, определенные этой версией. Платформа RNIF — это открытая платформа сетевых приложений, позволяющая деловым партнерам совместно работать с PIP-процессами RosettaNet. Эта платформа определяет структуру сообщений, необходимость подтверждений, кодирование MIME и цифровую подпись. Связь с партнером может быть синхронной или асинхронной. Соединитель предоставляет следующие возможности:
- Получение или декодирование сообщений RosettaNet.
- Отправка или кодирование сообщений RosettaNet.
- ожидание ответа и создание уведомления об ошибке.
В этом руководстве показано, как отправлять и получать сообщения RosettaNet в рабочих процессах с помощью Azure Logic Apps и соединителя RosettaNet, выполнив следующие задачи:
- Добавьте конфигурацию процесса PIP, если у вас еще нет.
- Создайте соглашение RosettaNet.
- Добавьте действие, которое получает или декодирует сообщения RosettaNet.
- Добавьте действие, которое отправляет или кодирует сообщения RosettaNet.
Основные понятия RosettaNet
Следующие понятия и термины уникальны для спецификации RosettaNet и важны для того, чтобы знать при создании рабочих процессов интеграции на основе RosettaNet:
Процессы партнерского интерфейса (PIP)
Организация RosettaNet создает и обслуживает IP-адреса, которые предоставляют общие определения бизнес-процессов для всех обменов сообщениями RosettaNet. Каждая спецификация PIP предоставляет файл определения типа документа (DTD) и документ с рекомендациями по сообщениям. DTD-файл определяет структуру сообщений содержимого службы. Документ руководства по сообщению, который является удобочитаемым HTML-файлом, определяет ограничения на уровне элементов. Вместе эти файлы обеспечивают полное определение бизнес-процесса.
PIP-процессы классифицируются по бизнес-функции высокого уровня, кластеру, подфункции или сегменту. Например, "3A4" — это PIP для заказа на покупку, где "3" — это функция управления заказами, а "3A" — подфункция записи предложения с расценками и заказа. Дополнительные сведения см. на сайте RosettaNet.
Действие
В рамках PIP сообщения о действиях являются бизнес-сообщениями, которыми обмениваются партнеры.
Сигнал
В рамках PIP сообщения о сигналах являются подтверждениями, которые отправляются в ответ на сообщения о действиях.
Одиночное действие и двойное действие
Для PIP с одиночным действием единственным ответом является сообщение с сигналом подтверждения. Для PIP с двойным действием инициатор получает ответное сообщение и отвечает подтверждением, а также потоком сообщений с одиночным действием.
Технический справочник по соединителю
Соединитель RosettaNet доступен только для рабочих процессов приложения логики потребления.
Приложение логики | Среда | Версия соединителя |
---|---|---|
Потребление | Мультитенантные Azure Logic Apps | Управляемый соединитель, который отображается в конструкторе под меткой "Стандартный". Соединитель RosettaNet предоставляет только действия, но можно использовать любой триггер, который работает в вашем сценарии. Дополнительные сведения см. в следующей документации: - Операции соединителя RosettaNet - Ограничения протокола B2B для размеров сообщений - Управляемые соединители в Azure Logic Apps |
Операции RosettaNet
Соединитель RosettaNet не имеет триггеров. В следующей таблице описываются действия, которые обеспечивает соединитель RosettaNet для обеспечения безопасности и надежности при передаче сообщений:
Действие | Description |
---|---|
Действие кодирования RosettaNet | Отправьте сообщения RosettaNet с помощью кодировки, которая соответствует стандартам RosettaNet. |
Действие расшифровки RosettaNet | Получение сообщений RosettaNet с помощью декодирования, соответствующего стандартам RosettaNet. |
RosettaNet ожидает действия ответа | Дождитесь ответа RosettaNet или сигнального сообщения от получателя. |
Необходимые компоненты
Учетная запись и подписка Azure. Если у вас нет подписки, создайте бесплатную учетную запись.
Ресурс приложения логики потребления и рабочий процесс, в котором требуется использовать операции RosettaNet.
Учетная запись интеграции для хранения соглашения и других артефактов бизнес-бизнеса (B2B).
Внимание
Для включения совместной работы ваша учетная запись интеграции и ресурс приложения логики должны существовать в одной подписке Azure и регионе Azure. Чтобы использовать артефакты учетной записи интеграции в рабочем процессе, обязательно свяжите ресурс приложения логики с учетной записью интеграции.
По крайней мере два партнера, определенные в учетной записи интеграции, и используйте квалификатор DUNS в разделе "Бизнес-удостоверения" в портал Azure.
Примечание.
Убедитесь, что вы выбрали DUNS в качестве квалификатора, который можно найти в нижней части списка квалификатора, а не 1 - D-U-N-S (Dun & Bradstreet).
Необязательные сертификаты для шифрования, расшифровки или подписи сообщений, отправляемых в учетную запись интеграции. Сертификаты требуются только в том случае, если используется подпись или шифрование.
Добавление конфигурации PIP-процесса
Для отправки или получения сообщений RosettaNet учетная запись интеграции требует конфигурации процесса PIP, если у вас еще нет. В конфигурации процесса хранятся все характеристики конфигурации PIP. После этого можно ссылаться на эту конфигурацию при создании соглашения с партнером.
В портал Azure перейдите к учетной записи интеграции.
В меню навигации учетной записи интеграции в разделе "Параметры" выберите RosettaNet PIP.
На странице RosettaNet PIP нажмите кнопку "Добавить". На панели "Добавление процесса интерфейса партнера" введите данные PIP.
Свойство Обязательное поле Description Полное имя Да Имя PIP. Код PIP Да Трехзначный код PIP. Дополнительные сведения см. в статье о PIP-процессах RosettaNet. Версия PIP Да Номер версии PIP, который зависит от выбранного кода PIP. Дополнительные сведения об этих свойствах PIP-процесса см. на веб-сайте RosettaNet.
По завершении нажмите кнопку "ОК ", чтобы создать конфигурацию PIP.
Чтобы просмотреть или изменить конфигурацию процесса, выберите PIP и выберите "Изменить в формате JSON".
Все параметры конфигурации процесса передаются из спецификаций PIP. Azure Logic Apps заполняет большую часть параметров значениями по умолчанию, которые являются наиболее часто используемыми значениями для этих свойств.
Убедитесь, что параметры отвечают значениям в соответствующей спецификации PIP, а также потребностям вашего бизнеса. При необходимости обновите значения в JSON и сохраните эти изменения.
Создание соглашения RosettaNet
В портал Azure перейдите к учетной записи интеграции.
В меню навигации учетной записи интеграции в разделе "Параметры" выберите "Соглашения".
На странице "Соглашения" нажмите кнопку "Добавить". В разделе "Добавить" введите сведения о соглашении.
Свойство Обязательное поле Description Полное имя Да Имя соглашения. Тип соглашения Да Тип соглашения. Выберите RosettaNet. Партнер узла Да Организация, настраивающая соглашение. Для соглашения нужно указать главного партнера и гостевого партнера. Удостоверение узла Да Идентификатор главного партнера. Гостевой партнер Да Организация, которая занимается бизнесом с ведущим партнером. Для соглашения нужно указать главного партнера и гостевого партнера. Удостоверение гостя Да Идентификатор партнера-гостя. Параметры получения Разные Свойства, которые применяются ко всем сообщениям, полученным партнером узла. Параметры отправки Разные Свойства, которые применяются ко всем сообщениям, отправленным партнером узла. Ссылки для PIP-процесса RosettaNet Да Ссылки для PIP-процесса для соглашения. Для всех сообщений RosettaNet требуются конфигурации PIP. Чтобы настроить соглашение для получения входящих сообщений от гостевого партнера, выберите Настройки получения.
Чтобы включить подписывание или шифрование входящих сообщений, в разделе "Сообщение" выберите "Сообщение должно быть подписано" или "Сообщение должно быть зашифровано соответственно".
Свойство Обязательное поле Описание Сообщение должно быть подписано No Параметр для подписывания входящих сообщений с выбранным сертификатом Сертификат Да, если включена подпись Сертификат, используемый для подписи. Включение шифрования сообщений No Параметр шифрования входящих сообщений с выбранным сертификатом Сертификат Да, если включено шифрование Сертификат, используемый для шифрования. В каждом выборе выберите сертификат в учетной записи интеграции, которую вы хотите использовать для подписывания или шифрования.
Чтобы настроить соглашение для отправки сообщений гостевому партнеру, выберите Настройки отправки.
Чтобы включить подписывание или шифрование исходящих сообщений, в разделе "Сообщения" выберите "Включить подпись сообщений" или "Включить шифрование сообщений" соответственно. В каждом выборе выберите алгоритм и сертификат в учетной записи интеграции, которую вы хотите использовать для подписывания или шифрования.
Свойство Обязательное поле Описание Включение подписывания сообщений No Параметр для подписывания исходящих сообщений с помощью выбранного алгоритма подписи и сертификата Алгоритм подписывания Да, если включена подпись Используемый алгоритм подписи в зависимости от выбранного сертификата. Сертификат Да, если включена подпись Сертификат, используемый для подписи. Включение шифрования сообщений No Параметр шифрования исходящих сообщений с помощью выбранного алгоритма шифрования и сертификата Алгоритм шифрования Да, если включено шифрование Используемый алгоритм шифрования в зависимости от выбранного сертификата. Сертификат Да, если включено шифрование Сертификат, используемый для шифрования. В разделе Конечные точки укажите необходимые URL-адреса, которые будут использоваться для отправки подтверждений и сообщений о действиях.
Свойство Обязательное поле Описание URL-адрес действия Да URL-адрес, используемый для отправки сообщений о действиях. URL-адрес является обязательным полем как для синхронных, так и для асинхронных сообщений. Acknowledgment URL (URL-адрес подтверждения) Да URL-адрес, используемый для отправки сообщений с подтверждением. URL-адрес является обязательным полем для асинхронных сообщений.
Чтобы настроить соглашение со ссылками для PIP-процесса RosettaNet для партнеров, выберите Ссылки для PIP-процесса RosettaNet. В разделе "Имя PIP" выберите имя созданного ранее PIP.
Выбранные значения заполняют оставшиеся свойства в зависимости от PIP-процесса, настроенного в учетной записи интеграции. При необходимости вы можете изменить роль PIP.
После выполнения этих действий вы сможете отправлять или получать сообщения RosettaNet.
Получение или декодирование сообщений RosettaNet
На портале Azure откройте рабочий процесс приложения логики уровня "Потребление" в конструкторе.
Рабочий процесс уже должен иметь триггер и любые другие действия, которые необходимо выполнить перед добавлением действия RosettaNet. Этот пример продолжается с триггером запроса.
В разделе триггера или действия выберите новый шаг.
Под полем поиска Choose an operation (Выберите действие) выберите вкладку Все. В поле поиска введите rosettanet. В списке действий выберите действие с именем RosettaNet Decode.
Введите сведения о свойствах действия:
Свойство Обязательное поле Описание Сообщение Да Сообщение RosettaNet для декодирования. Заголовки Да Заголовки HTTP, которые предоставляют значения для версии, которая является версией платформы RNIF, а также типом ответа, который указывает тип связи между партнерами и может быть синхронным или асинхронным. Роль Да Роль главного партнера в процессе PIP. Выходные данные действия Расшифровки RosettaNet включают исходящий сигнал. Вы можете закодировать эти выходные данные и вернуть его партнеру или выполнить любое другое действие по этому выходу.
Отправка или кодирование сообщений RosettaNet
На портале Azure откройте рабочий процесс приложения логики уровня "Потребление" в конструкторе.
Рабочий процесс уже должен иметь триггер и любые другие действия, которые необходимо выполнить перед добавлением действия RosettaNet. Этот пример продолжается с триггером запроса.
В разделе триггера или действия выберите новый шаг.
Под полем поиска Choose an operation (Выберите действие) выберите вкладку Все. В поле поиска введите rosettanet. В списке действий выберите действие с именем RosettaNet Encode.
Введите сведения о свойствах действия:
Свойство Обязательное поле Описание Сообщение Да Сообщение RosettaNet для кодирования Главный партнер Да Имя главного партнера Гостевой партнер Да Имя гостевого партнера Код PIP Да Код PIP-процесса Версия PIP Да Версия PIP-процесса Идентификатор экземпляра PIP-процесса Да Уникальный идентификатор для этого сообщения PIP-процесса Тип сообщения Да Тип сообщения для кодирования Роль Да Роль главного партнера Закодированное сообщение готово к отправке партнеру.
Для отправки закодированного сообщения в следующем примере используется действие HTTP, которое переименовано в HTTP — отправка закодированного сообщения партнеру.
Согласно стандартам RosettaNet, бизнес-транзакции считаются завершенными только после завершения всех шагов, определенных PIP.
После того как узел отправляет закодированное сообщение партнеру, узел ожидает сигнала и подтверждения. Чтобы выполнить эту задачу, добавьте действие с именем RosettaNet, ожидающее ответа.
Продолжительность ожидания и количество повторных попыток зависят от конфигурации PIP-процесса в учетной записи интеграции. Если ответ не получен, создается уведомление о сбое. Для обработки повторных попыток всегда размещайте действия Кодирование и Ожидание ответа в цикле Until.
Шаблоны RosettaNet
Чтобы ускорить разработку и рекомендовать шаблоны интеграции, можно использовать шаблоны приложений логики потребления для декодирования и кодирования сообщений RosettaNet. При создании рабочего процесса приложения логики потребления можно выбрать из коллекции шаблонов в конструкторе. Эти шаблоны также можно найти в репозитории GitHub для Azure Logic Apps.