Имя: Пароль:
1C
1С v8
&НаСервере и &НаКлиентеНаСервереБезКонтекста в модуле общей формы
,
0 Nicole
 
27.03.19
09:45
Самый простой код в расширении модуля общей формы:

&НаКлиентеНаСервереБезКонтекста
Процедура Р1_УправлениеФормойПосле(Форма)    
    Форма.Элементы.ОсновноеПодразделение.Доступность = ПроверкаРоли("ПолныеПрава");    
КонецПроцедуры

&НаСервере
Функция ПроверкаРоли(Роль)    
    Возврат РольДоступна(Роль);    
КонецФункции    

И ошибка: Процедура или функция с указанным именем не определена (ПроверкаРоли)

Где и что я упускаю?
Заранее спасибо большое за ответ.
1 unregistered
 
27.03.19
10:00
Ты вызываешь свою функцию, находясь вне контекста формы (&НаКлиентеНаСервереБезКонтекста). Вне контекста контекст формы недоступен (неожиданно).
2 Nicole
 
27.03.19
10:10
И контекст формы недоступен, и РольДоступна() недоступна...
3 unregistered
 
27.03.19
10:32
(2) Подсказка. У тебя есть параметр "Форма". Сделай процедуру экспортной. Вызывай Форма.ПроверкаРоли("ПолныеПрава").
Ну либо пихни её в какой-нибудь общий серверный модуль, где опять таки сделай её экспортной.

А вообще порнография это - использование метода РольДоступна. Если подобная потребность возникает, значит что-то сделано через *опу.
4 Nicole
 
27.03.19
10:49
(3) Да, общий серверный модуль, я так и сделала, спасибо.
5 Nyoko
 
27.03.19
10:57
вообще &НаКлиентеНаСервереБезКонтекста  (Это без контекста формы, зачем туда передавать форму ? Для проверки ролей есть БСП функционал.