УстановитьДействие в расширении

1. user1559729 01.07.24 11:29 Сейчас в теме
Добрый день!
В расширении программно добавил колонку в формы списков нескольких документов (через ПодключаемыеКоманды.ПриСозданииНаСервере). Вопрос - как теперь установить действие для данной программно добавленной колонки? Обработчик создаю через УстановитьДействие, но стартовать-то он должен в модуле конкретной формы?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. SlavaKron 01.07.24 11:58 Сейчас в теме
(1)
НовыйЭлемент.УстановитьДействие("ПриИзменении", "Подключаемый_ВыполнитьКоманду")
В расширении в модуле ПодключаемыеКомандыКлиент
&Вместо("ВыполнитьКоманду")
Процедура Расш1_ВыполнитьКоманду(Форма, Команда, Источник) Экспорт
	
	СтандартнаяОбработка = Истина;
	Расш1_ДоработкаФормКлиент.ВыполнитьКоманду(Форма, Команда, СтандартнаяОбработка);
	
	Если СтандартнаяОбработка Тогда
		ПродолжитьВызов(Форма, Команда, Источник);
	КонецЕсли;
	
КонецПроцедуры

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

	КонецЕсли;
	
КонецПроцедуры
Показать
Оставьте свое сообщение

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