1C:Шина
Справочник по объектной модели встроенного языка технологии “1C:Шина”
Примеры
В примерах документации интеграционной шины используется процесс интеграции СетьМагазинов
, ниже представлена его схема.
В процессе СетьМагазинов
реализованы следующие сценарии интеграции:
- Интеграция офисов и магазинов для отправки и получения документов (узлы
ВМагазины
,ВОфис
типа ВидУзлаСхемы,ВходящиеМагазина
,ВходящиеОфиса
типа ВидУзлаСхемы). - Интеграция офиса и WEB витрины для периодического (узел
Таймер
типа ВидУзлаСхемы) опроса и экспорта данных по протоколу http (узелОпросВитрины
типа ВидУзлаСхемы с контролем и протоколированием ошибок (узелЕслиОшибкаHttp
типа ВидУзлаСхемы,ПротоколОшибок
типа ВидУзлаСхемы). - Интеграция офиса и WEB витрины для загрузки (узел
ВызовВитрины
типа ВидУзлаСхемы упакованных в ZIP-архив документов (узелУпаковкаДляВитрины
типа ВидУзлаСхемы с контролем и протоколированием ошибок (узелЕслиОшибкаHttp2
типа ВидУзлаСхемы,ПротоколОшибок
типа ВидУзлаСхемы). - Интеграция офиса и фирм-партнеров для получения (узел
ВходящиеОтПартнеров
типа ВидУзлаСхемы) при необходимости (узелПроверкаУпаковки
типа ВидУзлаСхемы) упакованных в ZIP-архив (узелУпаковкаДляОфиса
типа ВидУзлаСхемы документов от фирм-партнеров двумя способами: по событию (узелОтПартнеров
типа ВидУзлаСхемы), инициируемому из http-сервиса процесса интеграции, а также путем выполнения периодических (узелТаймерОпросаПартнеров
типа ВидУзлаСхемы) http-запросов (узелОпросПартнеров
типа ВидУзлаСхемы ко всем системам-участникам группы.
Таким образом, процесс интеграции СетьМагазинов
содержит примеры следующих типов узлов:
- ВидУзлаСхемы используется для реализации периодически повторяющегося сценария:
- Узел
Таймер
каждые 15 секунд (настраивается в свойствеПериод
) формирует сообщение в узелОпросВитрины
типа [ВидУзлаСхемы](/console/help/esb/2.1/api/esb/ru/Std/IntegrationBus/SchemeNodeKind_ru.html#http] для экспорта данных витрины путем выполнения http-запроса, а результат отправляется в ВидУзлаСхемыОтВитрины
. - Узел
ТаймерОпросаПартнеров
каждые 15 секунд (настраивается в свойствеПериод
) формирует сообщение в узелОпросПартнеров
типа [ВидУзлаСхемы](/console/help/esb/2.1/api/esb/ru/Std/IntegrationBus/SchemeNodeKind_ru.html#http] для выполнения http-запросов получения документов от фирм-партнеров.
- Узел
- ВидУзлаСхемы используется для отправки сообщений в 1С:Шина из 1С:Предприятие:
- Канал
ВМагазины
служит для отправки документов из офиса в магазины через каналВходящиеМагазинов
типа ВидУзлаСхемы. - Канал
ВОфис
служит для отправки документов из магазинов в офис через каналВходящиеОфиса
типа ВидУзлаСхемы. - Сообщения из канала
НаВитрину
упаковываются в ZIP-архив в узлеУпаковкаДляВитрины
типа [ВидУзлаСхемы](/console/help/esb/2.1/api/esb/ru/Std/IntegrationBus/SchemeNodeKind_ru.html#транслятор] и затем отправляются на WEB витрину путем выполнения http-запроса в узлеВызовВитрины
типа [ВидУзлаСхемы](/console/help/esb/2.1/api/esb/ru/Std/IntegrationBus/SchemeNodeKind_ru.html#http].
- Канал
- ВидУзлаСхемы используется для получения сообщений из 1С:Шина в 1С:Предприятие:
- Канал
ВходящиеМагазина
служит для получения документов от офиса магазином. - Канал
ВходящиеОфиса
служит для получения документов от магазинов офисом. - Канал
ВходящиеОтПартнеров
служит для получения документов от фирм-партнеров офисом. - Канал
ОтВитрины
служит для получения заказов от WEB витрины офисом.
- Канал
- ВидУзлаСхемы используется для сохранения сообщений 1С:Шина в файл:
- Узел
ПротоколОшибок
служит для сохранения ошибок обращения к WEB витрине в протокольный файл (настраивается в свойствахКаталог
,ИмяФайла
).
- Узел
- [ВидУзлаСхемы](/console/help/esb/2.1/api/esb/ru/Std/IntegrationBus/SchemeNodeKind_ru.html#http] используется для выполнения http-запросов к внешним системам:
- Узел
ОпросВитрины
служит для импорта данных из WEB витрины по протоколу http (параметры настраиваются в свойствахUri
,Метод
). - Узел
ВызовВитрины
служит для загрузки документов на WEB витрину по протоколу http (параметры настраиваются в свойствахUri
,Метод
). - Узел
ОпросПартнеров
служит для получения документов от фирм-партнеров по протоколу http с базовой аутентификацией (параметры настраиваются в свойствахUri
,Метод
,ИмяПользователя
,Пароль
). Так как узел связан с группойПартнеры
, при обработке одного сообщения узел отправляет отдельный http-запрос каждой системе-участнику данной группы. При этом параметры каждого запроса индивидуальные и настраиваются с использованием значений реквизитов справочника участников.
- Узел
- [ВидУзлаСхемы](/console/help/esb/2.1/api/esb/ru/Std/IntegrationBus/SchemeNodeKind_ru.html#транслятор] используется для преобразования сообщений в 1С:Шина:
- В узле
УпаковкаДляВитрины
выполняется упаковка документов в ZIP-архив перед отправкой на WEB витрину. Программный код, выполняющий упаковку, реализован в обработчикеПреобразование
. - В узле
УпаковкаДляОфиса
выполняется упаковка документов от фирм-партнеров в ZIP-архив перед отправкой в офис. Программный код, выполняющий упаковку, реализован в обработчикеПреобразование
. - В узле
ФормированиеПротокола
выполняется форматирование информации об ошибке http-запроса для последующего сохранения в протокольный файл.
- В узле
- ВидУзлаСхемы используется для маршрутизации сообщений 1С:Шина, например, ветвления по условию:
- В узлах
ЕслиОшибкаHttp
,ЕслиОшибкаHttp2
выполняется проверка, что в результате http-запроса к WEB витрине получена ошибка. В обработчикеВыборПолучателей
в зависимости от результата определяется дальнейший путь сообщения: или в канал получателя, или в узел протоколирования ошибки. - В обработчике
ВыборПолучателей
узлаПроверкаУпаковки
выполняется проверка, требуется ли упаковать документ в ZIP-архив в узлеУпаковкаДляОфиса
типа [ВидУзлаСхемы](/console/help/esb/2.1/api/esb/ru/Std/IntegrationBus/SchemeNodeKind_ru.html#транслятор].
- В узлах
- ВидУзлаСхемы используется для программной отправки сообщения в 1С:Шина:
- Http-сервис процесса интеграции вызовом метода [ПроцессИнтеграции.ОтправитьСообщениеВУзлы] отправляет сообщение с документом от фирмы-партнера в узел
ОтПартнеров
.
- Http-сервис процесса интеграции вызовом метода [ПроцессИнтеграции.ОтправитьСообщениеВУзлы] отправляет сообщение с документом от фирмы-партнера в узел
Процесс интеграции СетьМагазинов
содержит три группы участников интеграции: Офис
, Магазины
и Партнеры
. Группы соединены с каналами ВидУзлаСхемы и ВидУзлаСхемы, а также с узлом [ВидУзлаСхемы](/console/help/esb/2.1/api/esb/ru/Std/IntegrationBus/SchemeNodeKind_ru.html#http]. В узле ОпросПартнеров
демонстрируется использование реквизитов расширения справочника участника для настройки свойств узла. Так, в расширении справочника для каждого участника хранятся настройки http-запроса: адрес, порт, метод запроса, имя пользователя и пароль.
Также процесс интеграции демонстрирует использование параметров (их в примере два: ЧастотаОпросаВитрины
типа Длительность и строковый ДиректорияЛогов
), и метрик (Архивы
).