8. Механизмы интеграции и обмена данными
#8

Готовишься к экзамену?

Полнофункциональный тренажер @bot_1cnik_bot с полноценным обучением, режимом экзамена и подробной статистикой.

Перейти в бота

Событие "ПриПолученииДанныхОтПодчиненного", определенное в модуле плана обмена, возникает при получении данных от подчиненного узла:

При отмеченном у данного плана обмена флаге "Распределенная база данных"
Правильно: Событие «ПриПолученииДанныхОтПодчиненного» относится к сценарию обмена в распределенной информационной базе, где есть главный и подчиненные узлы. Поэтому оно срабатывает именно для планов обмена, настроенных как РИБ, при получении данных от подчиненного узла.
При не отмеченном у данного плана обмена флаге "Распределенная база данных"
Неправильно: При выключенном признаке РИБ план обмена не работает в топологии «главный-подчиненный», и соответствующие события для подчиненных узлов не применяются. В таком режиме обработчик «ПриПолученииДанныхОтПодчиненного» не является штатной точкой входа при загрузке данных.
Состояние данного флага на вызов этого обработчика события не влияет
Неправильно: У событий плана обмена есть привязка к режиму использования механизма: часть обработчиков актуальна именно для РИБ с иерархией узлов. Если признак «Распределенная база данных» не установлен, логика получения данных от подчиненного узла (как объекта РИБ) не активируется, и событие не будет вызываться.

Пояснение

Событие «ПриПолученииДанныхОтПодчиненного» - это обработчик модуля плана обмена, который используется в сценарии распределенной информационной базы (РИБ), когда одна база является главной, а остальные - подчиненными узлами. Чтобы событие вообще могло срабатывать, в свойствах плана обмена должен быть включен признак «Распределенная база данных» - он переводит план обмена в режим РИБ с топологией узлов. Контекст работы: - В РИБ обмен идет «сообщениями» между узлами плана обмена (главный ↔ подчиненный). При загрузке сообщения, пришедшего от подчиненного узла в главную базу, платформа вызывает обработчик «ПриПолученииДанныхОтПодчиненного». - На стороне подчиненной базы при получении данных от главного узла обычно используется парное событие (например, «ПриПолученииДанныхОтГлавного») - это помогает разделять логику обработки в зависимости от направления обмена. Зачем это событие используют на практике: - Для дополнительных проверок данных, поступивших от подчиненных (например, контроль правок, контроль обязательных реквизитов, проверка «своих» складов/организаций). - Для обработки «особых случаев» при загрузке: разруливание коллизий, установка служебных признаков, корректировка реквизитов по правилам узла (например, привязка документов к складу, соответствующему конкретному подчиненному узлу). Пример: Есть главный офис и магазины (подчиненные узлы), каждый магазин ведет документы только по своему складу. При загрузке в главный узел можно в «ПриПолученииДанныхОтПодчиненного» проверить, что в пришедших документах склад соответствует складу этого узла, и при необходимости отклонить/исправить данные или записать информацию о нарушении. Как проверить себя в конфигураторе: Откройте свойства плана обмена → убедитесь, что включен признак «Распределенная база данных». После этого обработчики событий для обмена с подчиненными узлами становятся применимыми, и «ПриПолученииДанныхОтПодчиненного» будет вызываться при получении данных от подчиненного узла.