Таблица

Назначение

Элемент предназначен для организации табличного ввода данных. В качестве элементов таблицы могут быть данные любых простых типов, а также ссылочные данные (ссылки на справочники и карточки Docsvision).

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

Отображение в области "Панель инструментов"

Отображение таблицы в области "Панель инструментов"
Рисунок 1. Отображение таблицы в области "Панель инструментов"

Отображение в запущенной карточке

Отображение таблицы в запущенной карточке
Рисунок 2. Отображение таблицы в запущенной карточке

Если столбец таблицы содержит ссылочные данные, в его ячейках будут отображаться кнопки для управления этими данными:

  • Кнопка выбора объекта.

  • Кнопка, позволяющая очистить поле.

Кнопки в столбце
Рисунок 3. Кнопки в столбце

Для ячеек таблицы числовых типов (int, float и т.д.) для чисел, состоящих из 4 и более знаков, при отображении каждые три цифры разделяются знаком, который в настройках Microsoft Windows определён как разделитель групп разрядов. В дробной части разделения цифр не предусмотрено (например: 1 234 567, 1234).

Настройка параметра Разделитель групп разрядов выполняется для выбранного языка в Панели управления Windows в подразделе Язык и региональные стандарты. Настройка разделителя выполняется отдельно для каждой из используемых локализаций.

Если столбец содержит карточку, станет активной кнопка Открыть карточку, предназначенная для открытия карточки.

Внешний вид

Видимость панели группировки

Включает (Да) или выключает (Нет) отображение панели группировки. С помощью данной панели осуществляется возможность группировки табличных данных по выбранным полям.

Скрыть панель с командами

Включает (Нет) или выключает (Да) отображение панели команд.

Столбцы

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

Диалог добавления и настроек столбца
Рисунок 4. Диалог добавления и настроек столбца

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

  • В категории Общие:

    • Видимый — определяет, отображать (True) или не отображать (False) столбец.

    • Имя — название столбца.

    • Только для чтения — определяет, запрещены (True) или разрешены (False) операции с данными столбца.

    • Ширина — определяет ширину столбца.

  • В категории Внешний вид:

    • Заголовок — текст, отображаемый в заголовке столбца.

      В категории Данные:

    • Значения нумератора — список возможных значений для столбца типа "Перечисление".

    • Изображение — изображение, используемое в заголовке столбца.

  • В категории Поведение:

    • Максимальная ширина — задаёт максимальную ширину столбца.

    • Минимальная ширина — задаёт минимальную ширину столбца.

    • Поле родительской секции — задаёт атрибуты родительской секции ссылки.

    • Поле ссылки — определяет ссылку, к которой будет привязана каждая строка таблицы.

      Если значение задано, то при добавлении каждой новой строки пользователю необходимо будет выбрать или значение из справочника, соответствующего указанной ссылке, или карточку Docsvision.

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

    • Поле родительской секции — используется для получения данных родительской секции по ссылке из дочерней секции. Например, может использоваться, чтобы при выборе сотрудника отображался e-mail Организации, в которой он числится.

    • Ссылочная колонка — колонка таблицы, на которую необходимо сослаться.

    • Ссылочная секция — секция таблицы, на которую необходимо сослаться.

      Для свойства предусмотрена настройка локализации.

Данные

У элемента типа Таблица есть свойство Источник данных, в котором с помощью специального редактора (выпадающий список) можно выбрать коллекционный раздел настраиваемой карточки. У столбца есть свойство Элемент данных, в котором выбирается поле для привязки столбца. При последующей работе таблица сохраняется в указанный раздел в соответствующие поля. Если для какого-то из столбцов не указан элемент данных, он сохраняется как свойство.

Источник данных

Тип поля данных — привязывается к табличной секции, содержащей поля любых допустимых в Docsvision типов. Указать расширенную секцию типа Table.

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

В секциях типа Table и Tree запрещается создавать поля метаданных с именем section (вне зависимости от регистра), т.к. данное имя зарезервировано системой.

