Версия для печати темы (https://pro1c.org.ua/index.php?s=2ed371b4fadd87109368dff764ed618e&showtopic=53652)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование обычных форм 1С 8.2 и не интерфейсной логики _ Проблема отображения записей в справочнике через RLS (1c 8.2.19.106)

Автор: andrew76 17.08.19, 13:45

Добрый день !

Есть задача ограничить отдельные реквизиты Справочника ФизЛица.Работать это должно примерно так:
Пользователь (Админ) заполняет определенный реквизит (с названием ДоступРазрешен,тип Логический,или Числовой).
на форме элемента Справочника ФизЛиц.Далее по идее , для пользователей должна "включится в работу" технология RLS.
Т.е. пользователь по логике на записи с включенным этим реквизитом ДоступРазрешен не ложен иметь доступ к адресу проживания и паспортным данным.А получается следующее : при открытии Справочника ФизЛиц вообще никакие записи не показываются.У админа же все нормально.Где может быть проблема ?
Заполняю в конфигураторе в правах таблицу "Ограничение доступа к данным" следующим условием:

ФизЛица ГДЕ ФизЛица.ДоступРазрешен = 1          //(вариант если Тип реквизита Числовой)
ФизЛица ГДЕ ФизЛица.ДоступРазрешен = Истина  //(вариант если Тип реквизита Логический)

Автор: Vladal 19.08.19, 10:18

andrew76 @ 17.08.19, 14:45 * ,
Не понятно, это типовая конфигурация? В типовых есть отдельный регистр сведений КонтактнаяИнформация, который и надо блокировать.
А так - блокируется таблица Справочник.Физлица

ФизЛица ГДЕ ФизЛица.ДоступРазрешен = 1          //(вариант если Тип реквизита Числовой)
ФизЛица ГДЕ ФизЛица.ДоступРазрешен = Истина  //(вариант если Тип реквизита Логический)
Это излишние условия, можно оставить только
ФизЛица ГДЕ ФизЛица.ДоступРазрешен

Автор: andrew76 19.08.19, 10:22

Конфигурация не типовая.Самописная.Блокировать надо именно отдельные записи (вернее отдельные реквизиты) в справочнике ФизЛица.
Только сейчас блокируется весь справочник получается.

Автор: Vladal 19.08.19, 10:30

Цитата(andrew76 @ 19.08.19, 11:22) *
надо именно отдельные записи (вернее отдельные реквизиты) в справочнике ФизЛица.

ОК.

А адреса тоже хранятся в справочнике физлиц?
Тогда РЛС на реквизит. В настройках прав на право Чтение выбрать проверяемые поля. Например, Адрес (если он хранится в справочнике Физлица) и справа условие, по которому оно будет доступно.

Естественно, во всех запросах к чтения Адреса по этому справочнику добавить РАЗРЕШЕННЫЕ.

Честно, сейчас проверить нет возможности.

Но я писал RLS к документу, вычисляя его возможность чтения по сотруднику, его руководителю, чтобы руководитель подразделения видел только документы своих сотрудников.

Автор: andrew76 19.08.19, 10:35

Цитата(Vladal @ 19.08.19, 13:30) *
А адреса тоже хранятся в справочнике физлиц?


Так точно.Только сейчас RLS блокирует весь справочник у пользователя.Не видно ни одной записи.А если зайти под админом . то все ОК.

Автор: Vladal 19.08.19, 10:54

Цитата(andrew76 @ 19.08.19, 11:35) *
Только сейчас RLS блокирует весь справочник у пользователя

А если чтение сделать на конкретное поле с адресом?

Автор: andrew76 19.08.19, 12:53

Vladal @ Сегодня, 13:54 * ,

Работает . если выставляю в правах в таблице "Ограничение доступа к данным" пункт "Прочие поля".
Справочник при открытии уже записи показывает.Но в заблокированную админом запись попасть вообще нельзя.
Вываливается сообщение "У пользователя недостаточно прав на исполнение операции над базой данных".
Вообще то задумка была такая ,чтобы слегка ограничить доступ к отдельным реквизитам,а не ко всей записи справочника.
А на сам реквизит посадить ограничение RLS не получается.На нужном реквизите ограничение прав не активно.Не понятно.

Автор: sava1 19.08.19, 13:01

Цитата(andrew76 @ 17.08.19, 14:45) *
адресу проживания и паспортным данным

это реквизиты справочника ? или РС?

Автор: andrew76 19.08.19, 13:21

Цитата(sava1 @ 19.08.19, 16:01) *
это реквизиты справочника ? или РС?


Это реквизиты справочника.

Автор: sava1 19.08.19, 13:36

для Вашего случая лучше
- создать роль с запретом
- при открытии анализировать доступность роли и соответственно устанавливать доступность/видимость реквизита

и не трогатьРЛС

Автор: andrew76 19.08.19, 15:53

sava1 @ Сегодня, 16:36 * ,

Спасибо,так будет проще и быстрее работать будет.

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua