Как исправить ошибку «Объект не найден» (GUID) при обмене между УТ 10 и Розницей?

Программист 1С v8.3 (Обычные формы) 1С:Управление торговлей Управленческий учет Торговля и дистрибуция
← На главную

Одной из наиболее неприятных ситуаций при настройке обмена данными между конфигурациями Управление торговлей 10 и Розница является ошибка, когда в документах вместо ссылок на справочники отображается запись <Объект не найден> с указанием уникального идентификатора (GUID). Это свидетельствует о том, что принимающая база получила ссылку на объект, но сам объект не был передан, либо не был корректно идентифицирован. Давайте вместе разберем, как локализовать и устранить эту проблему.

1. Проверка правил конвертации (КД 2.0)

Первым делом нам необходимо проанализировать настройки в Конвертации данных 2.0. Зачастую проблема кроется в настройках правила конвертации объекта (ПКО). Рассмотрим следующие моменты:

2. Анализ регистрации изменений

Часто объекты просто не попадают в очередь на отправку. Давайте проверим это по шагам:

  1. Откройте обработку Регистрация изменений для обмена данными.
  2. Выберите нужный узел плана обмена и посмотрите, есть ли проблемный справочник в списке зарегистрированных к отправке объектов.
  3. Если объекта там нет, значит, он не был помечен как измененный для данного узла. Попробуйте принудительно зарегистрировать этот элемент в плане обмена.
  4. Выполните обмен снова. Если после принудительной регистрации объект успешно пришел в базу-приемник, значит, проблема в логике регистрации (например, в обработчиках ПВД или событиях записи объектов).

3. Диагностика через анализ структуры данных

Если штатные средства не помогают, нам следует провести «глубинную» диагностику. Разберем порядок действий:

Анализ файлов XML: Выгрузите данные в файл вручную и откройте его любым текстовым редактором. Найдите в файле GUID проблемного объекта. Если его нет в структуре файла, значит, объект не попадает в выборку Правил Выгрузки Данных (ПВД). Если он есть, проверьте, в какой части файла он находится. Бывает, что структура пакета нарушена: ссылка на объект идет раньше, чем сам объект описан в файле, что при некоторых настройках может приводить к ошибкам.

4. Проверка ограничений состава данных

Рассмотрим конфигуратор. Иногда справочник может быть исключен из состава плана обмена. Внимательно проверьте Состав плана обмена в конфигурации:

Если объект не включен в состав, он физически не может быть передан средствами механизмов обмена данными 1С. Также обратите внимание на Фильтры: если на узел обмена наложены ограничения (например, по подразделениям или складам), объект может отсекаться механизмом обмена до этапа формирования сообщения.

5. Полномочия пользователя

Не забываем про права доступа. Обмен данными часто выполняется под технической учетной записью. Если у этой учетной записи нет прав на Чтение или Интерактивное создание объектов определенного типа, то при загрузке данных система 1С может просто пропустить этот объект, выдав ошибку ссылочной целостности.

Для отладки обработчиков вы можете добавить в правила ЗаписьЖурналаРегистрации, чтобы видеть, на каком этапе «отваливается» выгрузка конкретного элемента:


// Пример логирования в обработчике ПередВыгрузкой
ЗаписьЖурналаРегистрации("Отладка обмена", УровеньЖурналаРегистрации.Информация, , , 
"Выгружаем объект: " + Объект.Ссылка.УникальныйИдентификатор());

Проанализируйте все уровни: от настроек ПКО и ПВД до прав доступа и состава плана обмена. Обычно последовательная проверка этих этапов позволяет выявить причину, почему конкретный GUID не «доходит» до базы-приемника.

← На главную