Порядок

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

Поведение

Индекс быстрого поиска

Определяет количество символов, после ввода которых будет выполнен быстрый поиск подходящих значений в соответствующем справочнике. Значение поля — целое положительное число. Минимальное значение — 1. Значение по умолчанию — 3. См. Общие свойства элементов управления.

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

  • Организации.

  • Подразделения.

  • Сотрудника.

  • Организации контрагента.

  • Подразделения контрагента.

  • Сотрудника контрагента.

  • Значения из конструктора справочников.

Режим быстрого поиска определяется свойством элемента управления.

Настройка локализации

Допускается локализация общих свойств элемента. Описание настройки локализации содержится в разделе Общие свойства элементов управления.

Для элемента Таблица могут быть локализованы следующие элементы свойства "Столбцы":

Локализованные названия добавляются в окне, открываемом при выборе свойства Столбцы, при нажатии на кнопку в правой части поля перечисленных выше свойств.

Открытие окна локализации для свойств элемента управления "Таблица"
Рисунок 5. Открытие окна локализации для свойств элемента управления "Таблица"

Для свойства Заголовок будет открыто окно Локализация отображаемого значения, в котором следует указать значение локализации по умолчанию и текст локализованных названий. Для свойств Ширина, Максимальная ширина, Минимальная ширина будет открыто аналогичное окно Локализация значения. Подробнее о настройке локализации см. раздел Локализация разметки.

Добавление локализации для свойства "Заголовок"
Рисунок 6. Добавление локализации для свойства "Заголовок"

Также для элемента Таблица имеется особенность настройки локализации общего свойства Местоположение метки. При создании таблицы, для свойства будет задано значение Сверху.

Однако, по умолчанию для этого свойства используется значение Слева. Поэтому, если для свойства будет выбрано значение "по умолчанию", метка будет расположена в соответствии со значением по умолчанию, то есть "слева".

Ограничение выбора данных из Конструктора справочников

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

Ограничение устанавливается программным способом при возникновении события UniversalChooseBoxInitializing таблицы.

Добавление события в свойствах таблицы
Рисунок 7. Добавление события в свойствах таблицы
Пример обработчика события:
private void TableRefUni_UniversalChooseBoxInitializing(System.Object sender, UniversalItemChooseBoxColumnEventArgs e)
{

 e.UniversalItemChooseBox.ItemTypeId = new Guid("2F1F3B03-88BF-4059-ADAF-B2818CB7CAAA"); (1)


 e.UniversalItemChooseBox.SelectionArea = UniversalItemTypeSelectionArea.Subnodes; (2)
}
1 Определение идентификатора узла, которым ограничен выбор данных из Конструктора справочников.
2 Область выбора.
Область выбора может принимать одно из значений:
  • UniversalItemTypeSelectionArea.Node — разрешает выбор записей только из узла, указанного в ItemTypeId.

  • UniversalItemTypeSelectionArea.NodeAndSubnodes — выбор из узла ItemTypeId и из его подчиненных узлов.

  • UniversalItemTypeSelectionArea.Subnodes — выбор только из подчиненных (ItemTypeId) узлов.

Если в таблице несколько колонок, связанных с Конструктором справочников, то добавить отдельные условия для них можно, к примеру, проверив имя столбца перед установкой ограничений:

if(e.Column.Name = "FirtsColumnName")
{
 e.UniversalItemChooseBox.ItemTypeId = new Guid("2F1F3B03-88BF-4059-ADAF-B2818CB7CAAA");
 e.UniversalItemChooseBox.SelectionArea = UniversalItemTypeSelectionArea.Subnodes;
}else if(e.Column.Name = "SecondColumn")
{
 e.UniversalItemChooseBox.ItemTypeId = new Guid("E07C7F1C-7D9A-4AEA-9500-888496AAE30E");
 e.UniversalItemChooseBox.SelectionArea = UniversalItemTypeSelectionArea.Node;
}else if ...