Имя: Пароль:
1C
 
Открыть вторую форму того же отчета с передачей параметров
,
0 YFedor
 
16.06.17
14:14
В продолжение: Открыть вторую форму внешнего отчета с передачей параметров

Решил вместо внешнего отчета модифицировать включенный в конфигурацию.

Теперь имеем
- отчет в конфигурации
- основная форма А - обычная
- вторая форма отчета Б- управляемая.
- изначально вызов осуществляется так:
ОткрытьФорму("Отчет.ПлатежныйДокумент.Форма.ФормаНастройка",
                 Новый Структура("СтруктураПараметров, СтруктураТаблиц", СтруктураПараметров, СтруктураТаблиц), ЭтаФорма,,,,
                 Новый ОписаниеОповещения("ОбработатьЗакрытиеОкнаНастроек", ЭтаФорма),
                 РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);


Открывается форма Б - вроде бы все ОК, но нет, открывается форма другого экземпляра ибо:

на форме Б вывел табличную часть отчета и добавляю в нее данные, форму Б закрываю. В исходной форме А читаю табличную часть - она пуста.

ПолучитьФорму / открыть полученную форму не работает, т.к. из обычной формы можно таким способом открыть только обычную форму

Есть варианты открытия формы именно этого, открытого объекта отчета?
1 Buster007
 
16.06.17
14:36
ты из табличной части закрытой формы читаешь данные? оО
2 aleks_default
 
16.06.17
14:37
//Новый ОписаниеОповещения("ОбработатьЗакрытиеОкнаНастроек", ЭтаФорма),

Новый ОписаниеОповещения("ОбработатьЗакрытиеОкнаНастроек", ЭтотОбъект)
3 YFedor
 
16.06.17
14:42
(1) у формы есть табличная часть?
4 YFedor
 
16.06.17
14:47
(2) Это же только указание какой обработчик будет вызван при закрытии формы Б

хотя попробовал - не работает - все равно другой объект
5 Мимохожий Однако
 
16.06.17
14:52
Добавь в отчет реквизиты, которые хранят данные, введенные в форме Б. Из них заполни реквизиты второй формы.
6 YFedor
 
16.06.17
14:53
(5) Не понял, что значит "хранят данные"?

Я могу в форме Б сохранить значения куда-нибудь, а потом прочитать в форме А, но это о другом
7 aleks_default
 
16.06.17
14:53
(4)Это всегда будет другой объект, вернее форма нового объекта. Ее просто нужно заполнить данными  формы родителя.
Я так понял проблема у тебя в том что после закрытия второй формы данные не возвращаются во владельца.
8 Мимохожий Однако
 
16.06.17
14:55
Форма умирает при закрытии. При открытии форма рождается заново. Нельзя войти в туже воду.
9 YFedor
 
16.06.17
14:56
(7) Т.е. тот же объект не открыть - печалька. Ну а данные передать - масса способов. Просто хотел не заморачиваться
10 YFedor
 
16.06.17
14:56
(8) Причем здесь форма - меня объект интересует
11 Мимохожий Однако
 
16.06.17
14:58
(10) Ты еще раз попробуй объяснить. Я, честно говоря, не пойму в чем твоя проблема.
12 Мимохожий Однако
 
16.06.17
14:59
(9) Объект может быть тем же, а вот форма нет.
13 aleks_default
 
16.06.17
15:04
(9)Без записи объекта в базу - нет.
14 YFedor
 
16.06.17
15:13
(11) А ты попробуй создать отчет с табличной частью но с двумя формами и вывести на нах эту табличную часть (это реквизит Объекта).

Открыть его (основная форма) - заполнить табличную часть - затем по кнопке используя ОткрытФорму() открыть вторую форму и увидишь, что в ней табличная часть пустая. Значит открылся другой экземпляр отчета-объекта

а я хочу тот же
15 Мимохожий Однако
 
16.06.17
20:14
(14) Можно сделать страницы вместо двух форм. И управлять видимостью страниц.
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший