Имя: Пароль:
1C
1С v8
Помогите с RLS
0 lis250
 
28.04.16
17:01
Есть документ заявка на ДС, есть регистр в котором назначается какое подразделение, т.е. пользователь может видеть все документы по этому подразделению. Как сделать так "Если подразделение не назначено то видно все документы"

ниже код:

ЗаявкаНаДС ИЗ Документ.ЗаявкаНаДС КАК ЗаявкаНаДС
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПодписиСотрудников КАК ПодписиСотрудников
    ПО ЗаявкаНаДС.ПодразделениеЗаявитель = ПодписиСотрудников.УровеньДоступа
ГДЕ ПодписиСотрудников.ОтветственноеЛицо = &ТекущийПользователь
    И ПодписиСотрудников.Ограничение = ИСТИНА
1 FIXXXL
 
28.04.16
17:10
(0) судя по запросу сейчас и так все видно
2 lis250
 
28.04.16
17:14
Нет . Если подразделение назначено тогда отрабатывает нормально , если подразделение убираю то список документов пустой
3 ASV
 
28.04.16
17:17
(1) Запрос верный. Условие ГДЕ накладывается уже на объединенную таблицу
ЗаявкаНаДС1 ПодписиСотрудников1
ЗаявкаНаДС1 ПодписиСотрудников2
ЗаявкаНаДС2 0
4 ViSo76
 
28.04.16
17:26
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПодписиСотрудников КАК ПодписиСотрудников
    ПО ЗаявкаНаДС.ПодразделениеЗаявитель = ПодписиСотрудников.УровеньДоступа
ГДЕ ПодписиСотрудников.ОтветственноеЛицо ЕСТЬ NULL
ИЛИ (ПодписиСотрудников.ОтветственноеЛицо = &ТекущийПользователь
    И ПодписиСотрудников.Ограничение = ИСТИНА )
5 badboychik
 
28.04.16
17:49
а почему настройкой группы доступа не решается? не надо ничего программировать
6 badboychik
 
28.04.16
18:08
копируешь профиль доступа "Инициатор заявок на расходование ДС", добавляешь в ограничения доступа подразделения, а потом в группах доступа "Инициатор ..." выставляешь этот профиль и прописываешь пользователей и подразделения