Имя: Пароль:
1C
1С v8
Значения параметров не доходят до формы
0 Knopppka
 
04.06.13
17:22
Пытаюсь в процессе выполнения бизнес-процесса сделать конкретный документ недоступным для редактирования. Из модуля бизнес-процесса пытаюсь передать параметры в форму документа:

Параметры = Новый Структура("Доступ, Документ", Истина, Ссылка.ДокументНаСогласование);
Форма = Документы.АктНесоответствия.ПолучитьФорму("ФормаДокумента", Параметры);

В форме документа в процедуре ПриСозданииНаСервере получаю параметры и записываю их в реквизиты формы:

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
   Документ = Параметры.Документ;
   Доступ = Параметры.Доступ;
КонецПроцедуры

А при открытии формы должно проверяться условие и в результате форма по моим планам должна стать недоступной:

&НаКлиенте
Процедура ПриОткрытии(Отказ)
   Если Доступ = Ложь И Документ = Объект.Ссылка Тогда
       ЭтаФорма.Доступность = Ложь;
   КонецЕсли;
КонецПроцедуры

Так вот, что я делаю не правильно? Почему параметры не передаются? Подскажите, пожалуйста.
1 mikecool
 
04.06.13
17:24
параметры пропали по выполнении ПриСозданииНаСервере
что есть Документ и Доступ?
2 Knopppka
 
04.06.13
17:25
(1) реквизиты формы
3 Borteg
 
04.06.13
17:29
Мне кажется надо получать не форму, а объект и записать реквизиты.
4 Borteg
 
04.06.13
17:34
(3) +проверку на доступность делал бы при создании на сервере а не при открытии
5 Knopppka
 
04.06.13
17:36
(3) (4) Сейчас попробую. Спасибо!
6 Knopppka
 
04.06.13
17:51
Нет, не помогло

Не пойму, но они ведь должны доходить до нее...
7 mikecool
 
04.06.13
17:53
не пойму - доступностью еще на сервере при создании рулить неззя?
8 Knopppka
 
04.06.13
17:54
(7) я уже туда переместила, без изменений
9 DaZol1991
 
04.06.13
17:59
(0) во-первых проверь созданы ли Параметры у формы, чтобы их заполнять.
во-вторых форму с параметрами надо открывать, а не получать. для этого и придумали параметры, чтобы не получать форму. и синтаксис открытия должен быть такой:
ОткрытьФорму("Документ.АктНесоответствия.ФормаДокумента",ПараметрыОткрытияФормы,ЭтаФорма);
в-третьех в открываемой форме ПриСозданииНаСервере проверяешь заполнены ли параметры и если заполнены, то Тут же и делаешь что-то с ними.
10 Knopppka
 
04.06.13
18:28
(9) Спасибо большое, все работает