При настройке типовой синхронизации данных в конфигурации 1С:Розница 2.2 (например, с 1С:Бухгалтерия предприятия 3.0) часто возникает необходимость выгружать только определенные документы или модифицировать состав выгружаемых реквизитов. При этом нередко действует строгое ограничение: основная конфигурация должна оставаться на типовой поддержке без внесения изменений, а использовать отдельные сторонние обработки для ручной выгрузки запрещено.
Разберем, почему в типовом интерфейсе может отсутствовать привычная кнопка загрузки правил конвертации и какими стандартными способами можно реализовать требуемое поведение обмена.
В ранних версиях механизмов обмена (технология Конвертация данных 2.0) правила конвертации данных (ПКД) представляли собой единый XML-файл. Его можно было загрузить непосредственно в форму настройки обмена.
В современных типовых решениях обмен строится на базе технологии EnterpriseData (Конвертация данных 3.0):
Рассмотрим подробнее доступные пути решения задачи при условии сохранения конфигурации на полной поддержке.
Библиотека стандартных подсистем (БСП) предоставляет штатный механизм отладки и переопределения логики обмена без изменения конфигурации. Мы можем указать внешнюю обработку в качестве источника правил и логики конвертации.
Разберем по шагам, как это настраивается в программе:
Функции для технического специалиста (или Все функции).ПравилаДляОбменаДанными..epf), реализующий интерфейс менеджера обмена через универсальный формат.В результате платформа при выполнении регламентного или интерактивного обмена будет вызывать экспортные процедуры из внешней обработки, а сама конфигурация останется неизменной.
Если требуется скорректировать заполнение формата EnterpriseData, наиболее современным и надежным способом является использование механизма расширений (.cfe). Этот способ не снимает конфигурацию с поддержки и сохраняет работоспособность регламентных заданий.
Проанализируем алгоритм создания расширения:
Адаптация или Дополнение.&Вместо, &Перед или &После.Посмотрим на пример переопределения процедуры в модуле расширения:
&Вместо("ПакетнаяВыгрузкаОбработка")
Процедура Расш1_ПакетнаяВыгрузкаОбработка(КомпонентыОбмена)
// Вызов стандартной логики или собственная обработка выборки
ПродолжитьВызов(КомпонентыОбмена);
КонецПроцедуры
Если структура выгружаемого формата EnterpriseData вас полностью устраивает, а задача состоит исключительно в фильтрации (выгружать строго определенные документы по сложным условиям), модифицировать правила конвертации не требуется.
В этом случае достаточно изменить правила регистрации:
После этого система начнет автоматически отбирать к выгрузке только те документы, которые соответствуют условиям, прописанным в XML-правилах регистрации.
Если выгрузка требуется разово или состав документов определяется вручную оператором, можно воспользоваться встроенным инструментом Регистрация изменений для обмена данными: