Вход | Регистрация

1С:Предприятие ::

Метки: 

RLS, ограничение по номенклатуре

Я
   AntonH851
 
09.01.13 - 14:53
Добрый день!
Написал правило ограничения по номенклатуры:

ТекущаяТаблица ИЗ #ТекущаяТаблица КАК ТекущаяТаблица
 
    ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ РАЗЛИЧНЫЕ
        СоставГруппы.Ссылка КАК ГруппаПользователей
    ИЗ
        Справочник.ГруппыПользователей.ПользователиГруппы КАК СоставГруппы
    ГДЕ
        СоставГруппы.Пользователь = &ТекущийПользователь) КАК ГруппыПользователей
    ПО (&ИспользоватьОграниченияПравДоступаНаУровнеЗаписей)
ГДЕ (&ИспользоватьОграниченияПравДоступаНаУровнеЗаписей = ЛОЖЬ
            ИЛИ (НЕ 1 В
                   (
                        ВЫБРАТЬ
                            1 КАК ПолеОтбора
                        ИЗ
                            РегистрСведений.м_ПроектыПользователей КАК м_ПроектыПользователей
                                ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.м_ПроектыНоменклатуры КАК м_ПроектыНоменклатуры
                                ПО м_ПроектыПользователей.Проект = м_ПроектыНоменклатуры.Проект
                        ГДЕ
                            м_ПроектыПользователей.Пользователь = &ТекущийПользователь
                            И м_ПроектыНоменклатуры.Номенклатура В ИЕРАРХИИ (ТекущаяТаблица.Ссылка)
                    ))
                        И НЕ Пользователи.Пользователь ЕСТЬ NULL)

Вопрос: почему ругается на поле Ссылка при попытке добавить этот шаблон в ограничение для справочника Номенклатура. Но там же есть поле Ссылка, в чем дело?
 
 
   ИС-2
 
1 - 09.01.13 - 15:00
(0)  м_ПроектыНоменклатуры.Номенклатура В ИЕРАРХИИ (ТекущаяТаблица.Ссылка) - В ИЕРАРХИИ нельзя использовать. Для теста убери эту строку.
   AntonH851
 
2 - 09.01.13 - 15:03
(1) Да я уже и "=" пробовал ставить, дело не в этом
   Lexusss
 
3 - 09.01.13 - 15:21
Конструкции В ИЕРАРХИИ не приемлит в качестве параметра поля запроса, только параметры запроса.
Конструция В ИЕРАРХИИ вообще отсутствует в языке RLS.
Вообще за такую конструкцию я бы дал в глаз. Что такое "Пользователи."?
Я так понимаю, это RLS на сам справочник номенклатуры? За что ты над ним так издеваешься.
   Lexusss
 
4 - 09.01.13 - 15:28
Т ИЗ Т КАК Т
ГДЕ НЕ &ИспользоватьОграниченияПравДоступаНаУровнеЗаписей
ИЛИ
Ссылка В (
     ВЫБРАТЬ Номенклатура
     ИЗ РегистрСведений.м_ПроектыНоменклатуры
     ГДЕ Проект В
           (
           ВЫБРАТЬ Проект
           ИЗ 
           ГДЕ Пользователь = &ТекущийПользователь
          )
)
   AntonH851
 
5 - 10.01.13 - 15:11
(4) Написал я так, теперь при открытии справочника Номенклатура мне выдается такая ошибка:

Ошибка в ограничении доступа к данным.
объект: 'Справочник.Номенклатура', поле: 'Родитель'; право: 'Чтение'
Ошибка SDBL:
Создание временной таблицы возможно только в рамках транзакции. (pos=24)
по причине:
Ошибка SDBL:
Создание временной таблицы возможно только в рамках транзакции. (pos=24)


Список тем форума
Рекламное место пустует Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует