2 кнопки 1 процедура

1. user2111953 30.10.24 18:32 Сейчас в теме
Есть две кнопки похожие по коду, как мне их совместить в одну процедуру?
Процедура ТолькоУволенные(Кнопка)
 
Кнопка.Пометка = НЕ Кнопка.Пометка;
Если Кнопка.Пометка тогда 
ЭлементыФормы.ДанныеФайла.ОтборСтрок.Наименование.Использование = Истина; 
ЭлементыФормы.ДанныеФайла.ОтборСтрок.Наименование.ВидСравнения  = ВидСравнения.Содержит; 
ЭлементыФормы.ДанныеФайла.ОтборСтрок.Наименование.Значение      = "(ув.)"; 
 
Иначе
  ЭлементыФормы.ДанныеФайла.ОтборСтрок.Наименование.Использование = ложь; 
КонецЕсли; 
 
Если Кнопка.Пометка и ЭлементыФормы.КоманднаяПанель1.Кнопки.ТолькоРаботающие.пометка тогда
ЭлементыФормы.КоманднаяПанель1.Кнопки.ТолькоРаботающие.пометка = ложь; 
конецесли;

конецпроцедуры 	
Показать

Процедура ТолькоРаботающие(Кнопка)
 
Кнопка.Пометка = НЕ Кнопка.Пометка;
Если Кнопка.Пометка тогда 
ЭлементыФормы.ДанныеФайла.ОтборСтрок.Наименование.Использование = Истина; 
ЭлементыФормы.ДанныеФайла.ОтборСтрок.Наименование.ВидСравнения  = ВидСравнения.НеСодержит; 
ЭлементыФормы.ДанныеФайла.ОтборСтрок.Наименование.Значение      = "(ув.)"; 
 
Иначе
  ЭлементыФормы.ДанныеФайла.ОтборСтрок.Наименование.Использование = ложь; 
КонецЕсли; 
 
Если Кнопка.Пометка и ЭлементыФормы.КоманднаяПанель1.Кнопки.ТолькоУволенные.пометка тогда
ЭлементыФормы.КоманднаяПанель1.Кнопки.ТолькоУволенные.пометка = ложь; 
конецесли;
КонецПроцедуры
Показать
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
5. Sashares 35 01.11.24 09:57 Сейчас в теме
(1) Примерно так
Процедура МояОбщаяПроцедура(Кнопка,НужныйВидСравнения,ИмяДругойКнопки)
Кнопка.Пометка = НЕ Кнопка.Пометка;
Если Кнопка.Пометка тогда 
ЭлементыФормы.ДанныеФайла.ОтборСтрок.Наименование.Использование = Истина; 
ЭлементыФормы.ДанныеФайла.ОтборСтрок.Наименование.ВидСравнения  = НужныйВидСравнения; 
ЭлементыФормы.ДанныеФайла.ОтборСтрок.Наименование.Значение      = "(ув.)"; 
 
Иначе
  ЭлементыФормы.ДанныеФайла.ОтборСтрок.Наименование.Использование = ложь; 
КонецЕсли; 

Если Кнопка.Пометка и ЭлементыФормы.КоманднаяПанель1.Кнопки[ИмяДругойКнопки].пометка тогда
ЭлементыФормы.КоманднаяПанель1.Кнопки[ИмяДругойКнопки].пометка = ложь; 
конецесли;
КонецПроцедуры
Показать
2. user2107184 30.10.24 18:44 Сейчас в теме
Из одной процедуры установку отбора перенести в первую в ветку Иначе.
Остальное убрать.
3. user2111953 01.11.24 08:10 Сейчас в теме
(2) так не работает, теперь кнопки не выполняют заявленный функционал.
Уволен = ЭлементыФормы.КоманднаяПанель1.Кнопки.ТолькоУволенные;
Работает = ЭлементыФормы.КоманднаяПанель1.Кнопки.ТолькоРаботающие; 

Если Уволен.Пометка тогда 
ЭлементыФормы.ДанныеФайла.ОтборСтрок.Наименование.Использование = Истина; 
ЭлементыФормы.ДанныеФайла.ОтборСтрок.Наименование.ВидСравнения  = ВидСравнения.Содержит; 
ЭлементыФормы.ДанныеФайла.ОтборСтрок.Наименование.Значение      = "(ув.)"; 
 
Иначе
Если Работает.Пометка тогда 
  ЭлементыФормы.ДанныеФайла.ОтборСтрок.Наименование.Использование = Истина; 
ЭлементыФормы.ДанныеФайла.ОтборСтрок.Наименование.ВидСравнения  = ВидСравнения.НеСодержит; 
ЭлементыФормы.ДанныеФайла.ОтборСтрок.Наименование.Значение      = "(ув.)";  
КонецЕсли; 
КонецЕсли;

Показать
4. Vlan 36 01.11.24 08:22 Сейчас в теме
(3) На входе получите вид кнопки, и в зависимости от нее используйте нужный ВидСравнения
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот