Как исправить ошибку «Поле агрегатного объекта не обнаружено (КодОКВЭД2)» при переносе данных из 1С 7.7 в 1С 8.3?

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

При выполнении переноса данных из информационной базы «1С:Упрощенная система налогообложения 7.7» в современную конфигурацию «1С:Бухгалтерия предприятия ред. 3.0» на платформе 1С 8.3 пользователи часто сталкиваются со сбоем в процессе выгрузки. Система выдает сообщение об ошибке: «Ошибка исполнения обработчика: ПКС_ПередВыгрузкой_Организации_КодОКВЭД2_Реквизит44: Поле агрегатного объекта не обнаружено (КодОКВЭД2)».

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

Причина возникновения ошибки

Проанализируем механику работы переноса данных. При запуске мастера перехода непосредственно из интерфейса 1С 8.3 система подключается к базе 7.7 через прямое COM/OLE-соединение и выполняет встроенный алгоритм выгрузки (Правила Конвертации Свойств — ПКС).

В современных правилах конвертации прописано обращение к объекту метаданных КодОКВЭД2. Данный реквизит был добавлен разработчиками в конфигурации 7.7 для поддержки нового классификатора ОКВЭД только в поздних релизах. Если исходная база 1С 7.7 давно не обновлялась или является нетиповой, в ее структуре метаданных этот реквизит отсутствует. При попытке прочитать несуществующее поле платформа 1С 7.7 прерывает выполнение выгрузки.

Решение 1. Обновление конфигураций 7.7 и 8.3 до актуальных релизов

Самый простой и штатный способ исправить проблему — привести метаданные исходной базы в соответствие с требованиями правил конвертации.

  1. Обновим конфигурацию «1С 7.7 УСН» (или «1С 7.7 Бухгалтерский учет») до самого свежего релиза. В актуальных релизах 7.7 реквизит КодОКВЭД2 уже присутствует в структуре метаданных.
  2. Обновим целевую конфигурацию «1С:Бухгалтерия предприятия ред. 3.0» до актуальной версии.
  3. Повторно запустим мастер загрузки данных из 7.7 в чистую базу 8.3.

Решение 2. Перенос данных через XML-файл с использованием внешней обработки

Прямое подключение через COM/OLE часто вызывает ошибки из-за разрядности платформ (COM-компонент 7.7 корректно работает только при запуске 32-битного клиента 1С 8.3) или нестабильности соединения. Разберем более надежный альтернативный вариант обмена через XML-файл:

  1. Найдем файл правил конвертации (с расширением .xml) в каталоге шаблонов обновления «1С:Бухгалтерии 8.3».
  2. Откроем исходную базу 1С 7.7 в обычном режиме и запустим внешнюю обработку выгрузки (V77Exp.ert или Exp77.ert).
  3. Загрузим в обработку файл правил обмена и выполним выгрузку данных в итоговый XML-файл.
  4. Запустим «1С:Бухгалтерию 8.3» и загрузим полученный XML-файл с помощью обработки «Универсальный обмен данными в формате XML».

Решение 3. Добавление реквизита в метаданные 1С 7.7 без полного обновления

Выясним, что делать, если база 7.7 сильно изменена и ее полное обновление до актуального релиза невозможно или занимает слишком много времени:

  1. Запустим исходную базу 1С 7.7 в режиме Конфигуратор.
  2. В дереве метаданных добавим новую константу или реквизит справочника «Организации» с идентификатором КодОКВЭД2 (тип значения: Строка, длина: 10–15).
  3. Сохраним конфигурацию.

Заполнять созданное поле значениями необязательно. Для успешной работы обработчика выгрузки достаточно самого факта наличия объекта с идентификатором КодОКВЭД2 в метаданных информационной базы.

Решение 4. Корректировка правил выгрузки

Посмотрим на вариант, когда требуется отредактировать правила переноса:

  1. Откроем файл правил обмена в программе «1С:Конвертация данных 2.1».
  2. Найдем правило конвертации свойств (ПКС) для реквизита КодОКВЭД2 объекта «Организации».
  3. Отключим данное ПКС или удалим обращение к полю КодОКВЭД2 в обработчике «Перед выгрузкой».
  4. Сохраним правила и выгрузим данные с помощью обновленного XML-файла.

Использование любого из приведенных методов позволяет успешно обойти ошибку и завершить перенос справочников и остатков из 1С 7.7 в 1С 8.3.

← На главную