← На главную
При разработке и адаптации обменов через универсальный формат EnterpriseData с помощью конфигурации «Конвертация данных 3.0» (КД 3.0) разработчик получает выгруженный модуль менеджера обмена. Однако после вставки сформированного кода в базу-источник возникает вопрос: как именно запустить процесс выгрузки данных и что необходимо настроить дальше? Разберем всю цепочку действий по шагам — от интеграции кода до отправки пакетов данных.
1. Внедрение кода менеджера обмена в конфигурацию
Проанализируем структуру обмена в типовых конфигурациях на базе БСП (включая «1С:Бухгалтерия предприятия 3.0»). Вся логика работы с универсальным форматом сосредоточена в общем модуле МенеджерОбменаЧерезУниверсальныйФормат.
Перед внесением изменений обязательно выполним следующие действия:
- Сохранение исходного текста: скопируем исходный код типового модуля
МенеджерОбменаЧерезУниверсальныйФормат в отдельный файл резервной копии. Это позволит быстро восстановить типовое поведение или перенести пользовательские доработки при обновлении конфигурации.
- Перенос дополнительных процедур: если в КД 3.0 в обработчиках событий использовались дополнительные алгоритмы или функции, убедимся, что они также перенесены в серверный контекст модуля.
- Замена кода: вставим сформированный в КД 3.0 код в модуль
МенеджерОбменаЧерезУниверсальныйФормат конфигурации «1С:Бухгалтерия предприятия 3.0» и сохраним изменения в конфигураторе.
2. Быстрое тестирование выгрузки без полной настройки обмена
Чтобы убедиться в корректности написанных правил и отсутствии синтаксических ошибок в коде обработчиков, не обязательно сразу настраивать полноценный узел плана обмена. Рассмотрим удобный инструмент для разработчика:
- В комплекте поставки конфигурации «Конвертация данных 3.0» присутствует внешняя обработка для тестирования обмена по универсальному формату.
- Откроем данную обработку в режиме «1С:Предприятие» в базе-источнике («1С:Бухгалтерия предприятия 3.0»).
- Выберем конкретный объект метаданных (например, документ или элемент справочника) и запустим формирование файла выгрузки. Обработка сформирует итоговый XML-файл в формате EnterpriseData, что позволит быстро проанализировать корректность заполнения XDTO-структур и отладить код.
3. Штатная настройка синхронизации данных через интерфейс
Для регулярного обмена данными настроим штатный механизм синхронизации БСП. Разберем порядок действий в пользовательском режиме:
- Перейдем в раздел «Администрирование» -> «Синхронизация данных».
- Установим флаг «Синхронизация данных», если он не был включен ранее, и откроем пункт «Настройки синхронизации данных».
- Нажмем кнопку создания новой настройки и выберем вариант синхронизации через универсальный формат (или пункт «Другая программа»). При этом система создаст узел плана обмена
СинхронизацияДанныхЧерезУниверсальныйФормат.
- Укажем транспорт для передачи сообщений: общий сетевой каталог, FTP-ресурс, прямое COM-подключение или ручной обмен через файлы.
- Завершим работу мастера настройки синхронизации.
4. Регистрация изменений и запуск отправки данных
Выясним причину, по которой сразу после создания настройки синхронизации данные могут не выгружаться: по умолчанию механизмы БСП отправляют только те объекты, которые были изменены или созданы после создания узла обмена.
Чтобы отправить уже имеющиеся в базе данные, выполним их регистрацию на узле:
- В окне синхронизации данных откроем состав отправляемых данных или воспользуемся встроенной обработкой «Регистрация изменений для обмена».
- Выберем интересующие типы документов или справочников и выполним команду «Зарегистрировать изменения» для созданного узла обмена.
- Нажмем кнопку «Синхронизировать». Система обратится к модулю
МенеджерОбменаЧерезУниверсальныйФормат, сериализует зарегистрированные объекты в XML по правилам EnterpriseData и выгрузит сформированный файл в указанный каталог.
5. Согласованность XDTO-пакетов и сброс кэша правил
Обратим внимание на критически важные технические нюансы, с которыми можно столкнуться при работе с EnterpriseData:
- Версии формата: выгруженный модуль менеджера обмена жестко привязан к версии схемы (например, EnterpriseData 1.8, 1.11). Конфигурация-источник и конфигурация-приемник должны содержать одинаковую версию XDTO-пакета.
- Пользовательские реквизиты формата: если в КД 3.0 в схему формата добавлялись новые поля или типы, измененную схему XDTO необходимо выгрузить из КД 3.0 и загрузить в ветку метаданных
XDTO-пакеты обеих конфигураций. Без обновления пакета в метаданных выгрузка завершится ошибкой валидации XML.
- Сброс серверного кэша: после обновления общего модуля в работающей базе структуры правил могут оставаться в кэше сеансов и фоновых заданий. Для корректного применения изменений перезапустим пользовательский сеанс или службу сервера 1С:Предприятия.
6. Альтернативный вариант: внедрение правил через расширение конфигурации
Чтобы не снимать модуль МенеджерОбменаЧерезУниверсальныйФормат с типовой поддержки, подключим правила через расширение конфигурации. Для этого переопределим процедуры заполнения правил конвертации (например, ПриЗаполненииПравилКонвертацииОбъектов) с использованием аннотаций &После или &Вместо, либо используем специализированные переопределяемые модули БСП, что упростит последующее обновление «1С:Бухгалтерии предприятия».