1с: Открытие формы для выбора дополнительных параметров из обработки
Задача: открыть дополнительную форму и обработать выбор параметра.
Решение: сделаем эту задачу, используя «оповещения». А именно откроем форму, а при завершении выбора параметров, создадим оповещение для основной формы в котором обработаем что собственно было выбрано на дополнительной форме.
Основная форма:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
&НаКлиенте Процедура ПоменятьИсполнителя(Команда) П = Новый Структура("НовыйИсполнительОграничения",объект.НовыйИсполнительОграничения); ОткрытьФорму("ВнешняяОбработка.МастерРаспределенияЗаявкоНаОтключение.Форма.ФормаВыбораИсполнителя",П,ЭтотОбъект,,,,,РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); КонецПроцедуры &НаКлиенте Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) Если ИмяСобытия = "ВыбранНовыйИсполнитель" Тогда объект.НовыйИсполнительОграничения=Параметр; КонецЕсли; КонецПроцедуры |
Дополнительная форма:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
&НаКлиенте Процедура ВыбратьИЗакрыть(Команда) ПараметрВызова = объект.НовыйИсполнительОграничения; ФормаИсточник = "ВнешняяОбработка.МастерРаспределенияЗаявкоНаОтключение.Форма.Форма"; Оповестить("ВыбранНовыйИсполнитель",ПараметрВызова,ФормаИсточник); Закрыть(); КонецПроцедуры &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) объект.НовыйИсполнительОграничения=Параметры["НовыйИсполнительОграничения"]; КонецПроцедуры |
