Вопрос преемственности инструментов разработки стоит особенно остро, когда речь идет о переезде с устаревших конфигураций (например, Управление торговлей 10.3) на современные (Управление торговлей 11.5). Многие разработчики, освоившие актуальную версию Конвертации данных 3.1 (КД 3.1), задаются вопросом: можно ли использовать её для доработки старых правил формата XML, созданных в Конвертации данных 2.1 (КД 2.1)? Разберем эту ситуацию подробно, проанализируем технологические изменения и составим пошаговый план действий.
Для начала проясним терминологическую путаницу, возникшую в ходе обсуждения. Исторически сложилось два кардинально разных подхода к обмену данными в среде 1С:
Многие пользователи ошибочно полагали, что КД 3.1 полностью исключает старую методику. Однако, начиная с версии 3.1.1.1, фирма 1С интегрировала возможности редакции 2.1 в новую среду. Теперь КД 3.1 является универсальным инструментом, поддерживающим обе технологии одновременно. При необходимости настроить регулярную синхронизацию по таким правилам применяется программа автоматического обмена данными между базами 1С.
Проанализируем процесс настройки рабочей среды. По умолчанию КД 3.1 может быть ориентирована на работу с форматом EnterpriseData. Чтобы работать с правилами в формате XML (КД 2.1), необходимо выполнить следующие предварительные действия:
EnterpriseData, а именно запуск "движка" КД 2.1 внутри интерфейса КД 3.1.Рассмотрим ситуацию автора: есть готовые правила УТ 10.3 -> УТ 11.5 (XML), и их нужно "допилить". Выполним следующие шаги:
Шаг 1: Подготовка структур конфигураций. В отличие от КД 2.1, КД 3.1 требует более четкого управления структурами. Нам понадобятся файлы метаданных для обеих баз. Используем обработку MD83Exp.epf (для баз на платформе 8.3) или соответствующие версии для старых платформ. Загрузим структуры в справочник Конфигурации внутри КД 3.1. Для выгрузки только нужных объектов можно использовать обработку для выборочной выгрузки структуры метаданных конфигурации 8.3.
Шаг 2: Загрузка правил. Используем стандартный механизм импорта. В меню выберем пункт Загрузка правил конвертации данных. При импорте укажем файл XML, полученный из КД 2.1 или купленный у сторонних разработчиков. Система предложит сопоставить объекты правил с ранее загруженными структурами конфигураций. В качестве готовой основы можно использовать готовые правила конвертации для переноса данных из УТ 10.3 в УТ 11.
Шаг 3: Проверка обработчиков событий. Это критический момент. Обработчики событий (например, ПередВыгрузкой, ПриЗагрузке) хранятся в правилах в виде текстовых строк кода. Поскольку КД 3.1 работает на управляемых формах, контекст исполнения некоторых функций может отличаться. Проанализируем код на наличие обращений к методам, которые могут быть недоступны в режиме веб-клиента или тонкого клиента, если вы планируете использовать инструменты отладки КД 3.1.
Пример типичного кода в обработчике ПередВыгрузкой, который успешно перенесется:
// Пример условия выгрузки документа
Если Источник.Дата < '20230101' Тогда
Отказ = Истина;
Иначе
Сообщить("Выгружается документ: " + Строка(Источник));
КонецЕсли;
Несмотря на поддержку старого формата, выясним причины, по которым некоторые эксперты до сих пор рекомендуют использовать КД 2.1 для классических обменов:
Если ваша задача — разовый перенос данных или регулярный обмен между сильно модифицированными базами, где типовой помощник перехода не справляется, следуйте этим рекомендациям: для миграции на новую версию торговой конфигурации применяется обработка переноса данных из УТ 10.3 в УТ 11.
Поиск по ГУИД в настройках ПКО.Универсальный обмен данными в формате XML (V8Exch82.epf). Сама версия КД (2.1 или 3.1), в которой вы редактируете файл правил, не влияет на формат результирующего XML-файла, если вы не используете специфичные возможности новых платформ.Резюме: Загрузить и допилить правила из КД 2.1 в КД 3.1 можно. Это штатный режим работы современной версии программы. Однако, если вы никогда не работали в КД 2.1, вам все равно придется изучить логику ПКО/ПКС, так как интерфейс КД 3.1 лишь визуализирует старую технологию, не меняя её сути. Если проект разовый и требует высокой скорости разработки "на коленке", КД 2.1 может оказаться удобнее за счет легкости интерфейса, но для долгосрочной работы в современной инфраструктуре 1С использование КД 3.1 является более перспективным решением.