Имя: Пароль:
1C
1С v8
Как определить из какого документа открыта форма?
0 боксер
 
26.05.15
14:17
УТ11. из реализации открываю общую форму
    ПараметрыОплаты = ОткрытьФормуМодально("ОбщаяФорма.ЭтапыОплатыКлиентом", ПараметрыФормы, ЭтаФорма);


в этой общей форме есть процедура
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

в ней надо если открывается из реализации ограничить доступ к реквизиту.
метод этаформа.ВладелецФормы=ошибка чтения значения
метод на сервере не доступен
1 Гёдза
 
26.05.15
14:20
не проще ли параметр передать?
2 Goggy
 
26.05.15
14:21
"ПараметрыФормы" Передай туда параметр нужный.
3 Krolik Bezobraznik
 
26.05.15
14:21
Передайте в параметры формы ссылку на документ.

В обработчике ПриСозданииНаСервере у формы проверьте наличие свойства в котором храниться ссылка. Если свойство находится, то проверяйте тип значения ссылки. И далее как по задумке....
4 боксер
 
26.05.15
14:23
(3)не нашел такого св-ва

в параметрах есть
этаформа.Параметры.УникальныйИдентификатор
может это идентификатор формы документа?
5 Krolik Bezobraznik
 
26.05.15
14:26
ох... как все тяжко

ПараметрыФормы = новый Структура;
ПараметрыФормы.Вставить("СсылкаНаДок", ТвояСсылка);
ПараметрыОплаты = ОткрытьФормуМодально("ОбщаяФорма.ЭтапыОплатыКлиентом", ПараметрыФормы, ЭтаФорма);

ПриСозданииНаСервере

Если ПараметрыФормы.Свойство("Ссылка") Тогда
Если ТипЗнч(Ссылка) = Тип("Документы.СсылкаНаТвойДокумент") Тогда
////***Тут твой код

КонецЕсли;
КонецЕсли;
6 Krolik Bezobraznik
 
26.05.15
14:27
Писал по памяти, синтаксис могу немного напутать.
7 Krolik Bezobraznik
 
26.05.15
14:27
очепятка

ПараметрыФормы = новый Структура;
ПараметрыФормы.Вставить("СсылкаНаДок", ТвояСсылка);
ПараметрыОплаты = ОткрытьФормуМодально("ОбщаяФорма.ЭтапыОплатыКлиентом", ПараметрыФормы, ЭтаФорма);

ПриСозданииНаСервере

Если ПараметрыФормы.Свойство("СсылкаНаДок") Тогда
Если ТипЗнч(Ссылка) = Тип("Документы.СсылкаНаТвойДокумент") Тогда
////***Тут твой код


КонецЕсли;
КонецЕсли;
8 боксер
 
26.05.15
14:31
(5)спасибо. так и начал уже делать
да тяжело к УФ привыкать все через одно место сделано.
роль добавил, а назначить не могу, надо еще в справочнике спец. обновить и в моноп.режиме и так полно
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший