Свойства компонента интерфейса, унаследованного от компонента «ПроизвольныйСписок»
Список произвольного вида с элементами ПроизвольнаяСтрокаСписка.
Иерархия наследования
Свойства
ТипКомпонентаСтроки
Компонент ПроизвольнаяСтрокаСписка
или его наследник, который будет использоваться для вывода записи списка
КонтейнерСтрок
Экземпляр компонента, в котором список размещает свои элементы. Например, можно указать матричную группу, с колонками от 100 до 200:
Тип: ПроизвольныйСписок<ИсточникДанныхМассив<Строка>>
ТипКомпонентаСтроки: ЭлементСтрокиСписка
КонтейнерСтрок:
Тип: МатричнаяГруппа
ОписаниеАвтоматическихКолонок:
Ширина: 200
МинимальнаяШирина: 100
АвтоЗаполнение: ДобавлятьКолонкиИСтроки
Или горизонтальную группу вместо вертикальной:
Тип: ПроизвольныйСписок<ИсточникДанныхМассив<Строка>>
ТипКомпонентаСтроки: ЭлементСтрокиСписка
КонтейнерСтрок:
Тип: ФиксированнаяГруппа
Ориентация: Горизонтальная
Если Авто
, то «Исполнитель» использует вертикальную ориентацию. Экземпляр компонента описывается следующими свойствами:
Тип
Обязательное. Имя компонента, экземпляр которого вы описываете. Это может быть системный компонент или компонент интерфейса. Пример YAML-файла:
ВидЭлемента: КомпонентИнтерфейса
Ид: 9f51db7f-c98d-499c-9607-545d5e0a58c2
Имя: МояФормаОбъекта
Наследует:
Тип: ФормаОбъекта<МойСправочник.Объект>
ВключатьВАвтоИнтерфейс: Ложь
Содержимое:
Тип: ПроизвольныйШаблонФормы
Содержимое:
Тип: ФиксированнаяГруппа
Содержимое:
-
Тип: Флажок
Имя: ЗагружатьВсе
Заголовок: Загружать все данные
Значение:
Тип: Булево
Значение: Истина
-
Тип: Флажок
Имя: ПерезаписыватьСтарые
Заголовок: Перезаписывать старые элементы
Имя
Имя экземпляра компонента. По этому имени можно будет обратиться к экземпляру. Пример YAML-файла:
ВидЭлемента: КомпонентИнтерфейса
Ид: 9f51db7f-c98d-499c-9607-545d5e0a58c2
Имя: МояФормаОбъекта
Наследует:
Тип: ФормаОбъекта<МойСправочник.Объект>
ВключатьВАвтоИнтерфейс: Ложь
Содержимое:
Тип: ПроизвольныйШаблонФормы
Содержимое:
Тип: ФиксированнаяГруппа
Имя: Флажки
Содержимое:
-
Тип: Флажок
Имя: ЗагружатьВсе
Заголовок: Загружать все данные
Значение: Истина
-
Тип: Флажок
Имя: ПерезаписыватьСтарые
Заголовок: Перезаписывать старые элементы
Например, к его свойству Видимость
:
ВидЭлемента: КомпонентИнтерфейса
Ид: 9f51db7f-c98d-499c-9607-545d5e0a58c2
Имя: МояФормаОбъекта
Наследует:
Тип: ФормаОбъекта<МойСправочник.Объект>
ВключатьВАвтоИнтерфейс: Ложь
Видимость: =Компоненты.Флажки.Видимость
Содержимое:
Тип: ПроизвольныйШаблонФормы
Содержимое:
Тип: ФиксированнаяГруппа
Имя: Флажки
Содержимое:
-
Тип: Флажок
Имя: ЗагружатьВсе
Заголовок: Загружать все данные
Значение: Истина
-
Тип: Флажок
Имя: ПерезаписыватьСтарые
Заголовок: Перезаписывать старые элементы
ОтслеживатьИзменениеДанных
Не обязательное. По умолчанию Ложь
.
Если Истина
, то «Исполнитель» будет учитывать изменение данных в этом экземпляре при вычислении свойства РассчитаннаяМодифицированность
у экземпляра этого компонента интерфейса. Пример YAML-файла:
ВидЭлемента: КомпонентИнтерфейса
Ид: 9f51db7f-c98d-499c-9607-545d5e0a58c2
Имя: МояФормаОбъекта
Наследует:
Тип: ФормаОбъекта<МойСправочник.Объект>
ВключатьВАвтоИнтерфейс: Ложь
Содержимое:
Тип: ПроизвольныйШаблонФормы
Содержимое:
Тип: ФиксированнаяГруппа
ОтслеживатьИзменениеДанных: Истина
Содержимое:
-
Тип: Флажок
Имя: ЗагружатьВсе
Заголовок: Загружать все данные
Значение: Истина
-
Тип: Флажок
Имя: ПерезаписыватьСтарые
Заголовок: Перезаписывать старые элементы
<Свойство компонента>
Значение свойства компонента в этом экземпляре. Если тип свойства составной (включает несколько типов), необходимо указать тип значения. Иначе просто само значение. Пример YAML-файла:
ВидЭлемента: КомпонентИнтерфейса
Ид: 9f51db7f-c98d-499c-9607-545d5e0a58c2
Имя: МояФормаОбъекта
Наследует:
Тип: ФормаОбъекта<МойСправочник.Объект>
ВключатьВАвтоИнтерфейс: Ложь
Содержимое:
Тип: ПроизвольныйШаблонФормы
Содержимое:
Тип: ФиксированнаяГруппа
Ориентация: Горизонтальная
Содержимое:
-
Тип: Флажок
Имя: ЗагружатьВсе
Заголовок: Загружать все данные
Значение:
Тип: Булево
Значение: Истина
-
Тип: Флажок
Имя: ПерезаписыватьСтарые
Заголовок: Перезаписывать старые элементы
<Событие компонента>
Имя метода, обрабатывающего событие компонента в этом экземпляре. Метод должен находиться в модуле компонента. Пример YAML-файла:
ВидЭлемента: КомпонентИнтерфейса
Ид: 9f51db7f-c98d-499c-9607-545d5e0a58c2
Имя: МояФормаОбъекта
Наследует:
Тип: ФормаОбъекта<МойСправочник.Объект>
ВключатьВАвтоИнтерфейс: Ложь
Содержимое:
Тип: ПроизвольныйШаблонФормы
Содержимое:
Тип: ФиксированнаяГруппа
ПриНаведении: ОбработчикПриНаведении
Содержимое:
-
Тип: Флажок
Имя: ЗагружатьВсе
Заголовок: Загружать все данные
Значение:
Тип: Булево
Значение: Истина
-
Тип: Флажок
Имя: ПерезаписыватьСтарые
Заголовок: Перезаписывать старые элементы
АвтоВыделениеСтроки
Авто|АвтоВыделениеСтроки
. Режим автоматической установки текущей строки: АвтоВыделениеСтроки.ВыделятьПервый
и АвтоВыделениеСтроки.Выключено
. При значении ВыделятьПервый
и если ИспользоватьВыделениеСтроки равно Истина
, то при первом отображении списка текущей строкой устанавливается первая строка и вызывается событие ПриВыделенииСтроки
. Событие ПриНажатииСтроки
в этом случае не вызывается.
ВыделеннаяСтрока
Содержит идентификатор текущего элемента списка или Неопределено
, если текущего элемента нет. Идентификаторы элементов списка зависят от типа источника:
- В случае динамического списка это ссылка на элемент данных, например на элемент справочника;
- В случае источника данных на основе массива это данные элемента.
ИспользованиеПоиска
Авто|Булево
. Управляет отображением поисковой строки. Возможные значения:
Авто
— строка поиска отображается и задействована при наличии данных, по которым можно выполнять поиск;Истина
— строка поиска отображается и задействована вне зависимости от наличия данных, по которым можно выполнять поиск;Ложь
— строка поиска не отображается и не задействована.
ИспользоватьВыделениеСтроки
Признак использования функциональности текущего элемента. Если равно Ложь
(стандартное значение), то функциональность текущег о элемента не используется:
- Вызов метода
ВыделитьСтроку()
ничего не делает; - Нажатие на строку списка не приводит к установке ее текущей;
- Свойство ВыделеннаяСтрока всегда равно
Неопределено
.
ИспользоватьОтметкиСтрок
Булево
. Включает или выключает функциональность множественного выделения строк списка. Если равно Истина
, то в список будет автоматически добавлена специальная колонка с флажками для выбора строк.
Источник
Источник данных списка. Экземпляр типа ДинамическийСписок
или ИсточникДанныхМассив
.
ЗамещающийТекстПоляПоиска
Устанавливает в поле ввода поиска замещающий текст. Если не задано, будет отображено «Поиск…»
Команды
ФрагментКомандногоИнтерфейса<Команда>?
. Данное свойство позволяет задать команды, отображаемые в командной панели списка либо таблицы. Командная панель располагается над основным компонентом. Если используется в таблице и у таблицы включено свойство ОтображатьНастройки, в командной панели также будет отображаться кнопка открытия настроек. Команды, которые не уместились в командной панели на форме, переносятся в меню Еще, отображаемое в правой части командной панели. Если значение свойства Неопределено
, командная панель не отображается. По умолчанию — Неопределено
. Пример:
Команды:
Тип: ФрагментКомандногоИнтерфейса<Команда>
Элементы:
-
Тип: ОбычнаяКоманда
Представление: Добавить запись
Изображение: Плюс.svg
Обработчик: ПриДобавлении
-
Тип: ГруппаКомандногоИнтерфейса<Команда>
Представление: Группа 2
Изображение: Зарплата.svg
ВидОтображения: ГруппаКнопок
Элементы:
-
Тип: ОбычнаяКоманда
Представление: Команда 2.1
Обработчик: ПриНажатииКоманды
-
Тип: ОбычнаяКоманда
Представление: Команда 2.2
Изображение: Корзина.svg
Обработчик: ПриНажатииКоманды
КомандыНадОтмеченнымиСтроками
Описание команд действий выпадающей панели над множеством отмеченных строк. Параметр обработчика команды — массив идентификаторов строк списка. Идентификаторы строк списка зависят от типа источника:
- в случае динамического списка — это ссылка на экземпляр сущности;
- в случае источника данных на основе массива — это данные строки.
Получить доступ к массиву идентификаторов отмеченных строк списка можно через параметр ОтмеченныеСтроки. Параметр имеет тип Массив<ТипИсточника.ТипИдентификатора>
и содержит массив идентификаторов отмеченных строк.
Пример 1. В примере описывается таблица Таблица1
, источником данных для которой служит структура МояСтруктура
с полями Бренд
, Цена
, Страна
и Наличие
. Для отмеченных строк таблицы определены две команды: ПоменятьБренд
и УдалитьВыделенные
.
Описание таблицы Таблица1
в yaml-файле:
Тип: Таблица<ИсточникДанныхМассив<МояСтруктура>>
Имя: Таблица1
ИспользоватьОтметкиСтрок: Истина
КомандыНадОтмеченнымиСтроками:
Тип: ФрагментКомандногоИнтерфейса<КомандаСПараметром<Массив<МояСтруктура>>>
Элементы:
-
Тип: КомандаСПараметром<Массив<МояСтруктура>>
Представление: Удалить выделенные
Обработчик: УдалитьВыделенные
-
Тип: КомандаСПараметром<Массив<МояСтруктура>>
Представление: Поменять бренд
Обработчик: ПоменятьБренд
Колонки:
-
Тип: СтандартнаяКолонкаТаблицы<МояСтруктура>
Имя: Бренд
ПолеЗначения: Бренд
-
Тип: СтандартнаяКолонкаТаблицы<МояСтруктура>
Имя: Цена
ПолеЗначения: Цена
-
Тип: СтандартнаяКолонкаТаблицы<МояСтруктура>
Имя: Страна
ПолеЗначения: Страна
-
Тип: СтандартнаяКолонкаТаблицы<МояСтруктура>
Имя: Наличие
ПолеЗначения: Наличие
Описание методов УдалитьВыделенные
и ПоменятьБренд
в xbsl-файле:
метод УдалитьВыделенные(Команда: КомандаСПараметром<Массив<МояСтруктура>>,
Выделенные: Массив<МояСтруктура>)
для Строка из Выделенные
Компоненты.Таблица1.Источник.Данные.Удалить(Строка)
;
;
метод ПоменятьБренд(Команда: КомандаСПараметром<Массив<МояСтруктура>>, Выделенные: Массив<МояСтруктура>)
для Строка из Выделенные
Строка.Бренд = "BMW"
;
;
Пример 2. В примере описывается форма ФормаТаблицы
, которая содержит флажок ИспользоватьКомандыНадОтмеченными
и таблицу Таблица1
, источником данных для которой служит структура МояСтруктура
с полями Бренд
, Цена
, Страна
и Наличие
. Если значение флажка — Истина
, то к отмеченным строкам применяется метод КомандыНадОтмеченными
. Он инвертирует значение в колонке Наличие
и соответствующим образом меняет изображение элемента команды.
Описание формы ФормаТаблицы
в yaml-файле:
ВидЭлемента: КомпонентИнтерфейса
Ид: d031d576-aee7-4053-a2c7-008f4a10183c
Имя: ФормаТаблицы
ОбластьВидимости: ВПодсистеме
Свойства:
-
Имя: ИспользоватьКомандыНадОтмеченными
Тип: Булево
ЗначениеПоУмолчанию: Ложь
Наследует:
Тип: Форма
Содержимое:
Тип: ШаблонФормыСРазделами
ОсновнойРаздел:
Тип: ОбластьРазделаФормы
Содержимое:
-
Тип: Флажок
Заголовок: ИспользоватьКомандыНадОтмеченными
Значение: =ИспользоватьКомандыНадОтмеченными
-
Тип: Таблица<ИсточникДанныхМассив<МояСтруктура>>
Имя: Таблица1
КомандыНадОтмеченнымиСтроками: '=ИспользоватьКомандыНадОтмеченными ? КомандыНадОтмеченными(ОтмеченныеСтроки) : Неопределено'
ИспользоватьОтметкиСтрок: Истина
Колонки:
-
Тип: СтандартнаяКолонкаТаблицы<МояСтруктура>
Имя: Бренд
ПолеЗначения: Бренд
-
Тип: СтандартнаяКолонкаТаблицы<МояСтруктура>
Имя: Цена
ПолеЗначения: Цена
-
Тип: СтандартнаяКолонкаТаблицы<МояСтруктура>
Имя: Страна
ПолеЗначения: Страна
-
Тип: СтандартнаяКолонкаТаблицы<МояСтруктура>
Имя: Наличие
ПолеЗначения: Наличие
Описание метода КомандыНадОтмеченными
в xbsl-файле:
метод КомандыНадОтмеченными(ОтмеченныеСтроки: Массив<МояСтруктура>): ФрагментКомандногоИнтерфейса<КомандаСПараметром<Массив<МояСтруктура>>>
пер ТолькоВНаличии = ТолькоВНаличии(ОтмеченныеСтроки)
пер Представление = ТолькоВНаличии ? "Есть в наличии (команда отмеченных)" : "Нет в наличии (команда отмеченных)"
пер Изображение = ТолькоВНаличии ? Ресурс{Плюс.svg}.Ссылка : Ресурс{Минус.svg}.Ссылка
возврат