Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Обычная форма, как прочитать параметр переданный при открытии?

Обычная форма, как прочитать параметр переданный при открытии?
Я
   pvase
 
12.04.21 - 09:22
Пишу так в форме при начале выбора элемента:
    СтандартнаяОбработка = Ложь;
    ЗначениеОтбора = Новый Структура("ГруппаОС", ГруппаОС);
    ОткрытьФорму("Справочник.ПодгруппыОС.ФормаВыбора",ЗначениеОтбора,Элемент);
Как теперь в форме, которую открыл прочитать этот параметр?

p.s. Извините за может очень простой вопрос, с обычными формами практически не работал, а тут вдруг надо доделать.
   Garykom
 
1 - 12.04.21 - 09:28
(0) ты 7-чник?
   Garykom
 
2 - 12.04.21 - 09:29
(1)+ Как бы в 8-ке УФ принято было форму создавать в переменную и хреначь параметря а потом открывай
   программистище
 
3 - 12.04.21 - 09:58
(0) в присоздании
Параметры.Свойство("ГруппаОС", ГруппаОС)
   pvase
 
4 - 12.04.21 - 10:12
(2) С УФ - все понятно, а вот с обычными формами получилась проблемка.
(1) Я сразу стал разрабатывать в УФ после 7-ки, минуя ввесь этот ужас в обычными формами.
(3) Спасибо, но в обычной форме нет процедуры ПриСоздании, также ругается:
{Справочник.ПодгруппыОС.Форма.ФормаВыбора.Форма(4,2)}: Переменная не определена (Параметры)
   pvase
 
5 - 12.04.21 - 10:14
Написал так:
Процедура ПриОткрытии()
    Перем ГруппаОСОтбор;
    Если Параметры.Свойство("ГруппаОС") тогда
        Параметры.Свойство("ГруппаОС", ГруппаОСОтбор);
        СправочникСписок.Отбор.ГруппаОС.УстановитьЗначение(ГруппаОСОтбор);
    КонецЕсли;
КонецПроцедуры

В интернете нарыл, что надо реквизит создавать или глобальную переменную. Неужели в обычным форма все так сложно?
   youalex
 
6 - 12.04.21 - 10:47
В ОФ ты можешь получить форму, установить отбор в списке напрямую, и уже потом ее открыть
Как-то так:
ФормаВыбора = Справочник.ПодгруппыОС.ПолучитьФорму(Элемент);
ФормаВыбора.СправочникСписок.Отбор.ГруппаОС.Установить(ЗначениеОтбора);
ФормаВыбора.ОткрытьМодально()
   youalex
 
7 - 12.04.21 - 10:48
(6) * Справочник.ПодгруппыОС.ПолучитьФормуВыбора(Элемент)
   pvase
 
8 - 12.04.21 - 10:53
Спасибо. Решил так:
Процедура ПодгруппаОСНачалоВыбора(Элемент, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;
    Форма = ПолучитьФорму("Справочник.ПодгруппыОС.ФормаВыбора",,Элемент);
    Форма.ГруппаОСОтбор = ГруппаОС;
    Форма.НачальноеЗначениеВыбора = ПодгруппаОС;
    Форма.Открыть();
КонецПроцедуры

А Форме создал реквизит и использую его:

Процедура ПриОткрытии()
    Если ЗначениеЗаполнено(ГруппаОСОтбор) Тогда
        СправочникСписок.Отбор.ГруппаОС.Использование = Истина;
        СправочникСписок.Отбор.ГруппаОС.Значение = ГруппаОСОтбор;
    КонецЕсли; 
КонецПроцедуры

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.