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