Типы встроенного языка и свойства компонента командного интерфейса вида «КомандаСПараметром»
метод ВыполнитьКомандуСПараметром(Команда: КомандаСПараметром<Массив<Сущность.Ссылка>>, Параметр: Массив<Сущность.Ссылка>)
После того как вы добавили в проект команду с параметром и дали ей имя, создаст соответствующий тип встроенного языка, имя которого будет совпадать с именем вашей команды с параметром. Так, для команды с параметром ВыполнитьЗадачи из примера ниже будет создан тип ВыполнитьЗадачи.
Свойства
В проекте компонент командного интерфейса КомандаСПараметром имеет следующие свойства:
- Важность
-
ВажностьКоманды. Определяет приоритет при отображении нескольких команд. Например, команда с важностью Низкая будет отображаться в выпадающем меню «Еще». Возможные значения:
- Высокая
- Обычная
- Низкая
- Видимость
- Булево. Управляет видимостью команды. Если Ложь, команда скрыта в интерфейсе.
- Доступность
- Булево. Управляет доступностью команды. Если Ложь, команда недоступна для выполнения.
- Изображение
- ДвоичныйОбъект.Ссылка?. Графическое изображение на кнопке группы командного интерфейса.
- ОпасностьДействия
- ОпасностьДействия. Определяет опасность действия,
совершаемого пользователем, например, может ли нажатие на кнопку привести к
удалению данных. Возможные значения:
- Высокая
- Средняя
- Отсутствует
- Представление
- Строка. Текст кнопки группы командного интерфейса.
Пример
Рассмотрим пример использования команды с параметром из демонстрационного приложения. В данном примере такой командой является выполнение задач, но не всех, а только отмеченных. Именно список отмеченных задач и передается в команду как параметр:
Так выглядит команда с параметром в файле YAML соответствующей формы списка Задачи:
ИспользоватьОтметкиСтрок: Истина
КомандыНадОтмеченнымиСтроками:
Тип: ФрагментКомандногоИнтерфейса<КомандаСПараметром<Массив<Сущность.Ссылка>>>
Элементы:
-
Тип: КомандаСПараметром<Массив<Сущность.Ссылка>>
Представление: ВыполнитьЗадачи
Обработчик: ВыполнитьОтмеченныеЗадачи
А так — обработчик этой команды в модуле объекта той же формы списка (где
ВыполнитьОтмеченныеЗадачи
— обработчик,
Команда
— команда с параметром, Отмеченные
—
параметр):
метод ВыполнитьОтмеченныеЗадачи(Команда: КомандаСПараметром<Массив<Сущность.Ссылка>>, Отмеченные: Массив<Сущность.Ссылка>)
знч Задачи = <Задачи.Ссылка>[]
для Задача из Отмеченные
Задачи.Добавить(Задача как Задачи.Ссылка)
;
Компоненты.ТаблицаСписка.ОчиститьОтмеченныеСтроки()
ВыполнитьЗадачи(Задачи)
Компоненты.ТаблицаСписка.Обновить()
;
@НаСервере @ДоступноСКлиента
статический метод ВыполнитьЗадачи(Задачи: Массив<Задачи.Ссылка>)
для Задача из Задачи
знч ЗадачаОбъект = Задача.ЗагрузитьОбъект()
если ЗадачаОбъект.Статус != СтатусыМероприятия.Завершено
ЗадачаОбъект.Завершить()
;
;
;