При обновлении конфигурации «1С:Бухгалтерия предприятия» редакции 3.0 до актуальных релизов специалисты часто сталкиваются со сбоем штатной синхронизации данных с «1С:Управление торговлей» редакции 11.1. Выясним причину этой проблемы, проанализируем архитектурные изменения подсистемы обмена и рассмотрим практические варианты решения задачи, когда обновление доработанной УТ нежелательно или затруднено.
Рассмотрим техническую подоплеку происходящего. В старых релизах (до УТ 11.1 включительно и в ранних версиях БП 3.0) штатный обмен строек на архитектуре Конвертации данных 2.1 (КД 2.1). Для переноса данных использовался специализированный план обмена ОбменУправлениеТорговлейБухгалтерияПредприятия30.
Начиная с версии БП 3.0.44, фирма «1С» перевела подсистему синхронизации данных в Бухгалтерии на универсальный формат обмена EnterpriseData (Конвертация данных 3.0). В связи с этим в конфигурации «Бухгалтерия предприятия» произошли следующие изменения:
Таким образом, прямое использование штатной синхронизации между стандартной БП 3.0 (релиза 3.0.44 и выше) и УТ 11.1 становится невозможным. Проанализируем способы решения этой задачи.
Это наиболее стандартный и рекомендуемый производителем путь. Если поднять релиз конфигурации «Управление торговлей» до версии 11.2.2.94 или выше, в программе появится поддержка формата EnterpriseData, и штатный механизм обмена с БП 3.0 снова заработает.
При выборе этого пути следует учитывать следующие нюансы:
Если изменять УТ 11.1 нельзя из-за большого количества доработок, мы можем вернуть поддержку старого обмена на стороне «1С:Бухгалтерии предприятия». В БП 3.0 физически метаданные старого плана обмена ОбменУправлениеТорговлейБухгалтерияПредприятия30 часто сохраняются, но исключаются из обработки БСП.
Чтобы вернуть старый план обмена в список доступных для синхронизации, необходимо внести правку в общий модуль ОбменДаннымиПереопределяемый в процедуру ПолучитьПланыОбмена().
Разберем пример кода, который необходимо добавить:
Процедура ПолучитьПланыОбмена(ПланыОбменаПодсистемы) Экспорт
// Добавляем старый план обмена УТ 11.1 <-> БП 3.0 в список активных
ПланыОбменаПодсистемы.Добавить(Метаданные.ПланыОбмена.ОбменУправлениеТорговлейБухгалтерияПредприятия30);
КонецПроцедуры
После регистрации плана обмена в БСП вы сможете использовать штатную синхронизацию по правилам КД 2.1. Однако следует помнить, что актуальные правила конвертации вам придется обновлять вручную с помощью конфигурации «1С:Конвертация данных 2.1» под изменившиеся реквизиты свежей БП 3.0.
Если менять конфигурации не хочется вообще, можно полностью вынести обмен за рамки штатного механизма БСП. Для этого используются внешняя обработка V8Exch83.epf (Универсальный обмен данными в формате XML) и самостоятельная разработка правил обмена.
Рассмотрим порядок действий по шагам:
MD83Exp.epf и структуру УТ 11.1.V8Exch83.epf с использованием сценариев регламентных задач или внешнего запуска 1С в командном режиме.В ситуациях, когда структуру УТ 11.1 дополняли нетиповыми реквизитами, но в Бухгалтерию нужно передавать только стандартный набор данных (документы продаж, закупки, денежные средства), рациональным решением становится написание собственной внешней обработки выгрузки.
Существуют два популярных варианта реализации такого обмена:
V83.COMConnector и напрямую создает или перезаписывает документы в приемнике.Проанализировав проблему, можно сделать четкий вывод: прямого штатного обмена «из коробки» между УТ 11.1 и БП 3.0.44+ нет из-за перехода Бухгалтерии на формат КД 3.0 (EnterpriseData).
Для решения задачи выберите наиболее подходящий вариант: