Операции обмена для документов

Раздел "Операции обмена" даёт возможность управления шаблонами операций XML обмена для документов. Сам обмен производится из раздела "XML обмен" основного интерфейса.

Создание и редактирование операции обмена

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

Параметры операции XML обмена:

  • Название - наименование операции обмена, которое будет отображено при обработке
  • Тип операции - определяет, каким образом будет обработана операция, будет ли она являться экспортом или импортом. После сохранения операции запрещено изменять этот параметр
  • Папка - в какую директорию будут складываться XML файлы при экспорте и из какой будут считываться при импорте
  • Параметры шаблона - настройки структуры XML документа, а также параметры базы данных и связей между сущностями

Типы узлов структуры документа

При построении структуры документа используются следующие типы узлов:

  • root - корневой узел - основной тег XML документа
  • tag - обычный тег, может содержать вложения
  • att - атрибут тега
  • conn - метка связи с другой таблицей. Не иницирует создание каких-либо элементов в структуре XML документа
  • group - группирующий тег, повторяющийся для каждого связанного элемента
  • conncol - (только импорт) столбец, связанный с другой таблицей. Инициирует создание тега, содержимое которого будет искаться в другой таблице

Экспорт единичного документа

Данный тип операции XML обмена позволяет экспортировать документы в виде индивидуальных XML файлов.

Действия при создании структуры в порядке доступности:

  • нажмите на имя типа операции "documentexportsingle" - в выпадающем меню выберите "Добавить корневой тег". Корневой тег должен обязательно присутствовать для каждого XML документа. Откроется всплывающее окно, в котором необходимо заполнить следующие параметры:

    • Имя тега - имя корневого тега
    • Тип документа - документы какого типа будут обрабатываться
    • Условие - (не обязательно) дополнительное условие фильтрации результатов, используемое при выводе перечня доступных для экспорта документов

  • для корневого тега (узел root) доступны следующие опции:

    • Добавить тег - добавляет новый пустой тег (узел tag), никак не связанный со структурой базы данных. Перед созданием будет предложено ввести имя тега
    • Добавить атрибут документа как тег - добавляет новый тег (узел tag), содержимое которого будет заполнено значением определённого атрибута типа документов, указанного при настройке корневого тега. Перед созданием будет предложено ввести имя тега и выбрать из выпадающего списка нужный атрибут документа. Если имя тега не было введено, то оно будет автоматически установлено равным имени атрибута документа
    • Добавить все атрибуты документа в виде тегов - (узел tag) будут добавлены все атрибуты типа документов, указанного при настройке корневого тега. Имена тегов будут равны именам атрибутов
    • Добавить связанный тип документа - см. создание связанных документов
    • Удалить этот корневой узел

    Также для корневого тега доступен атрибут show, при помощи которого можно настраивать, какие поля будут выведены в интерфейсе XML обмена для перечня доступных для экспорта документов. Нажмите на значение атрибута show. Откроется перечень атрибутов документа. Вы можете выбирать галочками показываемые атрибуты документа и изменять их порядок при помощи перетаскивания.

  • для атрибута документа в виде тега (узел tag с атрибутом docatt) доступны следующие опции:

    • Добавить новый тег перед текущим - добавляет новый пустой тег перед текущим, никак не связанный со структурой базы данных. Перед созданием будет предложено ввести имя тега
    • Добавить новый тег после текущего - добавляет новый пустой тег после текущего, никак не связанный со структурой базы данных. Перед созданием будет предложено ввести имя тега
    • Добавить атрибут документа как атрибут - то же что и добавление атрибута документа в виде тега, только значение атрибута документа будет записываться как значение атрибута
    • Добавить новый атрибут документа в виде тега перед текущим
    • Добавить новый атрибут документа в виде тега после текущего
    • Удалить этот узел
  • для тега (узел tag) - те же опции, что и для для столбца в виде тега плюс:

    • Добавить связанный тип документа - см. создание связанных документов
    • Добавить столбец как тег
  • для атрибут документа в виде атрибута (узел att) доступны следующие опции:

    • Добавить атрибут документа в виде атрибута перед текущим
    • Добавить атрибут документа в виде атрибута после текущего
    • Удалить этот атрибут
  • создание связанных документов (узел conn). При помощи этой опции возможен экспорт документов других типов, как-либо связанных с корневым типом документа. При выборе опции "Добавить связанный тип документа" откроется всплывающее окно, в котором необходимо заполнить следующие параметры:

    • Тип документа - тип, с которым будет производиться связь
    • Условие - (не обязательно) дополнительное условие фильтрации результатов
    • Множество значений - будет ли связь с одним документом или несколькими. Если планируется экспорт нескольких связанных документов, то будет необходимо создать групповой тег
    • Связи - по каким параметрам будет производиться связь. Поддерживаются связи двух типов:

      • По связям - используются связи между документами. Необходимо выбрать Тип связи и Направление связи

      • По атрибутам - используются сопоставление значений атрибутов документов. Необходимо выбрать атрибуты из выпадающего списка

    Создание связанных документов не изменяет уровень в иерархии дерева, все теги, созданные внутри узла conn будут иметь тот же уровень в иерархии, что и теги до узла conn. Узел conn только привязывает всё содержимое к связываемой таблице.

    Для метки связи с единичным значением (узел conn c атрибутом ismany=0) доступны следующие опции:

    • Добавить тег
    • Добавить атрибут документа как тег
    • Добавить атрибут документа как атрибут - атрибут будет добавлен к родительскому тегу
    • Добавить все атрибуты документа в виде тегов
    • Добавить связанный тип документа - можно создавать неграниченный уровень вложенности связей
    • Удалить этот узел

    Для метки связи с множеством значений (узел conn c атрибутом ismany=1) доступны следующие опции:

    • Добавить групповой тег - добавляет тег (узел group), повторяющийся для каждого из экспортируемых документов
    • Удалить этот узел

    Для группового тега (узел group) доступны следующие опции:

    • Добавить тег
    • Добавить атрибут документа как тег
    • Добавить все атрибуты документа в виде тегов
    • Добавить атрибут документа как атрибут
    • Добавить связанный тип документа
    • Удалить этот узел

Экспорт множества документов

Данный тип операции XML обмена позволяет экспортировать несколько документов в виде одного XML файла.

Формат структуры полностью аналогичен экспорту единичного документа за исключением следующих особенностей:

  • из корневого тега (узел root) невозможно сразу создавать атрибуты документа в виде тегов, нужно сначала создать групповой тег (узел group)
  • групповой тег (узел group) должен содержать всю структуру, индивидуальную для документа
  • все теги вне группового тега являются простыми тегами (узел tag), никак не связанными со структурой базы данных

Импорт единичного документа

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

Действия при создании структуры в порядке доступности:

  • нажмите на имя типа операции "documentimportsingle" - в выпадающем меню выберите "Добавить корневой тег". Корневой тег должен обязательно присутствовать для каждого XML документа. Откроется всплывающее окно, в котором необходимо заполнить следующие параметры:

    • Имя тега - имя корневого тега
    • Тип документа - тип импортируемого документа

  • для корневого тега (узел root) доступны следующие опции:

    • Добавить тег - добавляет новый пустой тег (узел tag), никак не связанный со структурой базы данных. Перед созданием будет предложено ввести имя тега
    • Добавить атрибут документа как тег - добавляет новый тег (узел tag), содержимое которого будет заполнено значением определённого атрибута типа документов, указанного при настройке корневого тега. Перед созданием будет предложено ввести имя тега и выбрать из выпадающего списка нужный атрибут документа. Если имя тега не было введено, то оно будет автоматически установлено равным имени столбца
    • Добавить все атрибуты документа в виде тегов - (узел tag) будут добавлены все атрибуты типа документов, указанного при настройке корневого тега. Имена тегов будут равны именам атрибутов
    • Добавить связанный тип документа - см. создание связанных документов
    • Удалить этот корневой узел
    • Добавить связанный атрибут документа - атрибут, связанный с другим типом документа по определённому атрибуту (узел conncol). Используется, если нужно импортировать поле, значение которого записано в качестве заначения атрибута другого типа и соответствует значению определённого тега в XML документе

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

  • для атрибута документа в виде тега (узел tag с атрибутом docatt) доступны следующие опции:

    • Добавить новый тег перед текущим - добавляет новый пустой тег перед текущим, никак не связанный со структурой базы данных. Перед созданием будет предложено ввести имя тега
    • Добавить новый тег после текущего - добавляет новый пустой тег после текущего, никак не связанный со структурой базы данных. Перед созданием будет предложено ввести имя тега
    • Добавить атрибут документа как атрибут - то же что и добавление атрибута документа в виде тега, только значение атрибута документа будет записываться как значение атрибута
    • Добавить новый атрибут документа в виде тега перед текущим
    • Добавить новый атрибут документа в виде тега после текущего
    • Удалить этот узел
    • Добавить связанный атрибут документа - атрибут, связанный с другим типом документа по определённому атрибуту (узел conncol). Используется, если нужно импортировать поле, значение которого записано в качестве заначения атрибута другого типа и соответствует значению определённого тега в XML документе
  • для связанного атрибута документа (узел conncol) доступны следующие опции:

    • Добавить тег
    • Добавить атрибут документа как тег
    • Добавить атрибут документа как атрибут
    • Удалить этот узел
    • Добавить связанный атрибут документа
  • для тега (узел tag) - те же опции, что и для для столбца в виде тега плюс:

    • Добавить связанный тип документа - см. создание связанных документов
    • Добавить атрибут документа как тег
  • для столбца в виде атрибута (узел att) доступны следующие опции:

    • Добавить столбец в виде атрибута перед текущим
    • Добавить столбец в виде атрибута после текущего
    • Удалить этот атрибут
  • создание связанных документов (узел conn). При помощи этой опции возможен импорт документов других типов, как-либо связанных с корневым типом. При выборе опции "Добавить связанный тип документа" откроется всплывающее окно, в котором необходимо заполнить следующие параметры:

    • Тип документа - тип, с которым будет производиться связь
    • Множество значений - будет ли связь с одним документом или несколькими. Если планируется импорт нескольких связанных документов, то будет необходимо создать групповой тег
    • Связи - по каким параметрам будет производиться связь. Поддерживаются связи двух типов:

      • По связям - используются связи между документами. Необходимо выбрать Тип связи и Направление связи

      • По атрибутам - используются сопоставление значений атрибутов документов. Необходимо выбрать атрибуты из выпадающего списка

    Создание связанных документов не изменяет уровень в иерархии дерева, все теги, созданные внутри узла conn будут иметь тот же уровень в иерархии, что и теги до узла conn. Узел conn только привязывает всё содержимое к связываемой таблице.

    Для метки связи с единичным значением (узел conn c атрибутом ismany=0) доступны следующие опции:

    • Добавить тег
    • Добавить атрибут документа как тег
    • Добавить атрибут документа как атрибут - атрибут будет добавлен к родительскому тегу
    • Добавить все атрибуты документа в виде тегов
    • Добавить связанный тип документа - можно создавать неграниченный уровень вложенности связей
    • Удалить этот узел
    • Добавить связанный атрибут документа

    Для метки связи с множеством значений (узел conn c атрибутом ismany=1) доступны следующие опции:

    • Добавить групповой тег - добавляет тег (узел group), повторяющийся для каждого из экспортируемых документов
    • Удалить этот узел
    • Добавить связанный атрибут документа

    Для группового тега (узел group) доступны следующие опции:

    • Добавить тег
    • Добавить атрибут документа как тег
    • Добавить все атрибуты документа в виде тегов
    • Добавить атрибут документа как атрибут
    • Добавить связанный тип документа
    • Удалить этот узел
    • Добавить связанный атрибут документа

Импорт множества документов

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

Формат структуры полностью аналогичен импорту единичного документа за исключением следующих особенностей:

  • из корневого тега (узел root) невозможно сразу создавать атрибуты документа в виде тегов, нужно сначала создать групповой тег (узел group)
  • групповой тег (узел group) должен содержать всю структуру, индивидуальную для элемента
  • все теги вне группового тега являются простыми тегами (узел tag), никак не связанными со структурой базы данных