Имя: Пароль:
1C
1С v8
Вопрос про RLS
,
0 Козинак
 
05.09.16
13:38
Суть такая,добавил в справочник Номенклатура новое поле ГруппаДоступаНоменклатура, новую роль прописал для неё права доступа стандартным шаблоном RLS #позначениям, в ГруппеДоступа настроил права ограничения по Организациям и по ГруппаДоступаНоменклатура. Ограничение всё хорошо срабатывает. Вопрос, как сделать чтобы поле ГруппаДосутпаНоменклатура в справочнике Номенклатура заполнялось автоматически, когда пользователь заходит под определенной организацией?
1 Лефмихалыч
 
05.09.16
13:39
а зачем так делать?
Это поле должно быть заполнено один раз.
2 Козинак
 
05.09.16
13:43
Когда пользователь будет создавать новую единицу Номенклатуры, чтобы поле ГруппаДоступаНоменклатура автоматически заполнялось, а не приходилось ему выбирать из списка
3 Лодырь
 
05.09.16
13:48
(2) Ну и заполняй ее перед записью новой номенклатуры. Механизм можно сделать произвольным.
4 Козинак
 
05.09.16
13:50
Правильно понимаю что это прописывается непосредственно в модуле формы?
5 Лодырь
 
05.09.16
13:51
(4) Лучше в модуле объекта или подписке на событие.
6 Козинак
 
05.09.16
14:00
Процедура ПередЗаписью(отказ)
ГруппаДоступаНоменклатура=Справочники.ГруппаДоступаНоменклатура;
КонецПроцедуры
такое не работает
7 Mankubus
 
05.09.16
14:02
(6)
ГруппаДоступаНоменклатура=Справочники.ГруппаДоступаНоменклатура(здесь еще что-то надо дописать!);
8 Козинак
 
05.09.16
14:09
(7) я понимаю что тут что-то не хватает, но что там дописать, чтобы 1с брала из прав ограничения эти данные и заполняла этим   поле
9 Козинак
 
05.09.16
14:41
Как сделать это наподобие Пользователь.ТекущийПользователь(), только для моего реквезита?
10 Лефмихалыч
 
05.09.16
15:25
для RLSа своего ты значение группы доступа откуда берешь? Из параметра сеанса?
11 Фрэнки
 
05.09.16
15:41
(10) опаньки! А ведь о параметрах сеанса Козинак даже и не догадывался.


(9) Интересно, каким же тогда способом обращался в RLS, если
для этого в не был определен необходимый ПараметрСеанса?
12 Лефмихалыч
 
05.09.16
15:55
в общем, если RLS работает, то

//перед записью на сервере

   если ЭтоНовый() и не ЗначениеЗаполнено(ГруппаДоступаНоменклатура) Тогда
     ГруппаДоступаНоменклатура = ПараметрыСеанса.ГруппаДоступаНоменклатура;