Имя: Пароль:
1C
1С v8
Можно ли в RLS запросе проверить количество элементов ФиксированногоМассива
0 1234567
 
10.10.12
16:54
Если справочник СотрудникиОрганизаций. Есть много Организаций. Есть пользователя иб с доступом в одну Орг. или в несколько или ко всем.

Хочу с помощью RLS реализовать чтение только определенных елементов справочника Сотрудников.
Создал ПараметрСеанса "ОрганизацииПользователя", напихал туда нужные
организации.

Мне нужно что-то на подобии этого:
ВЫБОР КОГДА КОЛИЧЕСТВО(&ОрганизацииПользователя)=0
ТОГДА Истина
ИНАЧЕ СотрудникиОрганизаций.Организация В (&ОрганизацииПользователя)
КОНЕЦ

Но так же нельзя....

Читал:
v8: Можно ли в запросе проверить количество элементов списка на ноль.
Книга знаний: Хитрое написание текстов запросов с необязательными условиями

И мне идеально подходит вариант:
ВЫБРАТЬ
   ЦеныНоменклатурыСрезПоследних.Номенклатура,
   ЦеныНоменклатурыСрезПоследних.ХарактеристикаНоменклатуры,
   ЦеныНоменклатурыСрезПоследних.ТипЦен,
   ЦеныНоменклатурыСрезПоследних.Цена
ИЗ
   РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних
ГДЕ
   (ЦеныНоменклатурыСрезПоследних.Номенклатура В (&СписокНоменклатуры)
    ИЛИ (НЕ 1 В
             (ВЫБРАТЬ РАЗЛИЧНЫЕ 1
              ИЗ Справочник.Номенклатура КАК Спр
              ГДЕ Спр.Ссылка В (&СписокНоменклатуры))))

Но он не работает в RLS!

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

Есть идеи, джентльмены?)
1 pumbaEO
 
10.10.12
16:56
Пойди от обратного, дай доступ всем ораганизациям.
2 1234567
 
10.10.12
16:58
Ну задача такая:
-Если есть для пользователя в списке заполненные организации - то доступ только к этим организациям.
-Если организации не заполненные - то доступ ко всем.
3 FIXXXL
 
10.10.12
17:10
(2)Мож создавать пользователю параметр сеанса &ДоступКоВсемОрганизациям и уже от него плясать?
истину в параметр, когда организации не заполнены
и проверять как в типовых с параметром &ОграниченияНаУровнеЗаписей
4 ptiz
 
10.10.12
17:10
Справочник.СотрудникиОрганизаций КАК Спр
                   ГДЕ
                       Спр.Ссылка В (&ОрганизацииПользователя))

что-то тут не так

Зачем ищешь сотрудника в массиве организаций?
5 FIXXXL
 
10.10.12
17:18
(3) + немного наоборот :)
##Если &НЕТДоступаКоВсемОрганизациям ##Тогда
//тут ваяешь свой запрос на вхождение
##КонецЕсли

а параметр сеанса уже заполняешь в МодулеСеанса
6 1234567
 
10.10.12
17:23
ptiz, точно!!!!!!!!!!!!

Да я просто опечатался, или окопипастился тупо!

Спасибо за внимание, желаю поменьше блокировок в 1с)
7 1234567
 
10.10.12
17:24
FIXXXL, как вариант, но не красиво.

А так уже получилось красиво.
8 FIXXXL
 
10.10.12
17:28
(7) "ну и славно, трам-пам-пам-пам" :)
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс