powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / [игнор отключен] [закрыт для гостей] / Ограничение доступа к данным через RLS
12 сообщений из 12, страница 1 из 1
Ограничение доступа к данным через RLS
    #36350752
Кристинка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый вечер! Подскажите пожалуйста, как средствами RLS обеспечить доступ пользователя только к своим контрагентам? Для справочника Контрагенты (иерархический - иерархия групп и элементов) пишу следующее ограничение для права на чтение: ГДЕ Менеджер = &ТекущийПользователь. (ТекущийПользователь - параметр сеанса, Менеджер - это реквизит справочника Контрагенты типа СправочникСсылка.пользователи). В итоге в режиме Предприятия не вижу ни одного контрагента.
...
Рейтинг: 0 / 0
Ограничение доступа к данным через RLS
    #36351145
Странно, должен отрабатывать.

Попробуйте в консоле запроса написать и посмотреть что выведет

Код: plaintext
1.
2.
3.
SELECT * ИЗ Справочник.Контрагенты КАК ТекущаяТаблица
ГДЕ Менеджер = &ТекущийПользователь


Этот запрос аналогичен правилу RLS вида

Код: plaintext
1.
2.
3.
ТекущаяТаблица ИЗ Справочник.Контрагенты КАК ТекущаяТаблица
ГДЕ Менеджер = &ТекущийПользователь


P.S.
Я все RLS сначала в консоли проверяю, после уже копирую в конфигурацию.
...
Рейтинг: 0 / 0
Ограничение доступа к данным через RLS
    #36351433
Кристинка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это своя конфигурация, в ней нет консоли запросов. Вот еще странность, если писать условие ГДЕ Менеджер <> &ТекущийПользователь. Тогда работает совершенно правильно, то есть показывает контрагентов, у которых менеджер не текущий пользователь. Но надо-то наоборот, а наоборот не работает(((
...
Рейтинг: 0 / 0
Ограничение доступа к данным через RLS
    #36351472
Кристинка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нашла консоль запросов, проверила этим запросом, тоже ничего не выводит, хотя я в процедуре УстановкаПараметровСеанса() устанавливаю параметр ТекущийПользователь...
...
Рейтинг: 0 / 0
Ограничение доступа к данным через RLS
    #36351750
Раз консоль запросов ничего не выводит, значит проблема в запросе. Хотя это очень странно. Вы параметр ТекущийПользователь в консоле запросов как устанавливаете? (Надо через клавную панель формы "Параметры запроса" -> "Получить из запроса")
Еще посмотрите тип переменной &ТекущийПользователь и его значение в режиме отладки.
...
Рейтинг: 0 / 0
Ограничение доступа к данным через RLS
    #36351805
Кристинка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Консоль все правильно выводит, оказывается неправильно параметр задавала. Только в справочнике Контрагенты все равно не видно ни одного элемента.
...
Рейтинг: 0 / 0
Ограничение доступа к данным через RLS
    #36352200
К сожалению больше посоветовать ничего не могу. Придется вам самой внимательно все просмотреть, там не так все сложно настраивается. Главное понять принцип.
...
Рейтинг: 0 / 0
Ограничение доступа к данным через RLS
    #36353370
Кристинка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вся проблема по-моему в том, что справочник иерархический и имеет группы. Если групп нет, то пользователю видны именно его контрагенты. Но так как все контрагенты находятся в группах (а у группы нет менеджера), не виден ни один из них. Пробовала назначать ограничение только прочим полям, но это не помогло.
...
Рейтинг: 0 / 0
Ограничение доступа к данным через RLS
    #36353763
nicktcher
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КристинкаВся проблема по-моему в том, что справочник иерархический и имеет группы. Если групп нет, то пользователю видны именно его контрагенты. Но так как все контрагенты находятся в группах (а у группы нет менеджера), не виден ни один из них. Пробовала назначать ограничение только прочим полям, но это не помогло.

Совершенно верно. Сталкивался с этой же ситуацией. Могу посоветовать сделать следующее:
если в спр-ке Контрагентов для реквизита "Менеджер" использование установлено "Для элемента", изменить на "Для групп и элементов", дальше по ситуации - если у Вас все контрагенты в группах относятся к одному менеджеру - просто проставляйте его для групп и тогда будете видеть всё, что внутри. Если же в гурппе собраны контрагенты для разных менеджеров, можно сделать, например, предопределенного такого "общего" менеджера в спр-ке пользователей и добавить его проверку в RLS через ИЛИ
...
Рейтинг: 0 / 0
Ограничение доступа к данным через RLS
    #36355650
Кристинка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
nicktcherЕсли же в гурппе собраны контрагенты для разных менеджеров, можно сделать, например, предопределенного такого "общего" менеджера в спр-ке пользователей и добавить его проверку в RLS через ИЛИ[/quot]

Ситуация именно такая. Не совсем понятно, что значит "общего" менеджера и как это будет работать?
...
Рейтинг: 0 / 0
Ограничение доступа к данным через RLS
    #36356316
nicktcher
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кристинка,

Я имею в виду - создать в спр-ке пользователей предопределенный элемент с именем "Менеджер", а в RLS прописать что-то наподобие
...
ГДЕ (Менеджер = &ТекущийПользователь) ИЛИ (Родитель.Менеджер = Справочники.Пользователи.Менеджер И Менеджер = &ТекущийПользователь)

Но имхо лучше упорядочить спр-к контрагентов так, чтобы группы содержали контрагентов только по одному менеджеру, его же проставить в реквизит "Менеджер" у группы. Я бы сделал так)
...
Рейтинг: 0 / 0
Ограничение доступа к данным через RLS
    #36356426
Кристинка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо большое, nicktcher! К сожалению, упорядочить спр-к контрагентов так, чтобы группы содержали контрагентов только по одному менеджеру, не получится. Так что буду использовать общего менеджера.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / Ограничение доступа к данным через RLS
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]