Операции обмена для таблицы

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

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

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

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

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

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

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

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

Экспорт единичного элемента из таблицы

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Экспорт множества элементов из таблицы

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

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

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

Импорт единичного элемента в таблицу

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

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

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

    • Имя тега - имя корневого тега
    • Таблица - основная таблица экспортируемой сущности

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

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

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

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

    • Добавить новый тег перед текущим - добавляет новый пустой тег перед текущим, никак не связанный со структурой базы данных. Перед созданием будет предложено ввести имя тега
    • Добавить новый тег после текущего - добавляет новый пустой тег после текущего, никак не связанный со структурой базы данных. Перед созданием будет предложено ввести имя тега
    • Добавить столбец как атрибут - то же что и добавление столбца в виде тега, только значение столбца будет записываться как значение атрибута
    • Добавить новый столбец в виде тега перед текущим
    • Добавить новый столбец в виде тега после текущего
    • Удалить этот узел
    • Добавить связанный столбец - столбец, связанный с другой таблицей по определённому полю (узел 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), никак не связанными со структурой базы данных