|
Управляемые формы: как вернуть параметры из дочерней формы в основную. |
☑ |
0
Dmitry_333
26.03.19
✎
11:18
|
Доброго всем дня.
Передать из основной в открываемую форму достаточно просто, но вот как вернуть в основную форму, толком не могу разобраться.
Например, из формы подбора в форму документа.
Направьте пожалуйста-)
|
|
1
sqr4
26.03.19
✎
11:28
|
Оповестить?
|
|
2
Жан Пердежон
26.03.19
✎
11:32
|
ОткрытьФорму() - там куча полезных параметров есть
|
|
3
Dmitry_333
26.03.19
✎
11:39
|
(2) Действительно, там есть параметр ОписаниеОповещенияОЗакрытии, но как его пользовать? Не могу вменяемую инфу найти.
|
|
4
polosov
26.03.19
✎
11:40
|
(3) Посмотри как возвращает данные подбор в типовых.
|
|
5
Ошибка1С
26.03.19
✎
11:46
|
в дочерней форме можно в метод Закрыть() передать нужный параметр и потом его прочитать в обработке выбора
|
|
6
Cyberhawk
26.03.19
✎
11:47
|
Смотря когда
|
|
7
Garykom
гуру
26.03.19
✎
11:48
|
Нескоко разных способов есть
|
|
8
Dmitry_333
26.03.19
✎
12:08
|
(5) (7) Можно чуть более подробнее?-)
|
|
9
sqr4
26.03.19
✎
12:11
|
Оповестить!!!
|
|
10
Ошибка1С
26.03.19
✎
12:12
|
(8) Закрыть(ТвойПараметр) в дочерней
ОбработкаВыбора(ВыбранноеЗначение) в основной
|
|
11
Ошибка1С
26.03.19
✎
12:12
|
(9) офф документация только за бабки?
|
|
12
sqr4
26.03.19
✎
12:20
|
(11) Понятия не имею, у нас есть подписка
|
|
13
Dmitry_333
26.03.19
✎
12:24
|
(9) (10) Благодарю!
|
|
14
polosov
26.03.19
✎
12:26
|
(11) Это не документация. Это книга по разработке интерфейсов, выложенная онлайн.
|
|
15
Garykom
гуру
26.03.19
✎
12:57
|
(13) А еще можно передать в подчиненную форму параметром текущую форму (Владелец или новый) и оттуда вызвать экспортные процедуры или еще как.
Ну и учитываем что параметры передаются без "Знач" и их можно с любого конца менять.
Короче способов несколько
|
|
16
Dmitry_333
26.03.19
✎
13:02
|
(15) Спасибо
|
|
17
Dmitry_333
27.03.19
✎
10:04
|
Действительно, все не так сложно оказалось.
Для тех, кого поисковик закинет сюда с аналогичным вопросом, выкладываю простейший пример, как из дочки передать значение в основную.
В модуле основной формы:
&НаКлиенте
Процедура Вперед(Команда)
ОписаниеОповещенияОЗакрытии = Новый ОписаниеОповещения("ОбработкаКомандыЗавершения", ЭтотОбъект);
Форма = ОткрытьФорму("ВнешняяОбработка.ТестФормЗакрытьОткрыть.Форма.ДочерняяФорма",,,,,, ОписаниеОповещенияОЗакрытии);
КонецПроцедуры
Процедура ОбработкаКомандыЗавершения(Результат, ДополнительныеПараметры) Экспорт
Объект.Данная = Результат;
КонецПроцедуры
В модуле дочерней формы:
&НаКлиенте
Процедура ПеренестиВОсновнуюФорму(Команда)
Закрыть(Объект.ДанныеНаДочФорме);
КонецПроцедуры
Таким образом, значения из поля реквизита ДанныеНаДочФорме перенесутся в поле реквизита Данные основной формы.
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший