Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Проблема отображения записей в справочнике через RLS (1c 8.2.19.106)
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.2 > Программирование обычных форм 1С 8.2 и не интерфейсной логики
andrew76
Добрый день !

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

ФизЛица ГДЕ ФизЛица.ДоступРазрешен = 1          //(вариант если Тип реквизита Числовой)
ФизЛица ГДЕ ФизЛица.ДоступРазрешен = Истина  //(вариант если Тип реквизита Логический)
Vladal
andrew76 @ 17.08.19, 14:45 необходимо зарегистрироваться для просмотра ссылки ,
Не понятно, это типовая конфигурация? В типовых есть отдельный регистр сведений КонтактнаяИнформация, который и надо блокировать.
А так - блокируется таблица Справочник.Физлица

ФизЛица ГДЕ ФизЛица.ДоступРазрешен = 1          //(вариант если Тип реквизита Числовой)
ФизЛица ГДЕ ФизЛица.ДоступРазрешен = Истина  //(вариант если Тип реквизита Логический)
Это излишние условия, можно оставить только
ФизЛица ГДЕ ФизЛица.ДоступРазрешен
andrew76
Конфигурация не типовая.Самописная.Блокировать надо именно отдельные записи (вернее отдельные реквизиты) в справочнике ФизЛица.
Только сейчас блокируется весь справочник получается.
Vladal
Цитата(andrew76 @ 19.08.19, 11:22) необходимо зарегистрироваться для просмотра ссылки
надо именно отдельные записи (вернее отдельные реквизиты) в справочнике ФизЛица.

ОК.

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

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

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

Но я писал RLS к документу, вычисляя его возможность чтения по сотруднику, его руководителю, чтобы руководитель подразделения видел только документы своих сотрудников.
andrew76
Цитата(Vladal @ 19.08.19, 13:30) необходимо зарегистрироваться для просмотра ссылки
А адреса тоже хранятся в справочнике физлиц?


Так точно.Только сейчас RLS блокирует весь справочник у пользователя.Не видно ни одной записи.А если зайти под админом . то все ОК.
Vladal
Цитата(andrew76 @ 19.08.19, 11:35) необходимо зарегистрироваться для просмотра ссылки
Только сейчас RLS блокирует весь справочник у пользователя

А если чтение сделать на конкретное поле с адресом?
andrew76
Vladal @ Сегодня, 13:54 необходимо зарегистрироваться для просмотра ссылки ,

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

это реквизиты справочника ? или РС?
andrew76
Цитата(sava1 @ 19.08.19, 16:01) необходимо зарегистрироваться для просмотра ссылки
это реквизиты справочника ? или РС?


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

и не трогатьРЛС
andrew76
sava1 @ Сегодня, 16:36 необходимо зарегистрироваться для просмотра ссылки ,

Спасибо,так будет проще и быстрее работать будет.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.