Парсинг форм
формат данных принимаемых функцией parseForm
[
{
"key": "body_panel",
"components": [
{
"label": "Юридическое лицо",
"key": "agreementLegalEntity",
"properties": {
"attribute": "_ECM_contracts:agreementLegalEntity"
},
"type": "selectJournal",
"input": true,
"value": ""
...
},
...
],
},
{
"key": "footer_panel",
"components": [
{
"type": "columns",
"columns": [
{
"components": [
{
"label": "Rework",
"key": "outcome_Rework",
"type": "button",
"action": "submit",
},
...
]
},
...
],
},
{
"label": "Rework",
"key": "outcome_Rework",
"type": "button",
"action": "submit",
},
...
]
},
...
]
Получение элементов для отображения в списке свойств:
компоненты из массива первого уровня фильтруются по ключу
"key": "body_panel"
перебираем элементы массива
components
, фильтруем их по свойству"input": true
в случае если
"type": "button"
, элемент отбирается для передачи в функцию рендера, для локализации используется аттрибутlabel
. Элементы с другими типами также отбираются для рендера, исключением яэвляется то что для локализации используется свойствоattribute
с обрезанным префиксом „_ECM_“данные с формой связаны по ключу
attribute
для отображения в интерфейсе используется свойства value, в зависимости от
type
форматируется как строка или дата
Получение элементов для отображения на панеле согласования(кнопки):
компоненты из массива первого уровня фильтруются по ключу
"key": "footer_panel"
перебираем элементы массива
columns.components
, фильтруем их по свойству"type": button
. Если встречаются элементы с типомcolumns
, необходимо отобрать первый элемент массива в свойствеcomponents
. Для локализации используется аттрибутlabel
обработчик клика по кнопке ожидает значение из св-ва
label