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