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