При переносе информации из устаревших систем (например, «1С:Предприятие 7.7», «Бухгалтерия предприятия 1.6» или «УПП 1.3») в современные типовые конфигурации на управляемых формах («1С:Управление нашей фирмой», «1С:Управление торговлей 11», «1С:ERP») разработчики часто сталкиваются с вопросом выполнения обмена. В типовых конфигурациях включен запрет на изменение, а классическая обработка УниверсальныйОбменДаннымиXML исторически разрабатывалась под обычный интерфейс.
Разберем по шагам, как выгрузить структуру метаданных конфигурации на управляемом приложении, какие инструменты использовать для загрузки XML-файла и с какими техническими ограничениями можно столкнуться при выполнении обмена.
Для написания правил обмена в конфигурации «Конвертация данных 2.1» в первую очередь необходимо выгрузить структуру метаданных приемника. Для обычных форм платформы «1С:Предприятие 8.2» традиционно применялась обработка MD82Exp.epf, однако для конфигураций на управляемых формах под управлением платформы 8.3 она не подходит.
Рассмотрим порядок выгрузки структуры метаданных:
tmplts\1c\Conversion).MD83Exp.epf. Данная обработка полностью адаптирована для работы в среде «1С:Предприятие 8.3» на управляемых формах.Полученный файл структуры метаданных загрузим в «Конвертацию данных 2.1» для последующей настройки правил конвертации объектов (ПКО) и правил конвертации свойств (ПКС).
В большинстве современных конфигураций, разработанных на базе Библиотеки стандартных подсистем (БСП), обработка универсального обмена уже встроена в состав метаданных и снабжена полноценным управляемым интерфейсом. Это позволяет не менять конфигурацию и не снимать ее с поддержки.
Разберем, как запустить этот механизм:
Если по какой-то причине встроенная обработка недоступна или требуется независимый запуск, воспользуемся внешней обработкой из дистрибутива «Конвертации данных 2.1»:
V8Exchan83.epf. Эта обработка содержит управляемую форму, специально разработанную для клиент-серверного взаимодействия.В случаях, когда под рукой есть только старая версия обработки УниверсальныйОбменДаннымиXML.epf с обычной формой, можно задействовать возможность запуска конфигуратора и отладки толстого клиента:
Управляемое приложение и обычное приложение. Данная настройка сохраняется локально для разработчика и не меняет конфигурацию базы.Проанализируем ключевые моменты, которые необходимо учитывать при переносе данных в управляемом приложении:
Предупреждение(), Вопрос() или методы открытия форм, платформа выдаст исключение. Все вызовы интерфейсных методов из обработчиков КД 2.1 должны быть исключены.Дополнительные отчеты и обработки БСП, платформа по умолчанию запускает ее в безопасном режиме (свойство БезопасныйРежим = Истина). В таком режиме заблокированы конструкции Выполнить() и Вычислить(), необходимые для работы динамических обработчиков КД 2.1. Регистрировать обработку в БСП следует только с отключенным безопасным режимом либо открывать ее напрямую через меню «Файл — Открыть».COMConnector невозможно, поэтому обмен следует организовывать исключительно через промежуточный XML-файл.