Имя: Пароль:
1C
1С v8
Как получить владельца формы
Ø (Bigbro 25.04.2023 14:48)
0 FuriKuri
 
13.06.13
13:50
Собственно из формы одно справочника открывают форму другого справочника. И во втором нужно получить ссылку на владельца, тоесть - на 1 справочник. Открываю так:

&НаКлиенте
Процедура Файлы(Команда)
    Отбор = Новый Структура("Объект", Объект.Ссылка);
    ПараметрыФормы = Новый Структура("Отбор", Отбор);
    ОткрытьФормуМодально("Справочник.ХранилищеДополнительнойИнформации.ФормаСписка", ПараметрыФормы, Объект.Ссылка) ;    
   
КонецПроцедуры


И в этой открывшейся форме надо передать реквизиту ссылку на фладельца:

Реквизит =  ЭтаФорма.ВладелецФормы;

Но значение пустое. Что не так делаю?
1 1Сергей
 
13.06.13
13:52
Владелец не может быть ссылкой. Это элемент формы
2 1Сергей
 
13.06.13
13:52
или форма
3 Maxus43
 
13.06.13
13:53
в параметрах ссылку передал, оттуда и доставай
4 FuriKuri
 
13.06.13
13:53
(2) тогда каким образом можно передать ссылку?
5 1Сергей
 
13.06.13
13:54
(4) см (3)
6 FuriKuri
 
13.06.13
13:55
тоесть Реквизит =  ЭтаФорма.ВладелецФормы.ССылка; ?
7 FuriKuri
 
13.06.13
13:57
Тогда ругается что "Значение не является значением объектного типа (ссылка)"
8 Maxus43
 
13.06.13
13:57
(6) Реквизит = ЭтаФорма.Параметры.Отбор;
9 Maxus43
 
13.06.13
14:00
т.е. Реквизит = ЭтаФорма.Параметры.Отбор.Объект;
10 FuriKuri
 
13.06.13
14:01
(9) Поле объекта не обнаружено (Отбор)
11 Maxus43
 
13.06.13
14:02
(10) на форме Параметры заданы?
Или ты не понимаешь зачем тут ОткрытьФормуМодально("Справочник.ХранилищеДополнительнойИнформации.ФормаСписка", ПараметрыФормы

ПараметрыФормы и передал их просто так туда чтоб было?
12 1Сергей
 
13.06.13
14:04
Реквизит = ЭтаФорма.Параметры.Объект;
13 Maxus43
 
13.06.13
14:05
(12) у него в (0) структура в структуре, я хз зачем вобще...
14 FuriKuri
 
13.06.13
14:10
(11) Чет недоговняю. Мне нужно создать еще параметры на форме? (12) Поле объекта не обнаружено (Объект)
15 FuriKuri
 
13.06.13
14:21
Ладно буду сам разбиратся
16 Maxus43
 
13.06.13
14:21
(14) ты передал в форму параметры. зачем это сделано? где используется?
17 FuriKuri
 
13.06.13
14:27
(16) для того чтоб при выводе формы списка показало только нужные элементы
18 Maxus43
 
13.06.13
14:30
(17) ну оттуда ссылку и бери, из отбора. Отладчиком погляди где он сидит то
19 FuriKuri
 
13.06.13
14:43
есть ссылка только тут ЭтаФорма.Список.Отбор
И там значение "Объект Равно "Элемент..... от 13.05.2013 14:41:42""
20 FuriKuri
 
13.06.13
15:00
Все равно не понял откуда его выдрать, а если из (19)  то как?
21 Maxus43
 
13.06.13
15:05
(20) ну оттуда и возьми. Или добавь ещё параметр на форму, и потом его передай...

ПараметрыФормы = Новый Структура("Отбор, ТвойПараметр", Отбор, Объект.Ссылка);
22 FuriKuri
 
13.06.13
15:14
(21) нет, таким образом не передается
23 Maxus43
 
13.06.13
15:15
короче разбирись с параметрами форм, почитай например про них в книжках... тут смысла нет это обсуждать
24 FuriKuri
 
13.06.13
15:17
Ясно. спс за ответы
25 1Сергей
 
13.06.13
15:23
(24) тебя в отладчике не забанили?
26 Джон Тирби
 
13.06.13
15:30
на толстом клиенте так прокатываеть
                мояФорма=Справочники.ХранилищеДополнительнойИнформации.ПолучитьФормуСписка("ФормаСписка",Объект.Ссылка);
мояФорма.Открыть();
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.