Перейти к основному содержимому

Свойства узла процесса интеграции вида «МаршрутизаторПоСодержимому»

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

Свойства узла

  • Имя

    Имя узла, уникальное в рамках процесса интеграции. Используется для обращения к узлу из встроенного языка (УзелСхемыИнтеграции.Имя). Должно начинаться с буквы, за которой следуют буквы, цифры или символы '_' (нижнее подчеркивание). Минимальная длина — 2 символа

  • Описание

    Произвольное описание узла для разработчика. Используется при редактировании схемы процесса интеграции. Недоступно из встроенного языка

  • ОбновлениеМетрик

    Обработчик, внутри которого можно обновлять метрики, добавленные в проект разработчиком. Пример:

    // Разработчик добавил в проект метрику «СчетчикВУзле». Тогда обновить метрику в узлах
    // можно следующим образом:
    метод ОбновлениеМетрик(Контекст: МойПроцессИнтеграции.КонтекстВызова, Сообщение: МойПроцессИнтеграции.Сообщение)
    пер СчетчикВУзле = МойПроцессИнтеграции.Метрики["СчетчикВУзле"]
    СчетчикВУзле.Обновить(Сообщение.УзлыПути.Текущий.Узел.Имя, 1)
    ;
  • ВыборПолучателей

    Обработчик, который позволяет определить получателей сообщения. Возвращает набор узлов, в которые сообщение должно быть передано.

Пример использования

Контекст: Приложение хочет отправить сообщение по протоколу HTTP другой информационной системе. У сообщения может быть две версии формата: новая — которую получатель сможет обработать, и старая — которую получатель обработать не сможет. Если в процесс интеграции поступает сообщение старой версии формата, его формат вначале преобразуется к новой версии, и только после этого доставляется получателю.

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

Решение: Используем ПрограммныйИсточник, как узел, при помощи которого сообщение из обработчика HTTP-сервиса программно отправляется в процесс интеграции. Из программного источника сообщение попадает в контекстный маршрутизатор, в котором сообщение, в зависимости от того, что в нем содержится, либо попадает в узел-транслятор «Трансформация» и преобразуется к нужному формату, либо напрямую попадает в узел 1СНазначение («V2»). Трансформированное сообщение также потом попадает в узел 1СНазначение («V1»).

Обработчик выбора получателей:

метод ТрансформироватьИлиНет(Контекст: КонтекстВызоваИнтеграции, Сообщение: МаршрутизаторПример2.Сообщение): Коллекция<УзелСхемыИнтеграции>
пер СледующийУзел = Сообщение.ПолучитьПараметр("Формат") == 1
? Схема.Узлы.Трансформация
: Схема.Узлы.V2
возврат [СледующийУзел]
;