3.5.2.1.4. BulkEditor
BulkEditor
- компонент, позволяющий менять значения атрибутов сразу нескольких выбранных экземпляров сущностей. Компонент представляет собой кнопку, добавляющуюся к таблице или дереву и при нажатии открывающую редактор сущностей.
XML-имя компонента: bulkEditor
|
Для использования BulkEditor
у таблицы или дерева должен быть задан атрибут multiselect="true"
.
Экран редактирования сущностей генерируется автоматически на основе заданного представления (содержащего только поля данной сущности, в том числе ссылки), динамических атрибутов данной сущности (если есть) и разрешений пользователя. Системные атрибуты в редакторе также не отображаются.
Атрибуты сущности в редакторе сортируются по алфавиту. По умолчанию они пусты. При коммите экрана заданные на экране непустые значения атрибутов проставляются всем выбранным экземплярам сущности.
Редактор позволяет удалить значение определенного поля в БД у всех выбранных сущностей, установив его в null
. Для этого необходимо нажать на кнопку рядом с соответствующим полем. После этого поле становится нередактируемым. Разблокировать поле можно, нажав на кнопку эту же кнопку снова.
Пример описания компонента bulkEditor
для таблицы:
<table id="invoiceTable"
multiselect="true"
width="100%">
<actions>
<!-- ... -->
</actions>
<buttonsPanel>
<!-- ... -->
<bulkEditor for="invoiceTable"
exclude="customer"/>
</buttonsPanel>
-
Атрибуты
bulkEditor
-
-
Атрибут
exclude
может содержать регулярное выражения для явного исключения определенных полей из списка редактируемых. Например:date|customer
-
Атрибут
includeProperties
указывает список атрибутов сущности, которые должны отображаться в окне редактораbulkEditor
. Если список задан, все прочие атрибуты сущности будут игнорироваться.includeProperties
не распространяется на динамические атрибуты сущности.Чтобы указать атрибуты декларативно, перечислите их через запятую в дескрипторе экрана:
<bulkEditor for="ordersTable" includeProperties="name, description"/>
Список атрибутов также может быть программно задан в контроллере экрана:
bulkEditor.setIncludeProperties(Arrays.asList("name", "description"));
-
Атрибут
loadDynamicAttributes
управляет отображением динамических атрибутов редактируемой сущности в окне редактораbulkEditor
. Значение по умолчаниюtrue
.
-
useConfirmDialog
управляет отображением диалогового окна подтверждения перед сохранением изменений. Значение по умолчаниюtrue
.
-
columnsMode
− количество колонок в окне редактораbulkEditor
, задаваемое значением перечисленияColumnsMode
. По умолчаниюTWO_COLUMNS
. Например:<groupTable id="customersTable" width="100%"> <actions>...</actions> <columns>...</columns> <buttonsPanel id="buttonsPanel" alwaysVisible="true"> ... <bulkEditor for="customersTable" columnsMode="ONE_COLUMN"/> </buttonsPanel> </groupTable>
Внешний вид редактора
bulkEditor
можно настроить с помощью переменных SCSS с префиксом$c-bulk-editor-*
. Эти переменные можно изменить в визуальном редакторе после расширения темы или создания новой темы. -
- Атрибуты bulkEditor
-
align - caption - captionAsHtml - columnsMode - css - description - descriptionAsHtml - enable - exclude - box.expandRatio - for - htmlSanitizerEnabled - icon - id - includeProperties - loadDynamicAttributes - openType - stylename - tabIndex - useConfirmDialog - visible - width