Как исправить ошибку «Необходимо перезагрузить правила обмена для выгрузки данных» в 1С

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

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

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

Проанализируем ситуацию и выделим основные технические факторы, приводящие к появлению этого предупреждения:

  1. Правила не прочитаны в оперативную память обработки. Простого указания пути к XML-файлу на диске недостаточно. Если после выбора файла правил не была выполнена команда их считывания, дерево объектов и метаданные конвертации не инициализируются во внутренней структуре обработки. При попытке нажать кнопку Выгрузить данные платформа выдает системное требование о перезагрузке правил.
  2. Использование правил для встроенного плана обмена. Файлы правил, поставляемые вместе с дистрибутивами обновлений типовых конфигураций (например, файлы вида BK-UT.xml из каталогов шаблонов), ориентированы на встроенный механизм синхронизации данных. В обработчиках событий таких правил (Перед выгрузкой данных, Инициализация) заложено обращение к параметрам и переменным узла плана обмена. В автономной универсальной обработке эти параметры отсутствуют, что вызывает сбои или некорректную загрузку.
  3. Несовместимость форматов. Обработка «Универсальный обмен данными XML» предназначена исключительно для правил, созданных по стандарту «1С:Конвертация данных 2.1». Файлы обмена на базе EnterpriseData (формат XDTO / КД 3.0) через эту обработку загрузить невозможно.

Пошаговый порядок работы в обработке «Универсальный обмен данными XML»

Разберем по шагам, как корректно выполнить выгрузку, если у нас есть корректный файл правил, разработанный для автономного переноса:

  1. Открываем обработку «Универсальный обмен данными в формате XML» на вкладке «Выгрузка данных».
  2. В поле «Имя файла правил» нажимаем кнопку выбора и указываем путь к XML-файлу на локальном диске.
  3. Обязательно нажимаем кнопку «Загрузить правила» (в некоторых версиях интерфейса кнопка называется «Прочитать правила»).
  4. Дожидаемся, пока в табличной части «Выгружаемые данные» появится дерево правил выгрузки данных (ПВД) и правил конвертации объектов (ПКО).
  5. Устанавливаем флаги напротив тех объектов, которые необходимо перенести (документы, справочники, регистры), при необходимости задаем период выгрузки и отборы.
  6. В поле «Имя файла данных» указываем путь, куда будет сохранен результирующий XML-файл с информацией.
  7. Нажимаем кнопку «Выгрузить данные».

Использование штатного механизма синхронизации данных

Рассмотрим случай, когда файл правил взят из стандартной поставки обновлений (например, из папки шаблона для синхронизации «1С:Бухгалтерия» и «1С:Управление торговлей»). Такие правила не предназначены для прямого запуска через универсальную обработку. Их необходимо подключать через встроенный сервис обмена:

  1. Переходим в меню программы: в интерфейсе обычных форм это «Сервис» → «Обмен данными» (или «Прочие обмены данными»), а в интерфейсе управляемых форм — «Администрирование» → «Синхронизация данных».
  2. Создаем новую настройку обмена с соответствующей конфигурацией-приемником.
  3. Выбираем вариант передачи данных через общий каталог или сетевой ресурс.
  4. При настройке узла обмена используем команду загрузки типовых правил из файла поставки. В этом случае все внутренние обработчики получат нужные ссылки на узел обмена и выполнятся без ошибок.

Адаптация правил в конфигурации «1С:Конвертация данных 2.1»

Если требуется выгрузить данные конкретного типа с помощью готового файла правил именно через универсальную обработку, рассмотрим вариант их доработки:

  1. Открываем конфигурацию «1С:Конвертация данных» версии 2.1.
  2. Загружаем исходный XML-файл правил в базу через обработку загрузки правил.
  3. Анализируем обработчики событий Перед выгрузкой данных и глобальные параметры. Удаляем или переопределяем проверки узлов плана обмена, параметров регистрации изменений и жестко заданных фильтров.
  4. Сохраняем измененные правила в новый XML-файл и используем его в универсальной обработке по стандартному алгоритму с обязательным нажатием кнопки «Загрузить правила».

Альтернатива: перенос между идентичными базами

Посмотрим на ситуацию, когда требуется перенести данные между двумя одинаковыми конфигурациями одного релиза (например, из рабочей базы в тестовую или наоборот). В этом сценарии составлять правила конвертации не требуется. Рекомендуется использовать специализированную внешнюю обработку ВыгрузкаЗагрузкаДанныхXML.epf:

  1. Обработка выгружает объекты напрямую по структуре метаданных без привлечения конфигурации «Конвертация данных».
  2. При переносе полностью сохраняются уникальные идентификаторы объектов (GUID), ссылочная целостность, проводки и движения регистров.
  3. Достательно запустить обработку в исходной базе, отметить нужные метаданные, нажать «Выгрузить», а затем в базе-приемнике открыть ту же обработку на вкладке «Загрузка» и прочитать полученный файл.
← На главную