|
УФ. Как получить реквизиты второй формы через оповещение? | ☑ | ||
---|---|---|---|---|
0
Stim
05.11.14
✎
11:07
|
Есть внешняя обработка с двумя формами. Хочу из основной формы открыть вторую, при закрытии передать из неё значение реквизиты в первую
Вот код: //Основная форма &НаКлиенте Процедура НажатиеКнопкиОткрытьДругуюФорму(Элемент) МояФорма = получитьФорму("ВнешняяОбработка.МояВнешняяОбработка.Форма.мояВтораяФорма",,ЭтаФорма); форма.открыть(); КонецПроцедуры //Основная форма &НаКлиенте Процедура ВыполнитьПослеОткрытияВторойФормы(Результат, ДополнительныеПараметры) Экспорт //отладчег сюда не доходит Сообщить(ТипЗнч(результат)); КонецПроцедуры //Вторая форма &НаКлиенте Процедура ПриЗакрытии() //отладчик сюда попадает Оп = Новый ОписаниеОповещения("ВыполнитьПослеОткрытияВторойФормы",ЭтотОбъект.ВладелецФормы,МойРеквизит ); КонецПроцедуры Почему отладчик не попадает в процедуру ВыполнитьПослеОткрытияВторойФормы ? ЧЯДНТ? |
|||
1
Cube
05.11.14
✎
11:13
|
(0) А у тебя ЭтотОбъект.ВладелецФормы не пустой случайно?
|
|||
2
Stim
05.11.14
✎
11:17
|
(1) а с чего это он пустой?
Там форма-владелец. |
|||
3
Cube
05.11.14
✎
12:03
|
(2) А ты уверен? Проверял?
А то мне кажется, что там надо писать ЭтаФорма.ВладелецФормы, а не ЭтотОбъект.ВладелецФормы... |
|||
4
Stim
05.11.14
✎
12:20
|
(3) ок, проверил так. Все равно не попадает.
при этом если удалить экспортную процедуру, то ругается |
|||
5
Cube
05.11.14
✎
12:33
|
(4) Блин)) А чего это ты ждешь у моря погоды-то?)) Создал объект "Оп" и ничего с ним не сделал... Это же не ОбработчикОжидания() тебе :))
Делай так: //Основная форма &НаКлиенте Процедура НажатиеКнопкиОткрытьДругуюФорму(Элемент) ОткрытьФорму("ВнешняяОбработка.МояВнешняяОбработка.Форма.мояВтораяФорма", , , , , , Новый ОписаниеОповещения("ВыполнитьПослеОткрытияВторойФормы", ЭтотОбъект)); КонецПроцедуры //Основная форма &НаКлиенте Процедура ВыполнитьПослеОткрытияВторойФормы(Результат, ДополнительныеПараметры) Экспорт //отладчег сюда не доходит Сообщить(ТипЗнч(результат)); КонецПроцедуры //Вторая форма &НаКлиенте Процедура ЗакрытьФормуНах() //Эту процедуру прикрути к кнопке на форме Закрыть(МойРеквизит); КонецПроцедуры |
|||
6
Stim
05.11.14
✎
12:46
|
(5) все равно не вызывается
|
|||
7
Cube
05.11.14
✎
12:49
|
(6) Ну чё ты заливаешь? У меня вот так работает, а у тебя не работает:
&НаКлиенте Процедура Настройки(Команда) ОткрытьФорму("ОбщаяФорма.ФормаКонстант", , , , , , Новый ОписаниеОповещения("НастройкиЗавершение", ЭтотОбъект)); КонецПроцедуры //Настройки() &НаКлиенте Процедура НастройкиЗавершение(Результат, ДополнительныеПараметры) Экспорт ПрочитатьДанныеКонстант(); КонецПроцедуры //НастройкиЗавершение() |
|||
8
Stim
05.11.14
✎
13:08
|
Да что я вру чтоле
вот обработка:http://files.webfile.ru/0f7afadb70b8f93595ef5fc414631d0d |
|||
9
Cube
05.11.14
✎
13:27
|
(8) Не врешь, но ошибаешься. Даже скопипастить нормально не можешь)))
Вместо ОткрытьФорму("ВнешняяОбработка.тестмодальногорежима.Форма.Форма1",,,,,Новый ОписаниеОповещения("ВыполнитьПослеОткрытияВторойФормы",ЭтотОбъект)); пиши ОткрытьФорму("ВнешняяОбработка.тестмодальногорежима.Форма.Форма1",,,,,,Новый ОписаниеОповещения("ВыполнитьПослеОткрытияВторойФормы",ЭтотОбъект)); Разницу уловил? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |