Для чего
Типовая Розница ограничивает доступ по магазинам, организациям, видам цен, но не по номенклатуре: любой
пользователь с правом чтения видит весь справочник. Задача — дать кассиру, маркетологу, менеджеру категории
только «свою» часть номенклатуры, и делать это через привычную администратору настройку групп доступа,
а не через кастомные регистры и формы.
Как это работает
В настройках прав появляется новый вид доступа «Номенклатура». Администратор включает его в профиль
и в группе доступа указывает папки справочника; у папки можно поставить флажок «Включая нижестоящие»,
и тогда разрешёнными становятся все её подгруппы и элементы. Пользователь видит всё дерево папок,
а элементы — только из разрешённых веток; создать или изменить элемент вне них тоже нельзя.
Ограничение работает в обоих вариантах ограничения доступа на уровне записей БСП — стандартном
и производительном. Правка основной конфигурации не требуется, конфигурация остаётся на поддержке.
Установка
1. Конфигуратор → Расширения конфигурации → загрузить из файла (`.cfe`) или из каталога исходников.
2. Снять флажок «Безопасный режим», обновить конфигурацию базы данных.
3. Запустить базу под администратором. При необходимости выполнить обновление вспомогательных данных
БСП запуском с параметром `/C ЗапуститьОбновлениеИнформационнойБазы`.
Настройка
1. Администрирование → Настройки пользователей и прав → «Ограничивать доступ на уровне записей» включено.
2. Профили групп доступа → нужный профиль → «Ограничения доступа» → включить вид доступа **Номенклатура**.
3. Группы доступа → группа с этим профилем → «Ограничения доступа» → вид «Номенклатура» → указать папки,
у нужных поставить **«Включая нижестоящие»**. Добавить пользователей.
4. В производительном варианте (Администрирование → Настройки пользователей и прав → «Обновление доступа
на уровне записей») дождаться завершения обновления доступа; в стандартном варианте ничего делать не нужно.
5. Пользователю перезайти в базу.
Ограничения и что нужно знать
- Ограничивается только справочник «Номенклатура». Документы, остатки, цены не ограничиваются: RLS в 1С
закрывает записи целиком, а не строки табличных частей, поэтому «спрятать» чужую номенклатуру внутри
документа средствами RLS нельзя.
- Папки справочника видны всегда (осознанное решение ради дерева навигации). Если нужно скрывать и папки,
уберите `ЭтоГруппа ИЛИ` из логики ограничения и модификатор `НеОграничиватьДоступКГруппам` из ролей.
- В производительном варианте после установки расширения ключи доступа по номенклатуре рассчитываются
фоновым заданием «Обновление доступа». В файловой базе оно работает только в клиентском сеансе —
откройте сеанс администратора или запустите обновление вручную из панели администрирования.
- После обновления Розницы проверьте список ролей с правом чтения номенклатуры и состав определяемых
типов; роли в расширении генерируются скриптом из типовых, повторить генерацию — дело минут.
- Расширение использует заимствование ролей и расширение состава определяемых типов, поэтому требует
платформу 8.3.18 и выше; собрано в режиме совместимости 8.3.27.
Версии
- 1.0.0.1 — первая публикация. Розница 2.3.25.23, БСП 3.1.12, платформа 8.3.27.2325.
Проверено на следующих конфигурациях и релизах:
- Розница, редакция 2.3, релизы 2.3.25.23
Вступайте в нашу телеграмм-группу Инфостарт