Открыть меню
Платформа Эра. Документация
Toggle preferences menu
Открыть персональное меню
Вы не представились системе
Your IP address will be publicly visible if you make any edits.

Работа с универсальным источником данных

Материал из Платформа Эра. Документации
Предыдущая статья курса: Работа с внешними системами. Возможности интеграции

Общая информация

Универсальный источник данных (dataSource) - это специализированная структура, описывающая способ получения данных для элементов управления (Controls).

Использование dataSource на вкладке UI класса

Любой контрол (таблица, карточка график и т.д.) может получать данные для отображения не только из хранилища (используется по-умолчанию), но и из сторонних источников.

Примеры сторонних источников:

  • class - набор сущностей класса. По факту является вариантом по-умолчанию
  • enum - содержимое перечисления (раздел Enum в приложении Builder)
  • data - явно заданный константный массив данных
  • code - выполнение произвольного фрагмента кода, возвращающее коллекцию значений для отображения
  • action - выполнение метода любого микросервиса

Кроме указания источника данных, dataSource также позволяет задать правила фильтрации данных, выводимых контролом.

Пример использования dataSource для доступа к данным класса с фильтрацией:

{
    "kind": "class",
    "class_fullMultiName": "creomate_tutorial/contact/Contacts",
    "selection": {
        "filter": [
            "or",
            ["isnull",["parameter","place"]],
            ["==",["property","place_id"],["parameter","place"]]
        ]
    }
}

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

{
    "kind": "enum",
    "enum_fullName": "crm/TaskPriority"
}

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

{
    "kind": "action",
    "action":{

        "service":"wfm.HolderService",
        "method":"Schedule_calculateTurns",
        "request":{

            "id":["parameter", "id"],
            "parameters":{

                "paramName1":["parameter", "timeStart"],
                "paramName2":["parameter", "timeFinish"],
                "paramName3":["parameter", "calendarView"]

            },
            "responsePath":"turns"

        }

    }
}

В данном примере, в свойства id, paramName1, paramName2 и paramName3 передаются значения параметров из контрола с помощью связи.

Обработчики в универсальном источнике данных

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

postProcessItemCode - содержит код, применяемый к каждому элементу выборки. Позволяет модифицировать значения свойств данных при получении

postFilterCode - содержит код, применяемый к каждому элементу выборки. Позволяет фильтровать выбираемые значения, должен возвращать true или false

postProcessCollectionCode - содержит код, исполняемый после загрузки всей коллекции значений

Возврат данных из сервиса для отображения в контроле

Следующая статья курса: Задание 10. Обработка данных
Предыдущая статья курса: Работа с внешними системами. Возможности интеграции