|
RLS. Настройка ограничений на уровне записей и полей. | ☑ | ||
|---|---|---|---|---|
|
0
interlamersha
24.01.10
✎
17:36
|
В базе необходимо для пользователей разделить доступ на документы в зависимости от их содержания. Например дать пользователю возможность редактировать и просматривать документ в котором он указан в качестве ответсвенного. В конфигураторе, в настройке ролей есть определение полей и ограничений доступа. Причем ограничения доступа прописываются в виде запроса. Но я никак не могу понять как передавать значение параметра в такой запрос и как всё это будет работать в конечном итоге.
Если я в конфигураторе выберу документ отчет о розничных продажах, перейду к настройкам прав, для права чтения пропишу в строке Ограничение доступа текст: Где Ответсвенный = &ТекущийПользователь, что увидит пользователь в форме списка документов, при открытии документа... И каким образом я должна передать в параметр ТекущийПользователь значение параметра сеанса? Если можно, кто-нибудь приведите небольшой поэтапный пример настройки ограничений на уровне записей и полей, или дайте ссылки. Буду очень признательна. Пока из более мене нормальных статей удалось найти только это: http://aleks1c.blogspot.com/2009/07/blog-post.html Но опять же в этой статей отсутсвует описание процесса установки значения параметра. |
|||
|
1
IronDemon
24.01.10
✎
17:54
|
Там же: Параметры сеанса доступны как из встроенного языка 1С:Предприятия (например: ПараметрыСеанса.ТекущийПользователь = ИмяПользователя() или Пользователь = ПараметрыСеанса.ТекущийПользователь), так и из ограничений доступа (например: Документ.Отчет.Пользователь = &ТекущийПользователь)
|
|||
|
2
interlamersha
24.01.10
✎
18:34
|
Всё равно не понятно как передать значение текущего пользователя в параметр ТекущийПользователь. Вот также строка из этой статьи:
Параметры сеанса, в том числе и в составе выражений. Например, на чтение элементов справочника "ГруппыПисемЭлектроннойПочты" может быть задано следующее ограничение доступа: ГДЕ Владелец.ДоступКУчетнойЗаписи.Пользователь = &ТекущийПользователь И Владелец.ДоступКУчетнойЗаписи.Администрирование = ИСТИНА где "ТекущийПользователь" - это параметр сеанса. Если бы это был просто запрос в модулях, то я бы писала Запрос = Новый Запрос; Запрос.Текст = "* из Документ.ОтчетОРозничныхПродажах как отчет где Отчет.Ответсвенный=&ТекущийПользователь"; Запрос.УстановитьПараметр("ТекущийПользователь", ПараметрыСеанса.ТекущийПользователь); Результат = Запрос.Выполнить(); Но для настройки прав не указано как, где и что я должна прописать либо установить для того чтобы объявленному параметру было присвоено значение, вместо привычного Запрос.УстановитьПараметр("ТекущийПользователь", ПараметрыСеанса.ТекущийПользователь); |
|||
|
3
IronDemon
24.01.10
✎
19:11
|
Сделай поиск по конфе существующих параметров сеанса
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |