EditableGrid

Назначение компонента

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

Свойства

Компонента имеет набор общих свойств.

Наименование свойства Назначение свойства Принимаемые значения
Multiselectable позволяет задать возможность единовременного выбора одной или нескольких записей в Таблице; выбранные строки окрашиваются в отличный от других строк цвет
  • возможность выбора сразу нескольких или одной строки
  • возможность выбора одной строки - значение по умолчанию
Checkbox Column позволяет поставить отметку в виде флажка на тех записях, которые выбраны пользователем в рамках работы с компонентой Таблица
  • значение не определено - по умолчанию
  • Активно - отображать колонку флагов
  • Не активно - не отображать колонку флагов
Ref To Main Table PK указывает колонку, в которой записан Main Table PK Column
Main Table PK Column указывает id строки на основе, которой будет производиться выборка в таблицу
Row click selection type позволяет задать поведение выбора строк при клике на строку Таблицы
  • SINGLE_SELECT_CLICK – при клике на строку предыдущие выбранные строки сбрасываются, если не была зажата клавиша Ctrl или Shift- данный метод выбран по умолчанию
  • MULTI_SELECT_CLICK -при каждом клике на строку, предыдущие выбранные строки не сбрасываются, т.е если кликнули на одну строку, а затем на другую, то первая строка останется выбранной. Клик по уже выбранной строке снимает с неё выделение. Использования данного метода допустимо, в случае, если в таблице доступен выбор нескольких строк (при значениисвойстваMultiselectable)
  • SUPPRESS_SELECT_CLICK – исключает возможность выбора (выделения) строки по клику. В данном случае, выбор строки представляется возможным только при использовании чекбоксов.
Row edition type позволяет указать тип открытия редакторов ячеек
  • DOUBLE_CLICK–дефолтное поведение для открытия редакторов ячеек. При двойном клике открывается редактор ячейки.
  • SINGLE_CLICK– при одинарном клике открывается редактор ячейки. Эта настройка позволяет редактировать значения в ячейках по аналогии с Excel-ем.
  • NO_CLICK– ни одинарный, ни двойной клик не открывает редактор ячейки. Эта настройка полезна, если вы хотите редактировать значения в ячейках по другому, например при нажатии на кнопку в ячейке.
Row Height позволяет задать высоту строки в таблице в пикселях (px) пример возможного значения: 20
Auto Stretch Columns позволяет задать возможность автоматического выравнивания ширины столбцов по ширине
  • выравнивать ширину столбцов- значение по умолчанию
  • не выравнивать ширину столбцов
Pinned Bottom Row Label позволяет задать значение для названия итоговой строки таблицы (строки с агрегирующими значениями по колонкам таблицы) пример возможного значения: Итого

Для добавления колонки в таблицу необходимо добавить один из компонент:

Настройка колонок компоненты

Наименование Назначение
Pinned Указывает с какой стороны закрепить колонку
Hidden Указывает видимость колонки
Editable Задает возможность изменять значения в колонке
Header Type Задает тип заголовка колонки(статичный или из переменной процесса)
Sortable Задает возможно сортировать таблицу по значениям колонки
Id Column Задает колонку из базы, откуда будут заполнятся значения в таблице

Скрипты

Форматеры

Наименование форматера Назначение форматера Настраиваемые значения
NumberAggregationFormatter Форматирует агрегированное значение в ‘итого’. Script, Decimal Delimiter, Decimal Length, Sections Delimiter, Sections Length.
RoundingAggregationFormatter Округляет агрегированное числовое значение в ‘итого’. Decimals.

Часто задаваемые вопросы

Вопрос Ответ
Какие таблицы БД необходимо включать в Граф сущностей редактируемого грида? Только те, в которые необходимо сохранять данные при сохранении или включать и те таблицы, которые используются и для отображения данных в элементах, входящих в таблицу (комбобокс например)? Включать необходимо все таблицы отображаемые в гриде.
При редактировании записей и последующем сохранении в БД производился INSERT новой записи, а не UPDATE уже существующей.? Неправильная настройка компоненты.
Каким образом настраивать свойство “Подлежит сохранению” у самого грида и элементов внутри него? В той ячейке, где мне не нужно сохранять данные в БД ставит значение FALSE ? Свойство"Подлежит сохранению"необходимо указывать только у EditableGrid.
Как будет работать компонента ОТМ внутри грида. При быстром просмотре и добавлении увидели, что нет возможности вызвать диалоговое окно для выбора записи Будет исправлено в последующих версиях
При использовании комбинации ctrl A, ctrl C и ctrl V в строке данные вставляются, но при переключении на другую строку сбрасываются. При копировании значения из одного эдитора в другой, значение вставляется, в случае вставки значения в Combobox необходимо дополнительно выбрать значение из списка.
Каким образом будет настроено удаление записи в гриде? Выделение строк и нажатие кнопки удаления.
Как подвести итоги по колонке, а не по строчке Чтобы подвести итог по колонке, необходимо в нужной колонке указать свойства Aggregation Function
Как обратиться к ячейке, чтобы задать значение с помощью ActionController, например, при нажатии на кнопку на форме Если нажата кнопка “Отклонить” на форме, то для всех ранее отмеченных строк (с помощью флага) в EG выставить значение ячеек статус (ComboBox) в этих строках в значение “Отклонить”. С помощью ActionController нельзя обратиться к ячейке.
Как реализовать проверку заполненности ячейки EG в зависимости от значения другой ячейки с выдачей диалога и последующим возвращением фокуса в ячейку, которая не должна остаться пустой. Как это сделать в рамках одной строчки, а также в рамках разных строчек, а также всего EG (например, в зависимости от каких то агрегатов - итогов по строчкам или колонкам). Если пользователь выбирает в ячейке EG статус “Отклонено” (ComboBox) , то соседняя ячейка в строке “Причина отклонения” не должна остаться пустой - выдать диалог и вернуться в пустую ячейку, не давая из нее выйти без заполнения .• Если за день списано больше 24 часов - то вызвать диалог “Много работаете”• Если в понедельник по первой задаче списано 8 часов, то в среду по связанной задаче не может быть меньше 4 часов.• Перед самым моментом сохранения формы, проверить ВСЕ ячейки EG в колонке “комментарий пользователя” на их заполненность , если в соседних ячейках “Статус” найдены значения “Отклонить”. С помощью ActionController нельзя обратиться к ячейке.
Как задать фиксированную ширину колонки EG в пикселях? Можно задать Width в ячейке. Чтобы зафиксировать ширину нужно задать Width Fixed, временно эта функция не работает, исправляем.