Структура каталога

Используется для получения структуры нужного каталога.

Свойства

Секция «Получить структуру каталога»

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

Каталог Свойство доступно при выбранном значении Указать каталог = Из списка. Выбор каталога из числа доступных в системе для получения структуры каталога. Формат: выбор из списка каталогов.

ID каталога Свойство доступно при выбранном значении Указать каталог = Через переменную. Идентификатор (ID) каталога, из которого нужно получить структуру каталога. Формат: значение/выражение.

Секция «Результат»

Сохранить в Выходной параметр. Сохранит результат в указанную переменную. Формат: имя переменной.

{
    fields: {
        "2": {
            orderIndex: 1,
            id: "2",
            name: "Название",
            type: "text",
            config: {...},
            hint: "",
            required: true,
            apiOnly: false,
            ...
        },
        "3": {
            orderIndex: 2,
            id: "3",
            name: "Статус",
            type: "dropdown",
            config: {
                items: {
                    "1": {
                        orderIndex: 1,
                        id: "1",
                        name: "новая",
                        color: "F9C2C2"
                    },
                    "2": {
                        orderIndex: 3,
                        id: "2",
                        name: "отказ",
                        color: "F9C2C2"
                    },
                    "3" {
                        orderIndex: 2,
                        id: "3",
                        name: "оказано",
                        color: "F9C2C2"
                    },
                ],
                defaultEmptyValue: ["1"],
                defaultValue: true
            },
            hint: "",
            required: true,
            apiOnly: false,
            ...
        },
        "4": {
            orderIndex: 3,
            id: "4",
            name: "Файл",
            type: "file",
            config: {...},
            hint: "",
            required: true,
            apiOnly: false,
            ...
        },
        ...
    },
    fieldPrivilegeCodes: {...}
    icon: "content-34",
    id: "100",
    name: "Заявки",
    privilegeCode: "admin",
    sectionId: "1"
}

В поле «Сохранить в» можно указать ключ объекта и данные сохранятся как значения этого ключа.

Пример

Если указать в поле «Сохранить в» переменнуюdata.temp, то результат будет выглядеть следующим образом:

data: {
    fields: {
        "2": {
            orderIndex: 1,
            id: "2",
            name: "Название",
            type: "text",
            config: {...},
            hint: "",
            required: true,
            apiOnly: false,
            ...
        },
        "3": {
            orderIndex: 2,
            id: "3",
            name: "Статус",
            type: "dropdown",
            config: {
                items: {
                    "1": {
                        orderIndex: 1,
                        id: "1",
                        name: "новая",
                        color: "F9C2C2"
                    },
                    "2": {
                        orderIndex: 3,
                        id: "2",
                        name: "отказ",
                        color: "F9C2C2"
                    },
                    "3" {
                        orderIndex: 2,
                        id: "3",
                        name: "оказано",
                        color: "F9C2C2"
                    },
                ],
                defaultEmptyValue: ["1"],
                defaultValue: true
            },
            hint: "",
            required: true,
            apiOnly: false,
            ...
        },
        "4": {
            orderIndex: 3,
            id: "4",
            name: "Файл",
            type: "file",
            config: {...},
            hint: "",
            required: true,
            apiOnly: false,
            ...
        },
        ...
    },
        fieldPrivilegeCodes: {...}
        icon: "content-34",
        id: "100",
        name: "Заявки",
        privilegeCode: "admin",
        sectionId: "1"
    }
}

Подробнее о формате данных в описании ресурса Каталог в API.

Разница форматов с API

Компонент возвращает результат в отличном от API формате. Разница заключается в том, что компонент возвращает поля (fields) в формате объекта с ключами ID полей, а не массива, как API.

Для восстановления очередности полей (порядка их следования в каталоге) в поля добавлено свойство orderIndex(начинается с 1).

Аналогичные изменения сделаны для элементов полей типа «статус», «набор галочек» и «выбор» (config.items возвращается в виде объекта, а не массива).

Эти изменения внесены, чтобы было проще получать параметры поля по его ID. Например получить название 2 статуса: resultVar.fields[3].config.items[2].name

Пограничные события

Компонент поддерживает 2 типа пограничных событий: Ошибка — выход из компонента, если произошла какая-либо ошибка Таймаут — выход из компонента, спустя заданное ограничение по времени Если компонент завершился с ошибкой, но на нем не было пограничного события, то процесс завершается. Сообщение ошибки возвращается в результатах процесса.

Last updated