В процессе работы в системе 1С:ERP Управление предприятием часто возникает ситуация, когда стандартных настроек прав доступа оказывается недостаточно для обеспечения эффективного взаимодействия сотрудников внутри одного подразделения. Типовой сценарий: сотруднику юридического отдела или бухгалтерии необходимо видеть не только свои Заявки на расходование денежных средств, но и документы, созданные его коллегами по отделу. По умолчанию же система часто ограничивает видимость документов только автором.
В этой статье мы подробно разберем, как расширить права доступа, проанализируем механизмы RLS (Record Level Security) и научимся настраивать группы доступа так, чтобы сотрудники видели документы всего подразделения — для автоматизации этого процесса есть обработка настройки ролей и ограничений доступа в 1С:ERP.
Рассмотрим ситуацию: сотруднику назначен стандартный профиль Инициатор заявок на расходование денежных средств. Казалось бы, название профиля предполагает работу с заявками, однако при попытке открыть список документов пользователь видит только те записи, где он указан в качестве автора. Это происходит из-за включенного механизма ограничения доступа на уровне записей. Чтобы точно определить, какие именно ограничения накладываются на пользователя, можно провести предварительный анализ прав доступа к объекту, который покажет все роли и профили, влияющие на текущую видимость — в этом поможет универсальный отчет для анализа прав доступа и RLS.
Если мы просто добавим еще один стандартный профиль, это может не решить задачу или, напротив, дать избыточные права (например, право на утверждение заявок). Поэтому нам необходимо создать индивидуальную настройку в разделе Группы доступа.
Разберем по шагам процесс создания группы доступа, которая позволит видеть документы подразделения:
Профиль выберем стандартный профиль Инициатор заявок на расходование денежных средств.Проанализируем доступные виды ограничений. Нам необходимо найти вид доступа Подразделения. По умолчанию там может стоять значение «Все запрещены, исключения назначаются в группах доступа». Нам нужно изменить логику работы этого ограничения:
Заявка на расходование денежных средств.В некоторых случаях, помимо подразделений, критически важной является настройка RLS по организации, чтобы права доступа корректно отрабатывали в многофилиальных базах — для диагностики и настройки таких ограничений пригодится обработка анализа прав доступа и RLS-ограничений.
Выясним причину, почему даже после настройки группы доступа изменения могут не вступить в силу немедленно. В современных версиях 1С:ERP существует два режима работы RLS: Стандартный и Производительный.
Рассмотрим Производительный режим. Он значительно ускоряет работу системы при проверке прав, но требует актуализации специальных таблиц в базе данных. Если в вашей системе включен именно этот режим, после изменения настроек групп доступа необходимо убедиться, что регламентное задание Обновление прав доступа выполнено успешно. В ситуациях, когда стандартные механизмы вызывают замедление работы, пользователи часто выбирают привилегированные отчеты для формирования данных в обход тяжелых запросов RLS.
Чтобы проверить режим, пройдем в НСИ и администрирование — Настройки пользователей и прав — Ограничивать доступ на уровне записей. Если установлена галочка «Производительный», помним о необходимости обновления данных.
Если типовой профиль «Инициатор» слишком ограничен, и нам нужно предоставить только право чтения чужих документов без возможности их редактирования, рассмотрим альтернативный вариант. Мы можем создать новый Профиль групп доступа, включив в него роль Чтение заявок на расходование денежных средств.
Посмотрим на пример настройки такого профиля:
Документ.ЗаявкаНаРасходованиеДенежныхСредств. Для этого удобно использовать средства для управления правами доступа и просмотра групп на объекты.Чтение и Просмотр.Подразделениям.Это позволит сотруднику редактировать свои заявки (через основной профиль) и видеть чужие заявки (через дополнительный профиль с настроенным RLS).
В некоторых случаях нам может потребоваться дать доступ не ко всем заявкам отдела, а только к определенным документам. Для этого в 1С:ERP предусмотрен механизм Рабочая группа. На вкладке Дополнительно в самой заявке можно вручную добавить пользователей или группы пользователей.
Однако если задача стоит шире — например, скрыть конкретные поля или кнопки внутри доступных документов, то лучше использовать контроль видимости и доступности элементов управляемой формы. Также для тонкой настройки интерфейса под каждого пользователя подойдет универсальное расширение, обеспечивающее видимость реквизитов документов по пользователям, что позволяет гибко управлять доступом к полям "Сумма" или "Банковский счет" без изменения кода конфигурации.
Важно помнить, что RLS в 1С:ERP жестко завязан на справочник Структура предприятия. Проанализируем типичную ошибку: у пользователя в карточке (в разделе «Сотрудники» или «Пользователи») указано одно подразделение, а в документе Заявка на расходование ДС выбирается другое (например, вышестоящее или смежное). В этом случае, даже при настроенном доступе «по подразделению», система не покажет документ, так как не увидит совпадения.
Проверим соответствие:
Подразделение.Подразделение (через «Изменить форму»).Подведем итог нашим действиям. Чтобы сотрудники юридического отдела видели заявки друг друга, мы:
Структура предприятия.Такой системный подход позволяет гибко управлять видимостью документов, сохраняя при этом безопасность данных и не прибегая к программированию или снятию конфигурации с поддержки.