Вступить в клуб →
сложнаявопросРасширения и поддержка конфигураций

Проверка в подписке на событие ломает загрузку данных из обмена

Расширением добавлена подписка на событие «ПередЗаписью» справочника «Контрагенты»:

Процедура ПередЗаписьюКонтрагента(Источник, Отказ) Экспорт
    Если ПустаяСтрока(Источник.ИНН) Тогда
        ВызватьИсключение "Не заполнен ИНН";
    КонецЕсли;
КонецПроцедуры

Пользователи довольны: вручную создать контрагента без ИНН теперь нельзя. Но после включения подписки сломался регулярный обмен со складской базой — сообщения перестали загружаться целиком, в том числе документы.

В чём дефект?

  • Подписки нельзя создавать в расширениях: платформа вызывает их дважды и вторая попытка падает
  • В подписке на «ПередЗаписью» нельзя вызывать исключение: платформа разрешает здесь только устанавливать параметр «Отказ» и выводить сообщение
  • Обработчик не учитывает признак записи в режиме загрузки по обмену данными: при загрузке такие проверки нужно пропускать
  • Обмен нужно перевести на запись объектов с отключением бизнес-логики в правилах конвертации

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела