Помогите передать контекст формы

  • Автор темы shane13
  • Дата начала
S

shane13

Гость
#1
Дело обстоит так: Есть справочник Объекты, в котором при нажатии на кнопку "Новый контакт", открывается форма списка справочника "Контакты". При этом из спр.Объекты передается контекст в Контакты так:

ПараметрПодбора = СоздатьОбъект("СписокЗначений");
ПараметрПодбора.ДобавитьЗначение(ТекущийЭлемент(), "Объект");
ПараметрПодбора.ДобавитьЗначение(Область, "Область");

В справочнике контакты я принимаю контекст так:

Процедура ПриОткрытии()
Параметры = Форма.Параметр;
Если ТипЗначенияСтр(Параметры) = "СписокЗначений" Тогда
Объект = Параметры.Получить("Объект");
Область = Параметры.Получить("Область");
КонецЕсли;
КонецПроцедуры

Всё нормально принимается. И я записываю принятые значения куда мне надо. Вопрос в следующем:
Если я хочу создать новый элемент в справочнике Контакты (редактируется только в диалоге), то как мне получить этот же контекст в форме элемента???

Фишка в том, что новый элемент создается так:
Процедура ВводНового(Ск)
глПриВводеНового(Контекст, Ск);
КонецПроцедуры,
т.е. фактического открытия формы нет... Как же мне передать туда параметры??? ПОМОГИТЕ!!!!
 

puh14

Well-Known Member
11.07.2008
1 412
0
#2
переменную в начале модуля формы и она у тебя будет видна во всех процедурах формы. Типа

перем параметр;

Процедура ПриОТкрытии()
параметр = Форма.Параметр;
КонецПроцедуры

процедура ВВодНового()
Если ПустоеЗначение(параметр) = 0 Тогда
КонецЕсли;
КонецПроцедуры
 
S

shane13

Гость
#3
переменную в начале модуля формы и она у тебя будет видна во всех процедурах формы. Типа

перем параметр;

Процедура ПриОТкрытии()
параметр = Форма.Параметр;
КонецПроцедуры

процедура ВВодНового()
Если ПустоеЗначение(параметр) = 0 Тогда
КонецЕсли;
КонецПроцедуры
Это понятно, так и сделано. Только формы то разные. Мне нужно в Форме Элемента получить параметры, переданные в Форму Списка...
 

puh14

Well-Known Member
11.07.2008
1 412
0
#4
Тогда через переменную в глобальном модуле с очищением при закрытии форм.
 
S

shane13

Гость
#5
Не получается тоже... Я делаю так:
В ФормеСписка ПриОткрытии()
Параметры = Форма.Параметр;
МойКонтекст = Параметры; (МойКонтекст - глобальная переменная)

Далее в ФормеЭлемента при открытии присваиваю значение МойКонтекст нужной мне переменной...
Что-то не так??
 

puh14

Well-Known Member
11.07.2008
1 412
0
#6
ну не знаю - у меня всё работает . вот тебе пример - по красной кнопке в справочнике товары

"Далее в ФормеЭлемента при открытии присваиваю значение МойКонтекст нужной мне переменной..." - а если в процедуре вводНового попробовать? через глобальную всё нормально епередается.
 

Вложения

  • 20.8 КБ Просмотры: 11
S

shane13

Гость
#7
Спасибо! Действительно получилось. Просто я написала много лишнего и забыла убрать... оно-то всё и портило!!