0
Master_Hans
11.05.18
✎
09:35
|
Всем привет!
В Функции :
ПараметрыДоступа(<НаименованиеПрава>, <ОбъектМетаданных>, <СписокПолей>, <Пользователь/Роль>)
Есть парамаетр №3 <СписокПолей> - описание:
Список полей объекта базы данных, права на доступ к которым проверяются. Поля указываются списком, через запятую. Могут присутствовать имена табличных частей, реквизитов табличных частей, в последнем случае поле описывается как <Имя табличной части>.<Имя реквизита табличной части>.
<Пользователь/Роль> (необязательный)
Т.е. поразумевается что ты можешь достучаться до настройки прав реквизита.
Но это не работает.
если ты хочешь получить доступ к парвам ВСЕГО объекта мета данных например Документа, то это дело всё прекрасно работеет
РолиТекущийПользователь = ПользователиИнформационнойБазы.ТекущийПользователь().Роли;
ДокументРКО = Метаданные.Документы.РасходныйКассовыйОрдер;
Для Каждого Роль Из РолиТекущийПользователь Цикл
// Для Каждого Документ Из Метаданные.Документы Цикл
//Если ПравоДоступа("Просмотр",Документ,Роль) Тогда
Если СтрНачинаетсяС(Роль.Имя, "POV_") Тогда
Сообщить(Роль);
сообщить(ПараметрыДоступа("Просмотр", ДокументРКО, "МожноСохранять", Роль).Доступность);
КонецЕсли;
КонецЦикла;
сообщить(ПараметрыДоступа("Просмотр", ДокументРКО, "МожноСохранять", Роль).Доступность);
Здесь в качестве "Спска полей" я указал реквизит = МожноСохранять
И хочу проверить есть ли уменя право доступа именно к реквизиту.
Но всё равно возвращется право на "Просмотр" ко всему Документу, а не к его реквизиту.
Кто нибудь сталкивался с этой проблемой?
У кого
|
|