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

Отображение данных. Таблицы и карточки

Материал из Платформа Эра. Документации
Версия от 12:56, 17 марта 2025; Elena (обсуждение | вклад)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Предыдущая статья курса: Задание 4. Взаимодействие классов

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

Интерфейсы пользователя в платформе Эра строятся при помощи специализированных объектов - контролов (Controls).

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

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

Также, можно вручную создавать контролы дополнительных типов, с помощью параметра controlKind. Полный список доступных контролов:

Окно редактирования настроек control'а
  • table
  • tree
  • card
  • chart
  • pie
  • funnel
  • gauge
  • value
  • indicator
  • dashboard
  • toolbar
  • filter
  • layout
  • boxes
  • frame
  • html
  • chat
  • calendar
  • presentation
  • help
  • empty
  • dynamic

Примеры работы с некоторыми из видов этих контролов, а так же ручное их редактирование будет рассмотрено в дальнейшем в рамках данного курса.

Поведение контрола также определяется параметром controlMode, который может принимать значения auto и custom. В режиме auto, структура данных контрола будет сформирована автоматически платформой, в случае же режима custom - структура определяется с помощью JSON'ов customItems / customColumns и т.д.

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

Общие параметры контрола
Название Значение по-умолчанию Комментарий
controlMode auto Задает режим формирования контрола
compactDesign
showCaption Отображать заголовок контрола
padding Отступы по краям контрола: none / small / medium / large
captionAllignment Выравнивание заголовка: left / right / center
data JSON, определяющий параметры контрола (в данное поле сохраняются параметры, заданные в параметрах класса, для автоматически созданных контролов)
dataSource Источник данных контрола. По-умолчанию, используется связанный объект
input Коллекция фильтров для вводимых данных
filter Коллекция фильтров для выводимых данных
allowHyperlinksRoles
extension
help JSON, описывающий параметры для вывода в справку

Табличный контрол

Группа tableControlOptions

Параметры для автоматически создаваемого табличного контрола, находятся в классе, на вкладке UI, в группе tableControlOptions.

При применении изменений пакета, контрол будет автоматически обновлен в сответствии указанными параметрами.

Таблица с полным списком параметров:


Параметры tableControlOptions
Название Значение по-умолчанию Комментарий
showToolbar отображать ли панель инструментов
allowShowCard разрешить переход в карточку объекта по кнопке Карточка (не в диалоговом окне, а со сменой адреса страницы)
allowCopy
allowColumnChoose разрешить выбор отображаемых столбцов
allowColumnReorder разрешить изменять очередность столбцов
allowColumnResize разрешить изменять ширину столбцов
allowSorting разрешить изменять сортировку данных по столбцам
allowFiltering разрешить фильтрацию данных
allowHeaderFiltering разрешить фильтрацию в заголовках столбцов (условно, по аналогии с фильтрами в колонках Excel)
allowImport разрешить импорт данных (CSV)
allowExport разрешить экспорт данных (XLSX, CSV)
allowReordering разрешить изменение очередности строк
allowSaveState
allowJSON
allowDelete
allowGroupDelete
allowGroupModify
allowMultiSelect
allowGenerateEntityDocument
allowGenerateCollectionDocument
showFilterRow отображать ли строку фильтра (под заголовками столбцов)
showFilterBuilder отображать ли конструктор произвольного фильтра
showSearchPanel отображать ли строку поиска
showRowNumbers
showHeader
cellPadding
editMode режим редактирования и добавления строк:
  • popup – простое диалоговое окно (без вкладок, групп, кнопок и т.д.)
  • form – простая панель (отображается прямо в таблице на месте текущей строки)
  • cardpopup – полноценная карточка в диалоговом окне
  • card – полноценная карточка со сменой адреса страницы
  • row – редактирование по строкам (изменение значений в ячейках таблицы после нажатия на кнопку Изменить)
  • cell – редактирование по ячейкам (изменение значений в ячейках таблицы без нажатия на кнопку Изменить)
pageMode режим постраничности (если не указан, система выбирает его автоматически в зависимости от режима кеширования – clientScroll или serverScroll):
  • disabled – отключено
  • clientPager – все данные загружены в браузер, переключение между страницами локальное
  • serverPager – в браузер загружена только текущая страница, каждое переключение между ними обращается за очередной порцией данных на сервер
  • clientScroll – все данные загружены в браузер, отрисовывается только видимая часть по мере прокрутки
  • serverScroll – в браузер загружена только видимая часть данных, прокрутка приводит к обращению на сервер за очередной порцией данных
pageSize текущий размер страницы (количество строк) и допустимые варианты (отображается только в режимах pager)
pageSizes
customColumns
customButtons
doubleClickBehaviour поведение при двойном клике (позволяет отключить редактирование строки по двойному клику либо наоборот открывать readonlyкарточку для нередактируемых таблиц)
doubleClickCode
autoFocusMode
autoFocusConditionCode
wordWrap разрешить ли перенос слов по строкам
beforeInitCode
afterInitCode
cardControl_fullName имя элемента управления, который используется таблицей в качестве карточки. По умолчанию используется стандартная (сгенеренная автоматически) карточка, но в ряде случаев бывает удобно ее изменить
cardShowCapton
hiddenColumns
defaultValues
allowRefresh
autoRefreshInterval
Группа Table

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

Параметры отображения свойств в таблице могут быть изменены в каждом конкретном свойстве, на вкладке UI, в группе Table.

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

Полный перечень параметров группы Table
Название Значение по-умолчанию Комментарий
width Ширина колонки
wordWrap Нет Использовать ли перенос слов в конкретной колонке
allowShowHide Да Разрешить скрытие колонки
allowSorting Да Разрешить сортировку по колонке
allowFiltering Да Разрешить фильтрацию по колонке
allowHeaderFiltering Да Разрешить фильтрацию в заголовке данной колонки
allowSearch Да Разрешить поиск по данной колонке
showCellHint Отображать подсказку в в клетке
exportMode auto Разрешить экспорт данных из колонки: auto / enabled / disabled
formatConditions


Контрол карточки

Группа cardControlOptions

Параметры, определяющие контрол отображения карточки находятся в классе, на вкладке UI, в группе cardControlOptions.

Также, значимую часть в настройках такого контрола несут параметры свойств карточки, на вкладке UI, в группе Card.

Для начала, необходимо рассмотреть общие параметры контрола карточки:

Параметры cardControlOptions
Название Значение по-умолчанию Комментарий
colCount 2 Количество столбцов разметки, на которое делится карточка (используется для адаптивной верстки)
mainTabCaption Заголовок основной вкладки карточки
allowDelete Разрешить удаление данных
customItems JSON'ы для описания кастомных элементов карточки
customButtons
autoClose
allowClose Разрешить ручное закрытие карточки (по кнопке с крестиком)
timerPropertyName
showHistoryChanges
showHistoryChangesRoles
autoAction
showErrorMessage
constObjectNotFound
dialogScenario_code
prompt




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