Files
cc-1c-skills/.augment/skills/form-compile/references/table-advanced.md
T

8.4 KiB
Raw Blame History

Таблица — продвинутые возможности

Базовый элемент таблицы (type: "table", колонки, основные свойства) описан в основной инструкции, раздел «Таблица (table)». Здесь — продвинутые возможности: дополнения командной панели, специфика таблицы динамического списка и неочевидные свойства/режимы.

Представление (representation)

Как таблица рисует строки:

{ "table": "Список", "path": "Список", "representation": "Tree" }

List — плоский список (по умолчанию), Tree — дерево, HierarchicalList — иерархический список (группы + элементы на одном уровне).

Для дерева/иерархии управляйте раскрытием уровней через initialTreeView (ExpandTopLevel / ExpandAllLevels / NoExpand).

Выделение и текущая строка

Ключ Значения Назначение
selectionMode SingleRow / MultiRow Режим выделения строк
multipleChoice bool Разрешить множественный выбор (для форм выбора)
currentRowUse DontUse / Use / SelectionPresentation / SelectionPresentationAndChoice / Choice Использование текущей строки таблицы
{ "table": "Список", "path": "Список", "selectionMode": "MultiRow", "multipleChoice": true }

Поиск при вводе (searchOnInput)

Поведение встроенного поиска при наборе текста в таблице:

{ "table": "Список", "path": "Список", "searchOnInput": "Use" }

Auto (по умолчанию) / Use (искать) / DontUse (не искать).

Где располагать сами элементы поиска — управляется searchStringLocation / viewStatusLocation / searchControlLocation (None / Top / Bottom / CommandBar / Auto).

Прочие свойства таблицы

Ключ Тип Назначение
useAlternationRowColor bool Чередование цвета строк
verticalLines / horizontalLines bool Линии сетки (укажите false, чтобы скрыть)
markIncomplete bool Автоотметка незаполненных ячеек
heightInTableRows int Высота элемента в строках (отдельно от height)
autoInsertNewRow bool Автодобавление новой строки при вводе в последнюю
rowsPicture string | object Картинка строк. Ссылка ("CommonPicture.X", "abs:...") либо объект { src, loadTransparent?, transparentPixel? }
tooltipRepresentation string Режим показа подсказки таблицы: None, Button, ShowBottom, ShowTop, ShowLeft, ShowRight, ShowAuto, Balloon

Фиксация колонки (fixingInTable)

Свойство колонки (на input / labelField / check / picField внутри columns), а не самой таблицы. Закрепляет колонку у края при горизонтальной прокрутке:

{ "table": "Товары", "path": "Объект.Товары", "columns": [
  { "input": "Номенклатура", "path": "Объект.Товары.Номенклатура", "fixingInTable": "Left" },
  { "input": "Количество", "path": "Объект.Товары.Количество" }
]}

Left / Right / None.

Исключённые команды (excludedCommands)

Убрать стандартные команды редактора таблицы (кнопки добавления/перемещения/сортировки):

{ "table": "Товары", "path": "Объект.Товары",
  "excludedCommands": [ "Add", "Delete", "MoveUp", "SortListAsc" ] }

Свойство работает на любом поле и на уровне формы; для таблицы значимы команды вида Add / Delete / MoveUp / MoveDown / SortListAsc / SortListDesc.

Дополнения командной панели (additions)

Дополнения — это «представления» встроенного поиска таблицы:

  • searchString — отображение строки поиска,
  • viewStatus — состояние просмотра,
  • searchControl — управление поиском.

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

(1) Стандартные дополнения генерирует платформа на уровне таблицы. В DSL указывайте только отклонения от стандартного вида — через карту additions (ключ = тип дополнения):

{ "table": "Список", "path": "Список",
  "additions": { "viewStatus": { "horizontalLocation": "left" } } }

(2) Кастомное дополнение, размещённое прямо в командной панели — обычный элемент в commandBar с ключом-типом:

{ "table": "Список", "path": "Список", "commandBar": [
  { "searchString": "ПоискСписка", "source": "Список", "width": 15, "horizontalStretch": true }
]}
  • Тип-ключ: searchString / viewStatus / searchControl.
  • source — имя таблицы-источника; необязательно, по умолчанию = имя родительской таблицы.
  • horizontalLocation: auto (по умолчанию) / left / right. Применимо и к обычным элементам командных панелей.
  • Прочие свойства как у поля: title, visible, userVisible, enabled, tooltip, оформление, width / maxWidth / autoMaxWidth / horizontalStretch / groupHorizontalAlign и др.

Таблица динамического списка

Когда path таблицы указывает на реквизит type: "DynamicList" (см. references/dynamic-list.md), доступен блок специфичных свойств. Указывайте только отличия от умолчания.

Ключ Тип Умолчание Назначение
rowPictureDataPath string картинка осн. таблицы Путь к картинке строки. "" — подавить картинку
rowsPicture string — Картинка строк ("CommonPicture.X")
autoRefresh bool false Автообновление списка
autoRefreshPeriod int 60 Период автообновления, сек
updateOnDataChange string Auto Обновлять при изменении данных: Auto / DontUpdate
choiceFoldersAndItems string Items Что выбирать: Items / Folders / FoldersAndItems
restoreCurrentRow bool false Восстанавливать текущую строку при обновлении
showRoot bool true Показывать корень
allowRootChoice bool false Разрешить выбор корня
allowGettingCurrentRowURL bool true Разрешить получение URL текущей строки
userSettingsGroup string — Группа пользовательских настроек (привязка к одноимённой группе настроек)
{ "table": "Список", "path": "Список",
  "representation": "Tree",
  "rowPictureDataPath": "Список.DefaultPicture",
  "choiceFoldersAndItems": "FoldersAndItems",
  "allowRootChoice": true,
  "updateOnDataChange": "DontUpdate" }