Почему возникает ошибка «Поле объекта не обнаружено (МолочнаяПродукция)» при обмене между УТ и Розницей?

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

При обновлении конфигураций 1С:Управление торговлей (редакция 11) и 1С:Розница (редакция 2.3) на современные релизы многие пользователи сталкиваются с тем, что типовой обмен данными перестает работать. В журнале регистрации появляется критическая ошибка: Поле объекта не обнаружено (МолочнаяПродукция). Это происходит из-за того, что фирма «1С» изменила структуру учета товаров, подлежащих ветеринарному контролю.

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

Способ 1: Корректировка правил конвертации (рекомендуемый метод)

Самый правильный и безопасный путь — это правка правил конвертации объектов (ПКД). Разберем этот процесс по шагам:

  1. Откройте архив с файлами правил, который идет в комплекте с обновлением конфигурации.
  2. Найдите файл правил конвертации (обычно в формате .xml).
  3. Используйте текстовый редактор (например, Notepad++ или VS Code) для поиска всех вхождений строки МолочнаяПродукция.
  4. Замените старое наименование на актуальное, которое теперь используется в конфигурации: МолочнаяПродукцияПодконтрольнаяВЕТИС.
  5. Сохраните файл и загрузите его в настройки синхронизации данных.

Если вы опытный пользователь конфигурации Конвертация данных, вы можете загрузить туда правила, внести изменения визуально и выгрузить исправленный файл правил обратно.

Способ 2: Замена правил на актуальные из поставки обновления

Часто ошибку вызывает использование «старых» правил, которые остались в системе до обновления. Рассмотрим, как их правильно обновить:

Перейдите в раздел НСИ и администрирование -> Синхронизация данных -> Настройки синхронизации данных. Выберите нужный узел, перейдите в Настроить -> Параметры синхронизации данных. Там вы найдете пункт Загрузить правила регистрации объектов или Правила конвертации объектов. Обязательно подгрузите свежие файлы, которые поставляются вместе с последним релизом вашей конфигурации.

Способ 3: Особенности работы с «Базовыми» конфигурациями

При работе с базовыми версиями часто возникают ошибки вида Тип не определен (СправочникСсылка.БанковскиеСчетаОрганизаций). Это связано с тем, что функционал базовых версий ограничен по сравнению с версиями ПРОФ. Если вы используете правила от ПРОФ-версии в базовой, обмен будет постоянно выдавать ошибки. Всегда старайтесь брать правила из того же дистрибутива, где находится ваша конфигурация.

Почему не стоит снимать конфигурацию с поддержки?

Некоторые специалисты предлагают снять конфигурацию с поддержки и вручную переименовать значения в перечислениях ВидыПродукцииИС или ОсобенностиУчетаНоменклатуры. Мы настоятельно не рекомендуем этот метод, так как:

Альтернативное решение: использование XML-строк

Для сложных интеграций, если вы являетесь разработчиком, можно рассмотреть отказ от передачи перечислений как ссылок. Вы можете передавать их как XMLСтрока. При загрузке данных поиск значения будет происходить по имени, что делает обмен гораздо более устойчивым к изменениям в метаданных при будущих обновлениях платформы:


// Пример передачи значения через XML-строку
ЗначениеВXML = XMLСтрока(Объект.ВидПродукции);
// При загрузке ищем значение по строковому представлению
НовоеЗначение = ПредопределенноеЗначение("Перечисление.ВидыПродукцииИС." + XMLСтрока(ВходящиеДанные));

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

← На главную