Имя: Пароль:
1C
 
РЛС
0 Borteg
 
29.08.14
17:13
Добрый день. Конфигурации  Бухгалтерия3.0 +Бит Финанс. Добавили свой справочник (ИЕРАРХИЧЕСКИЙ) с реквизитом ЦФО. Теперь по этому реквизиту делаю РЛС.
Возникла такая проблема. Если элемент справочника находится в группе то он не отображается как и группа.Как только элемент вытаскиваю из групп пользователь его сразу видит. Если поставить отображение списком то выводятся все элемент без групп.
Как сделать так чтобы группы не проходили проверку рлс? Тоесть пользователь видел бы все группы(не могу сделать) и только те элементы к которым у него есть доступ(сделано).
1 Borteg
 
29.08.14
17:14
##Если &бит_рлс_ЦФОСтатьиОборотов ##Тогда
ТекущаяТаблица ИЗ #ТекущаяТаблица КАК ТекущаяТаблица
    ГДЕ (ИСТИНА)
    И (1 В
            (ВЫБРАТЬ ПЕРВЫЕ 1
                1 КАК ЕстьОтбор
            ИЗ
                РегистрСведений.бит_рлс_ПраваДоступа КАК бит_рлс_ПраваДоступа
            ГДЕ
                бит_рлс_ПраваДоступа.ВидОбластиДоступа = ЗНАЧЕНИЕ(Перечисление.бит_рлс_ВидыОбластейДоступа.ЦФОСтатьиОборотов)
                И бит_рлс_ПраваДоступа.ВидНастройки = ЗНАЧЕНИЕ(Перечисление.бит_рлс_ВидыНастроекПрав.Доступ)
                И бит_рлс_ПраваДоступа.Чтение       = ИСТИНА                                                
                И (бит_рлс_ПраваДоступа.Пользователь = &ТекущийПользователь
                   ИЛИ бит_рлс_ПраваДоступа.Пользователь В (&бит_рлс_ГруппыТекущегоПользователя))
                И (бит_рлс_ПраваДоступа.Разделитель_1 = ТекущаяТаблица.#Параметр(1)
                    ИЛИ бит_рлс_ПраваДоступа.Разделитель_1 = ЗНАЧЕНИЕ(Перечисление.бит_рлс_Все.Все))))
    И (НЕ -1 В
            (ВЫБРАТЬ ПЕРВЫЕ 1
                -1 КАК ЕстьОтбор
            ИЗ
                РегистрСведений.бит_рлс_ПраваДоступа КАК бит_рлс_ПраваДоступа
            ГДЕ
                бит_рлс_ПраваДоступа.ВидОбластиДоступа = ЗНАЧЕНИЕ(Перечисление.бит_рлс_ВидыОбластейДоступа.ЦФОСтатьиОборотов)
                И бит_рлс_ПраваДоступа.ВидНастройки = ЗНАЧЕНИЕ(Перечисление.бит_рлс_ВидыНастроекПрав.Запрет)
                И бит_рлс_ПраваДоступа.Чтение       = ИСТИНА                                                
                И бит_рлс_ПраваДоступа.Пользователь = &ТекущийПользователь
                И бит_рлс_ПраваДоступа.Разделитель_1 = ТекущаяТаблица.#Параметр(1)
                И бит_рлс_ПраваДоступа.Разделитель_2 = ЗНАЧЕНИЕ(Перечисление.бит_рлс_Все.Все)))
                    
##КонецЕсли                        
шаблон запроса которым пользуюсь
2 Borteg
 
29.08.14
17:15
прочие поля   #ЦФО_Чтение("ЦФО")
это группа - ограничений нет
3 raxe
 
29.08.14
17:48
проще отключать иерархию в форме выбора, если у пользователя РЛС на справочник. тогда и без доступа к родителю элемент можно выбрать