|
Команда справочника. Открывается другая форма. Где выловить ее закрытие? | ☑ | ||
---|---|---|---|---|
0
Wefast
24.05.18
✎
09:12
|
Идея такая. На форме отображается срез последних регистра.
По команде открывается форма списка где можно ввести данные. При ее закрытие нужно обновить данные на форме.(вот этого нет) Есть форма справочника. Есть у справочника команда В ней ОткрытьФормуМодально("Документ.УстановкаДанных.Форма.ФормаСписка", ПараметрыФормы, ПараметрыВыполненияКоманды.Источник, ПараметрыВыполненияКоманды.НавигационнаяСсылка) Но можно и ОткрытьФорму, но как поюзать оповещение не знаю В общем что куда вставить чтобы обновить форму справочника? |
|||
1
Lexey_
24.05.18
✎
09:15
|
(0) вставить в соответствующий параметр
<ОписаниеОповещенияОЗакрытии> (необязательный) Тип: ОписаниеОповещения. Содержит описание процедуры, которая будет вызвана при закрытии формы со следующими параметрами: <РезультатЗакрытия> - значение, переданное при вызове метода Закрыть открываемой формы, <ДополнительныеПараметры> - значение, которое было указано при создании объекта ОписаниеОповещения. |
|||
2
olegves
24.05.18
✎
09:15
|
Оповещение
|
|||
3
Nikoss
24.05.18
✎
09:18
|
Так если у тебя "ОткрытьФормуМодально("
Ставь сразу после этой строки код обновления, да и всё, в чем проблема? |
|||
4
Wefast
30.05.18
✎
08:53
|
Создал Команду в метаданных объекта(так вроде?)
Там пишу &НаКлиенте Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды) //Вставить содержимое обработчика. Отбор = Новый Структура("Контрагент", ПараметрКоманды); ПараметрыФормы = Новый Структура("Отбор", Отбор); ОповещениеЗакр= Новый ОписаниеОповещения("Окок",ЭтотОбъект,ПараметрыВыполненияКоманды.Источник); ОткрытьФорму("Документ.УстановкаСтавкиКонтрагента.Форма.ФормаСписка", ПараметрыФормы, ПараметрыВыполненияКоманды.Источник, ПараметрыВыполненияКоманды.Уникальность, ПараметрыВыполненияКоманды.Окно, ПараметрыВыполненияКоманды.НавигационнаяСсылка, ОповещениеЗакр, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); КонецПроцедуры &НаКлиенте Процедура Окок(Результа,ДопПарам) ЭКСПОРТ ДопПарам.ОбновитьОтображениеДанных(); КонецПроцедуры В той форме я создаю документ который делает запись в регистр сведений. На форме владельце я отображаю срез последних этого регистра Хочу при закрытие формы списка который я открываю чтобы форма контрагента обновлялась. Как это сделать? |
|||
5
D3O
30.05.18
✎
08:56
|
(4) выше же ответили: использовать возможности платформы по передаче сообщений внутри форм (Оповестить, ОповеститьОбИзменении и т.п.)
в форме РС добавить обработчик события ПередЗакрытием оттуда и оповещать. в основной форме добавить соотв. обработчик |
|||
6
Wefast
30.05.18
✎
08:57
|
Написал вместо ДопПарам.ОбновитьОтображениеДанных();
Оповестить("ОбновитьДанные"); В форме владельца в событие ОбработкаОповещения вызвал функцию которая обновит отображаемые данные на форме |
|||
7
Wefast
30.05.18
✎
12:54
|
Теперь проблема в размещение этой команды.
Вынес команду в общие команды. Там нужно указать обязательно группу где она должна находится. Если выбрать место так чтобы в нее передавался параметр, то команда по умолчанию отображается на форме где "Перейти" Т.е. окно по команде модально(поверх) не открывается, а открывается внутри текущей формы. При первом переходе отрабатывает команда. Но оповещение о закрытие не возникает при возврате на главную "вкладку" и дальше больше не отрабатывает команда при переходе обратно. И в какой момент обновлять форму и как не понятно или сделать так чтобы по умолчанию команда никуда не вставлялась |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |