Модуль сервиса интеграции.<Имя обработчика полученного сообщения>

События · <Received message handler name>

Обрабатывает получаемые каналом сервиса интеграции сообщения.

Синтаксис

<Имя обработчика полученного сообщения>(<Сообщение>, <Отказ>)
Полное описание, параметры и ограничения

Модуль сервиса интеграции.<Имя обработчика полученного сообщения> (Integration service module.<Received message handler name>)

Модуль сервиса интеграции (Integration service module)

<Имя обработчика полученного сообщения> (<Received message handler name>)

Доступен, начиная с версии 8.3.17.

Синтаксис:
<Имя обработчика полученного сообщения>(<Сообщение>, <Отказ>)
Параметры:

<Сообщение>
Тип: СообщениеСервисаИнтеграции.
Содержит сообщение сервиса интеграции.

<Отказ>
Признак отмены выполненных в информационной базе изменений.
Если в теле процедуры-обработчика установить данному параметру значение Истина, то изменения, выполненные в информационной базе, отменяются, обработчик будет вызван повторно.
Описание:

Обрабатывает получаемые каналом сервиса интеграции сообщения.

Доступность:

Сервер, толстый клиент, внешнее соединение.

Использование в версии:

Доступен, начиная с версии 8.3.17.

Методическая информация

Практические примеры

Свой входящий канал: журнал и временный повтор

Полный обработчик назначается реальному свойству метаданных своего сервиса. Контракт и результат не подменяются фиктивным запуском.

Где и как запускать

Модуль собственного HTTP-сервиса / Web-сервиса / сервиса интеграции в точности по подготовке.

Подготовка

  1. Общие → Сервисы интеграции: свой УчебныйОбменКниг, входящий канал ВходКниг. Обработчик полученного сообщения — ПринятьУчебноеСообщение из модуля этого сервиса.

  2. Создайте собственную константу ПриемУчебныхСообщенийОстановлен типа Булево. По умолчанию Ложь. Для ручного опыта требуется уже настроенная собственная шина интеграции и только учебное сообщение; пример транспорт не устанавливает и ничего не отправляет.

  3. Наблюдайте собственный журнал регистрации по событиям УчебныйПрием.Получено / УчебныйПрием.Отложено. Идентификатор и размер берутся из сообщения платформы; личное содержимое не записывается в журнал.

  4. Кратковременно включите свою константу для изучения повторного вызова, затем верните Ложь. Отказ=Истина не является штатной паузой очереди: изменения откатываются, сообщение будет обработано повторно, частоту определяет механизм интеграции. Не держите бесконечные повторы в рабочем сервисе.

Процедура ПринятьУчебноеСообщение(Сообщение, Отказ) Экспорт
    Если Константы.ПриемУчебныхСообщенийОстановлен.Получить() Тогда
        Отказ = Истина;
        ЗаписьЖурналаРегистрации("УчебныйПрием.Отложено", УровеньЖурналаРегистрации.Предупреждение,
            , , Строка(Сообщение.Идентификатор));
        Возврат;
    КонецЕсли;
    Комментарий = СтрШаблон("ID %1; размер %2 байт", Сообщение.Идентификатор, Сообщение.РазмерТела);
    ЗаписьЖурналаРегистрации("УчебныйПрием.Получено", УровеньЖурналаРегистрации.Информация, , , Комментарий);
КонецПроцедуры

Разбор по шагам

  1. Создайте указанный собственный сервис / операцию / канал и его учебные данные.

  2. Назначьте функцию или процедуру соответствующему обработчику в Конфигураторе.

  3. Для ручной проверки используйте только собственную тестовую публикацию / шину; здесь внешних вызовов не было.

Как проверить результат

  1. Обработчик получает СообщениеСервисаИнтеграции и настоящий Отказ. Тип не подменяется структурой с полем Тело; у этого объекта нет выдуманного ПолучитьТелоКакСтроку.

  2. При Ложь фиксируются фактические ID / размер; при Истина откатываются изменения обработки и планируется повтор. Постоянная ошибка формата не должна бесконечно отправляться на повтор этим флагом.

Ожидаемый результат

Показана точная сигнатура и обычная обработка конкретного собственного сервиса.

На что обратить внимание

  1. HTTP, SOAP и сервис интеграции имеют разные типы параметров и результатов.

  2. BSL, HTTP-запросы, SOAP-запросы и работа шины при сборке HTML не выполнялись.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.