Всем привет.
1С 8.3.11, УТП последнего релиза.
Возникла необходимось добавления RLS по подразделению, сделал маленький шаблончик, все заработало, но есть небольшое но!
В Журнал документов "Кассовые документы" входит документ "Внутреннее перемещение наличных ДС" - у этого документа нету подразделения, а в составе реквизитов журнала есть. Соответственно если посмотреть, то в журнале на этом типе документа Подразделение = NULL и поэтому этот документ не попадает в журнал вообще.
Вопрос: Как сделать так чтобы пользователи видели этот документ при включенном RLS?
Мой шаблон:
#ЕСЛИ &ИспользоватьОграниченияПравДоступаНаУровнеЗаписей
#ТОГДА
#ТекущаяТаблица
ГДЕ
(#Параметр(1), &ТекущийПользователь)
В (ВЫБРАТЬ
ПраваДоступаПодразделения.Подразделение КАК Подразделение,
ПраваДоступаПодразделения.Пользователь КАК Пользователь
ИЗ
РегистрСведений.ПраваДоступаПодразделения КАК ПраваДоступаПодразделения
СГРУППИРОВАТЬ ПО
ПраваДоступаПодразделения.Подразделение,
ПраваДоступаПодразделения.Пользователь
)
#КОНЕЦЕСЛИ
+ ИЛИ Подразделение=пустоеПодразделение
Без добавления реквизита в документ не сработает, т.к. там NULL.
Если же реквизит добавить то да, либо в запросе добавить условие по пустому подразделению, либо в регистре создать запись для пользователя с пустым подразделением.
Я думал может можно обойтись как-то без добавления реквизита в документ, чисто запросом на уровне шаблона RLS, чтобы если там NULL тоже разрешало, но даже если дописать
ИЛИ #Параметр(1) = NULL или #Параметр(1) ЕСТЬ NULL - то все равно не получается
Bernet, может там не NULL, а Неопределено?
Vofka @ Сегодня, 13:12
,
Точно NULL - отключил RLS и специально в консоли запросов глянул. Неопределено там было бы если бы это поле составного типа было
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua