Data Mapping
Описание схем данных, передачи параметров между коннекторами.
DataMapping предназначен для того чтобы иметь возможность передать коннекторам входные данные, которые необходимы им для выполнения определенной бизнес логики, а также описать формат данных, которые могут быть переданы следующим коннекторам, после выполнения текущего.
DataMapping описывается с помощью 3 свойств коннектора:
Methods - массив всех доступных методов коннектора
dataMapping - схема входящих и исходящих данных
transformRules - объект описывающий трансформацию данных между коннекторами (формируется автоматически при соединении коннекторов в визуальном редакторе процесса)
Methods
DataMapping
dataMapping - объект который описывает все схемы входящих и исходящих данных для всех методов.
Структура dataMapping.input и dataMapping.output идентична.
Поддерживаемые типы данных
При описании схемы данных, Вы можете использовать следующие типы данных:
string
array
object
number
null
boolean
any
Поддерживаемые типы валидации
При описании схемы данных и перечислении свойств, можно задать установить правила валидации для значений передаваемых данных.
required - если установлено true, то параметр должен обязательно передаваться в данных
enum - массив допустимых значений
min - минимальная длина строки для string или минимальное значение для number
max - максимальная длина строки для string или максимальное значение для number
Как описать схему для объекта
При необходимости описания схемы объекта необходимо использовать свойство properties
Данная схема позволяет описать объект some_object, который будет иметь необходимый формат:
Как описать схему данных для элементов массива
Данная схема позволяет описать элементы массива user, которые будут иметь необходимый формат:
Входящие схемы данных (dataMapping.input)
Объект dataMapping.input - описывает входящие схемы данных в зависимости от выбранного метода коннектора. В описанной схеме приведен пример, когда входными данными являются username
и password
для метода со значением signin
При выполнении коннектора процессом, если вывести в консоль объект ctx.data будет отображен следующий объект:
Пользовательский UI для установки значений
При описании входящей схемы есть возможность указать какие поля могут отображаться в настройках коннектора для предварительной установки значений.
Внимание. Указание Presenter будет работать только для полей описанных в корне схемы, для вложенных объектов данный параметр будет проигнорирован.
Для того чтобы пользователь в настройках коннектора мог ввести значение для любого описанного во входящей схеме параметра, необходимо в схеме для этого параметра описать секцию presenter.
Исходящие схемы данных (dataMapping.output)
Объект dataMapping.output - описывает исходящие схемы данных в зависимости от выбранного метода коннектора. В описанной схеме приведен пример, когда выходными данными являются user_id
для метода со значением signin
После того как вы описали исходящую схему в коде коннектора необходимо вызвать метод ctx.setData
и установить контекст данных для следующих коннекторов, для того чтобы эти данные были доступны следующим коннекторам.
Более подробную информацию по работе с контекстом процесса смотрите по ссылке.
TransformRules
Свойство описывающее правила преобразование данных между коннекторами. Данные правила автоматически формируются при соединении данных разных коннекторов между собой в визуальном редакторе процесса.
При описании таким правилом, данные параметра user.id от исполняемого коннектора к следующему будут переданы ввиде { userId: "value" }
Last updated