Обычная кнопка-подменю
Понадобилось в ряд кнопок добавить новую кнопку-подменю. Оказывается, подменю возможно только в командной панели.
Поэтому сначала создаю командную панель, в ней группу формы с видом «подменю». А уже в эту группу добавляю нужные кнопки.
Вот как выглядели кнопки до изменений:
А вот уже после изменений:
По сути я убрал кнопку «Создать отгрузку» и создал свою, уже с возможностью выбора различных вариантов:
Элементы и команды создаю в процедуре «При создании на сервере»:
//== Создать партии - разные команды Элементы.Pochta_СоздатьОтгрузку.Видимость = ложь; //Убираем стандартную кнопку //Создаем панель команд КП в одном ряду с кнопками Привязка = Элементы.Pochta_СоздатьОтгрузку; КП = Элементы.Вставить("дор_КПСозданияПартий", Тип("ГруппаФормы"), Привязка.Родитель, Привязка); КП.Вид = ВидГруппыФормы.КоманднаяПанель; //Создаем группу команд Подменю в панели КП Подменю = Элементы.Добавить("дор_ГруппаСозданияПартий", Тип("ГруппаФормы"), КП); Подменю.Вид = ВидГруппыФормы.Подменю; Подменю.Заголовок = "Создать отгрузку"; Подменю.ЦветФона = Элементы.Pochta_СоздатьОтгрузку.ЦветФона; Подменю.ЦветРамки = Элементы.Pochta_СоздатьОтгрузку.ЦветРамки; Подменю.ЦветТекстаЗаголовка = Элементы.Pochta_СоздатьОтгрузку.ЦветТекста; Подменю.ШрифтЗаголовка = Элементы.Pochta_СоздатьОтгрузку.Шрифт; Привязка = Подменю; //Далее все элементы будут привязаны к подменю //Команда по всем заказам ИмяКоманды = "Pochta_СоздатьПартииПоВсемЗаказам"; КомандаФормы = ЭтаФорма.Команды.Добавить(ИмяКоманды); КомандаФормы.Действие = ИмяКоманды; КомандаФормы.Заголовок = "По всем заказам"; КомандаФормы.ИзменяетСохраняемыеДанные = истина; КомандаФормы.Отображение = ОтображениеКнопки.Текст; нЭлемент = Элементы.Добавить(ИмяКоманды, Тип("КнопкаФормы"), Привязка); нЭлемент.ИмяКоманды = ИмяКоманды; //Команда по выбранным заказам ИмяКоманды = "Pochta_СоздатьПартииПоВыбраннымЗаказам"; КомандаФормы = ЭтаФорма.Команды.Добавить(ИмяКоманды); КомандаФормы.Действие = ИмяКоманды; КомандаФормы.Заголовок = "По выделенным заказам"; КомандаФормы.ИзменяетСохраняемыеДанные = истина; КомандаФормы.Отображение = ОтображениеКнопки.Текст; нЭлемент = Элементы.Добавить(ИмяКоманды, Тип("КнопкаФормы"), Привязка); нЭлемент.ИмяКоманды = ИмяКоманды; //Команда по заказам за дату ИмяКоманды = "Pochta_СоздатьПартииПоЗаказамЗаДату"; КомандаФормы = ЭтаФорма.Команды.Добавить(ИмяКоманды); КомандаФормы.Действие = ИмяКоманды; КомандаФормы.Заголовок = "По заказам за дату"; КомандаФормы.ИзменяетСохраняемыеДанные = истина; КомандаФормы.Отображение = ОтображениеКнопки.Текст; нЭлемент = Элементы.Добавить(ИмяКоманды, Тип("КнопкаФормы"), Привязка); нЭлемент.ИмяКоманды = ИмяКоманды;
Сами команды добавляю в модуль формы:
&НаКлиенте Процедура Pochta_СоздатьПартииПоВсемЗаказам(Команда) Экспорт КонецПроцедуры &НаКлиенте Процедура Pochta_СоздатьПартииПоВыбраннымЗаказам(Команда) Экспорт КонецПроцедуры &НаКлиенте Процедура Pochta_СоздатьПартииПоЗаказамЗаДату(Команда) Экспорт КонецПроцедуры
Среда: Розница 2.3.11.43 Объем: 1 час.
Свежие комментарии