Имя: Пароль:
1C
1С v8
Как получить открытую общую форму? УФ.
,
0 Ислам
 
16.06.14
09:43
Уф, первая форма находится в основном окне.
Открываю другую форму поверх, в другой форме надо получить первую.
Как это сделать?
1 andreymongol82
 
16.06.14
09:46
Глобальный контекст (Global context)
ПолучитьФорму (GetForm)
Синтаксис:

ПолучитьФорму(<ИмяФормы>, <Параметры>, <Владелец>, <Уникальность>, <Окно>)
2 Ислам
 
16.06.14
09:52
(1) Не подходит. Так получается новая не открытая форма.
3 butterbean
 
16.06.14
09:55
если открываешь одну из другой, то просто передать ее туда
4 Ислам
 
16.06.14
10:04
(3) неит
5 Ислам
 
16.06.14
10:26
Форма находится в рабочей области начальной страницы.

В самой форме, в отладчике смотрю:
ЭтаФорма.ИмяФормы = "ОбщаяФорма.ФормаРабочегоСтола"
ЭтаФорма.КлючУникальности = "67124bea-3fc5-40e1-a5a9-7f4f3f26f962"
ПолучитьФорму("ОбщаяФорма.ФормаРабочегоСтола",,, ЭтаФорма.КлючУникальности).Открыта() = Ложь

Почему так???
6 Ислам
 
16.06.14
10:31
Если открыть другую форму, а потом вернуться обратно, то все работает как надо.

Баг? Как его обойти?
7 Адский плющ
 
16.06.14
10:35
"в другой форме надо получить первую"

Нет не надо.
8 Ислам
 
16.06.14
10:43
(7) Читай внимательнее (0) Надо.
9 acsent
 
16.06.14
10:51
а если окна открытые перебрать?
10 Ислам
 
16.06.14
10:52
(9) Не катит
11 DexterMorgan
 
16.06.14
10:52
По владельцу получить?
12 DexterMorgan
 
16.06.14
10:53
а вообще интересно зачем
13 andreymongol82
 
16.06.14
10:54
(5) Мда. Ключ Уникальности нужен той формы, которую открыть собираешься, а не этой. При открытии той формы, запоминай ключ уникальности и открывай по нему.
14 Ислам
 
16.06.14
10:54
(11) Владелец пуст.
15 Ислам
 
16.06.14
10:56
(13) В данном примере я получаю форму из самой себя, видно что по ключу уникальности нужная форма не открывается. То же самое если передать ключ в другую форму.
Однако, еще и (6)
16 Ислам
 
16.06.14
10:56
Это баг, я думаю. нет?
17 Ислам
 
16.06.14
10:56
(12) Чтобы зачет препод поставил. А то на осень останусь
18 DexterMorgan
 
16.06.14
10:59
(14) я не понял. Есть одна форма. Из нее открывается вторая, в качестве владельца указываешь первую форму. Если из второй нужно обратиться к первой - через владельца.
19 acsent
 
16.06.14
11:03
(10) почему не катит?
20 Ислам
 
16.06.14
11:04
(18) Ты не понял. Есть одна форма. Вторая открывается не из нее. Владелец тут не катит.
21 Ислам
 
16.06.14
11:04
(19) Потому что в главном окне почему-то пусто.
22 acsent
 
16.06.14
11:06
(21) Получается что форма в рабочем столе не попадает в список открытых. поэтому ты ничего сделать не сможешь
23 Ислам
 
16.06.14
11:16
(22) Получается что так. Дурацкая 1С, я уже говорил.
24 andreymongol82
 
16.06.14
11:16
(23) Внимательно читай СП. Там про ключ уникальности даже пример приведен. Так что не надо гнать, что это баг, на свои ошибки. Ключ надо в параметры передавать, так-то, а не в признак поиска по ключу.
25 Ислам
 
16.06.14
11:19
(24) Я зверски извиняюсь, но в СП написано что ключ надо передавать в признак поиска по ключу.

Ложь - искать форму с ключом уникальности по умолчанию, Истина - не искать форму вообще, любое другое значение устанавливает ключ уникальности, по которому будет произведен поиск.
26 dj_serega
 
16.06.14
11:20
(23) Вот выучишь и не будешь так думать.
27 Ислам
 
16.06.14
11:21
(26) Брехня. Чем больше учу, тем сильнее так думаю. Столько багов уже нашел.
28 acsent
 
16.06.14
11:24
(27) какой релиз 1с то?
29 Ислам
 
16.06.14
11:27
1С:Предприятие 8.3 (8.3.5.924)
30 andreymongol82
 
16.06.14
12:01
И вообще, лучше не ПолучитьФорму, а ОткрытьФорму.
хотя у меня почему-то все работает. Даже если форму открывать и без уникального ключа.
31 Ислам
 
16.06.14
12:46
(30) Значит ты делаешь не так как в условии написано.
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.