Конвертация данных, ред.3
06.10.2022

Режим разделения модуля менеджера в Конвертации данных ред.3

Оглавление

Режим разделения модуля менеджера в Конвертации данных ред.3

Назначение механизма

Общие принципы работы механизма

Настройка Конвертации

Состав и назначение предопределенных модулей

Добавление пользовательских модулей

Использование модуля менеджера объекта для хранения правил

Дерево модулей

Выгрузка правил конвертации

Загрузка правил конвертации

Сервисные возможности в форме справочника Конвертации

Действия, которые выполняются с файлами правил

Действия, которые выполняются с конфигурацией

Порядок действий пользователя при переводе правил в режим разделения модуля менеджера

Технические особенности изменения вызовов алгоритмов в обработчиках правил конвертации

 

Назначение механизма

Механизм используется для конвертаций, предназначенных для синхронизации данных через универсальный формат.

Предусмотрен для уменьшения размера общего модуля МенеджерОбменаЧерезУниверсальныйФормат. Слишком длинный общий модуль может создавать технические проблемы при работе с конфигурацией через EDT

 

Общие принципы работы механизма

 

Настройка Конвертации

Режим разделения модуля включается с помощью флага Использовать разделение модуля.

Настройки производятся на закладке Модули конвертации

Необходимо выполнить следующие настройки:

1.      Способ выгрузки модулей. Указывается в каком виде будут выгружаться модули:

2.      Выгружать модули в каталог: место выгрузки модулей в зависимости от способа выгрузки. Либо каталог с текстовыми файлами, либо каталог куда выгружены файлы конфигурации

 

Состав и назначение предопределенных модулей

Список модулей можно увидеть в табличном поле на закладке Модули конвертации

Предопределенные модули создаются автоматически, при включении режима разделения модуля

Состав предопределенных модулей нельзя изменить. Можно изменить только имена модулей.

Если не менять настройку правил конвертации, правила автоматически распределяются между предопределенными модулями в зависимости от направления обмена и типа объекта метаданных.

 

Добавление пользовательских модулей

В список модулей можно добавить Пользовательские модули. Эти модули позволят более мелко разбить правила между разными общими модулями. Например, правила для документов могут быть дополнительно разбиты по назначению документов (взаиморасчеты, склад, закупки, продажи и т.п.)

Чтобы привязать правило к Пользовательскому модулю, необходимо указать ссылку на Пользовательский модуль в правиле обработки данных, в правиле конвертации объекта либо в алгоритме.

Указывать в качестве пользовательского модуля один из предопределенных модулей запрещено

 

Использование модуля менеджера объекта для хранения правил

В правилах конвертации есть возможность указать что правила выгружаются в модуль менеджера объекта метаданных. Выгрузка происходит по следующим правилам (в зависимости от способа выгрузки модулей):

1.      При выгрузке в файлы TXT для каждого объекта метаданных будет создан отдельный файл с частью модуля, содержащего логику для обменов через универсальный формат. Эту логику необходимо встроить в модуль менеджера самостоятельно.

2.      При выгрузке в файлы XML процедуры для синхронизации данных будут встроены в модуль менеджера объекта в предопределенную область СлужебныеПроцедурыИФункции -> ОбменДанными_СинхронизацияДанныхЧерезУниверсальныйФормат. Другие процедуры и функции которые были в тексте модуля менеджера останутся без изменений.

Существует два варианта настройки выгрузки правил в модуль менеджера объекта метаданных.

В простом случае используется модуль менеджера того объекта конфигурации, для которого предусмотрено правило

В сложных случаях (например, вместо объекта конфигурации в правиле конвертации используется произвольная структура данных) можно явно указать Объект конфигурации, в модуль менеджера которого будет производиться выгрузка данных:

Внимание! Использование модуля менеджера объекта для хранения правил усложняет кастомизацию приложений.

Дерево модулей

Список модулей можно переключить в режим дерева.

В этом режиме добавлять новые модули нельзя. Режим дерева предназначен для просмотра информации какие правила конвертации к какому модулю будут относиться.

 

 

Выгрузка правил конвертации

Как и прежде, можно осуществлять выгрузку правил с помощью кнопки в форме настройки правил обмена

 

Заголовок кнопки различается, в зависимости от способа выгрузки модулей конвертации.

Если выгрузка модулей производится в файлы XML, в состав общих модулей должны быть добавлены используемые модули менеджера. Обработка выгрузки модулей не добавляет новые модули в структуру файлов XML, а лишь обновляет существующие файлы с модулями.

 

Загрузка правил конвертации

Используется обработка Загрузка модуля менеджера (раздел Конвертации, меню Сервис) таким же образом, как и для не разделенного модуля менеджера.

 

 Внимание! Если производится загрузка из разделенных модулей в пустую конвертацию, для конвертации должно быть настроено разделение модулей и заданы правильные названия используемых модулей. В противном случае правила не могут быть загружены корректно.

 

Сервисные возможности в форме справочника Конвертации

В форме справочника Конвертации предусмотрены кнопки, позволяющие из одной формы производить выгрузку и загрузку правил конвертации, а также сохранение конфигурации в файлы и загрузку конфигурации из файлов.

Эти возможности доступны только если указан способ выгрузки модулей - в файлы XML.

 

 

Действия, которые выполняются с файлами правил

1.      Выгрузить конвертацию в файлы конфигурации (кнопка стрелка вверх). Выгружает правила конвертации в файлы XML в указанный каталог

2.      Загрузить конвертацию из файлов конфигурации (кнопка стрелка вниз). Загружает правила конвертации в файлы XML в указанный каталог

3.      Удалить правила из модулей менеджера объектов (красная круглая кнопка с крестом). Имеет смысл, если для каких-либо правил конвертации была настроена выгрузка правил в модуль менеджера. Удаляет вставки в модуль менеджера, которые содержат правила конвертации. Может использоваться перед обновлением конфигурации на новые релизы, чтобы минимизировать количество нетиповой логики в типовых объектах метаданных

 

Действия, которые выполняются с конфигурацией

Сначала необходимо настроить параметры подключения к базе 1С Предприятие (гиперссылка Параметры подключения)

 

 

Предусмотрены возможности

1.      Выгрузить конфигурацию в файлы (желтая папка и стрелка вверх): выгружает конфигурацию. Аналогично действию в режиме Конфигуратор (Конфигурация ? Выгрузить конфигурацию в файлы). Место выгрузки — указанное в поле Выгружать модули в каталог

2.      Загрузить конфигурацию из файлов (желтая папка и стрелка вниз): загружает конфигурацию. Аналогично действию в режиме Конфигуратор (Конфигурация ? Загрузить конфигурацию из файлов). Файлы загружаютися из папки, указанной в поле Выгружать модули в каталог

 

Порядок действий пользователя при переводе правил в режим разделения модуля менеджера

 

Технические особенности изменения вызовов алгоритмов в обработчиках правил конвертации

В режиме разделения модулей алгоритмы выделяются в отдельный модуль. Вызовы алгоритмов могут производиться из обработчиков, расположенных в других модулях:

1.      глобальные обработчики конвертации

2.      обработчики правил конвертации объектов

3.      обработчики правил обработки данных

4.      другие алгоритмы

При выполнении выгрузки производится автоматическая замена вызовов алгоритмов. Например, вместо вызова БухгалтерскийСчетПоКоду() вставляется вызов МенеджерОбменаАлгоритмы.БухгалтерскийСчетПоКоду().

В некоторых случаях автоматическая замена может сработать некорректно. Например, если перед вызовом алгоритма отсутствует пробел.

Пример: СтруктураДанныхСтроки.Вставить("Счет",БухгалтерскийСчетПоКоду("57.03"));

Если замена не сработала, синтаксическая проверка модуля в конфигураторе будет выдавать ошибку.

Для исправления ситуации следует внести изменения в текст обработчика в конвертации:

Также необходимо учитывать следующее: если конвертация была загружена из разделенного модуля, вызовы алгоритмов уже содержат полный путь содержащий имя модуля.

Если после загрузки правил принято решение перейти на единый модуль менеджера и отключить режим разделения модуля в конвертации, эти вызовы станут некорректными и потребуется заменить их на другие — без указания имени общего модуля