RLS на реквизит справочника #567123


#0 by Aether
Добрый день! Коллеги, подскажите, пожалуйста, есть ли в 1с возможность ограничить чтение значение конкретного реквизита для конкретной роли? Например, для пользователя с ролью "Менеджер" при открытии формы элемента справочника Сотрудники значение в поле "Оклад" д.б. пустое. Про форму списка тоже самое.
#1 by AlexNV
есть. ищи по форуму
#2 by Ненавижу 1С
там же можно указывать поля
#3 by ЧеловекДуши
Там есть все, но многое надо доделывать.
#4 by Aether
Искал, результат неудовлетворительный... Пишу так: Не работает..
#5 by Aleksey
Вроде бы в 8.2 это можно
#6 by Aether
Дайте пример, пожалуйста!
#7 by AlexNV
#8 by Aether
Вопрос звучит в по-другому...
#9 by Aether
Up!
#10 by Злобный монстр
Регистр настроек сделай для пользователей и через него правила РЛС пиши как хочешь...
#11 by Aether
А в конфигураторе разве нельзя?
#12 by Злобный монстр
Можно, я просто гибкий вариант предлагаю. Но в твоем случае проще обращаться к параметру сеанса где будет лежать роль.
#13 by Aether
А пример, можно? Как написать RLS?
#14 by Злобный монстр
Например для поля Контрагент которое может смотреть тока менеджер #Иначе ЛОЖЬ #КонецЕсли
#15 by Aether
Я же настраиваю RLS в конкретной роли, зачем мне проверять текущую роль пользователя?
#16 by Злобный монстр
Тьфу блин... тогда в чем вообще проблема?
#17 by Злобный монстр
Я думал у тебя отдельные роли какие-то...
#18 by Aether
=) Как написать RLS!
#19 by Aether
+ Это условие писать для поля Оклад? Надо ли что-то еще, например для "Прочие поля"?
#20 by Злобный монстр
Ты учитывай момент такой, если у юзера есть хоть одна роль с правами на чтение без этого правила он сможет прочитать
#21 by Aether
У юзера 1 роль. Задача простая, не понимаю как сделать...
#22 by Злобный монстр
Тебе условие не надо: <Прочие поля> | Пусто Оклад | Сотрудники ГДЕ ЛОЖЬ
#23 by Злобный монстр
точнее прочие поля вообще нет ниче
#24 by Aether
<Прочие поля> | Пусто Ругается: Нельзя записывать пустое ограничение доступа!
#25 by Злобный монстр
Оклад | Сотрудники ГДЕ ЛОЖЬ И больше ничего
#26 by acsent
Но учти ПолучитьОбъект будет вызывать ошибку чтения
#27 by acsent
Лучше юзать 8.2 и права по реквизитам
#28 by Злобный монстр
+ А везде где запросы берут это поле надо будет "РАЗРЕШЕННЫЕ" добавить
#29 by Aether
т.е типовые отчеты надо переписывать?
#30 by Aether
Не работает! На форме изменений нет, отчеты показывают оклад...
#31 by Злобный монстр
И где в 8.2 права по реквизитам? Ну "переписывать" это сильно сказано, тока добавлять "РАЗРЕШЕННЫЕ" в запросы где упоминается это поле справочника
#32 by Злобный монстр
Точно под пользователем только с одной ролью смотришь?
#33 by Aether
Вообще, у пользователя 3 роли: 2 типовые, но там нет вообще прав на этот справочник, 3-я роль моя, ее я и настраиваю.
#34 by Злобный монстр
Его же не только просмотр интересует но и в отчетах и запросах инфа
#35 by Злобный монстр
Странно...
#36 by Aether
При написании условия из в отчетах вижу оклад, но вот попасть в карточку сотрудника уже не могу: пишет нет прав для операции над БД!
#37 by Злобный монстр
А в отчете оклад откуда берется? Может там из регистра инфа идет? Вообщем походу с RLS в твоем случае больше геморроя будет...
#38 by Aether
сейчас посмотрю
#39 by Aether
Да, похоже поля в отчете заполняются из регистров. Если взять поле "Оклад" из справочника, оно пустое. Т.е. работает! Но, остались 2 вещи: ограничить регистры и все-таки пустить пользователя в карточку сотрудника.
#40 by Злобный монстр
В карточке лучше без РЛС сделай запрет видимости. А в регистре сведений также как и в справочнике правило пиши. Если там накопление то не получится.... только на весь регистр сразу права
#41 by Aether
А в случае с регистром расчета?
#42 by Злобный монстр
Точно не знаю, но думаю что тож на весь регистр...
#43 by Aether
Спасибо! Буду дальше сам думать!
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям