| 
    
            
         
         | 
    
  | 
Как сделать такой запрос | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        AlStorm    
     04.02.13 
            ✎
    17:38 
 | 
         
        Всем привет! У меня уже полпервого ночи, голова не варит, а работать надо..
  
        Слушайте, мне нужен такой вот запрос: Есть поле типа Булево. Есть список значений, например, типа "Справочник номенклатура". Надо написать тако  | 
|||
| 
    1
    
        AlStorm    
     04.02.13 
            ✎
    17:38 
 | 
         
        Блин( Щас допишу     
         | 
|||
| 
    2
    
        Ёпрст    
     гуру 
    04.02.13 
            ✎
    17:39 
 | 
         
        Иди спать ужо!     
         | 
|||
| 
    3
    
        AlStorm    
     04.02.13 
            ✎
    17:41 
 | 
         
        Надо написать такой запрос, который при поле Булево = Истина - получит все записи справочника Номенклатуры, которые содержатся в списке, а при = Ложь - записи, кроме тех, что в списке значений.
  
        Вот. Желательно чтобы запрос быстро работал, безо всяких вложенных таблиц и диких условий. Мне в мой уставший мозг приходят мысли только с условиями (Выбор КОГДА), и мне это нифига не нравится:(  | 
|||
| 
    4
    
        Maxus43    
     04.02.13 
            ✎
    17:41 
 | 
         
        Где
  
        (&МойТипБулево ИЛИ НЕ Номенклатура В(&СписокНоменкл))  | 
|||
| 
    5
    
        AlStorm    
     04.02.13 
            ✎
    17:43 
 | 
         
        (4)
  
        Понял, спсибо) А если представить что тот список значений - это регистр сведений, и надо сделать соединение, то как?  | 
|||
| 
    6
    
        DrShad    
     04.02.13 
            ✎
    17:44 
 | 
         
        (5) тогда вместо ГДЕ пишешь ПО     
         | 
|||
| 
    7
    
        Maxus43    
     04.02.13 
            ✎
    17:44 
 | 
         
        (5) в ВТ запихни свой "список значений" из РС     
         | 
|||
| 
    8
    
        Maxus43    
     04.02.13 
            ✎
    17:44 
 | 
         
        (6) я против выражений в соединении по религиозным соображениям! )     
         | 
|||
| 
    9
    
        AlStorm    
     04.02.13 
            ✎
    17:46 
 | 
         
        По секрету - мне это для RLS надо)
  
        Подглядел бы в Ут11, но там так наворотили, что хрен разберешь  | 
|||
| 
    10
    
        DrShad    
     04.02.13 
            ✎
    17:57 
 | 
         
        а у тебя УФ?     
         | 
|||
| 
    11
    
        AlStorm    
     04.02.13 
            ✎
    18:00 
 | 
         
        ну     
         | 
|||
| 
    12
    
        Reset    
     04.02.13 
            ✎
    18:01 
 | 
         
        (3)
  
        "при поле Булево = Истина - получит все записи справочника Номенклатуры, которые содержатся в списке" означает, что все что есть в справочнике (т.е. без ограничения), или все из "списка значений"?  | 
|||
| 
    13
    
        AlStorm    
     04.02.13 
            ✎
    18:03 
 | 
         
        (12)
  
        Все те, что в списке значений. Или в регистре сведений (в моем случае будет не список значений, а регистр сведений)  | 
|||
| 
    14
    
        DrShad    
     04.02.13 
            ✎
    18:04 
 | 
         
        (11) ничего особо там не наворочено - есть несколько групп доступа и профилей, в профиле указывается перечень групп и юзеров. В группе доступа по объекту список разрешенных или запрещеных     
         | 
|||
| 
    15
    
        DrShad    
     04.02.13 
            ✎
    18:04 
 | 
         
        (13) пихай его с отборами в ВТ     
         | 
|||
| 
    16
    
        Reset    
     04.02.13 
            ✎
    18:05 
 | 
         
        (13) тогда (для списка)
  
        &МойТипБулево И Номенклатура В(&СписокНоменкл) ИЛИ Не &МойТипБулево И НЕ Номенклатура В(&СписокНоменкл)  | 
|||
| 
    17
    
        DrShad    
     04.02.13 
            ✎
    18:06 
 | 
         
        (16) вот только запросы в RLS малость отличаются синтаксисом :))))     
         | 
|||
| 
    18
    
        AlStorm    
     04.02.13 
            ✎
    18:09 
 | 
         
        (17)
  
        Да знаю я.. Это мои первые ковыряния в RLS. Поэтому я и написал, что без подзапросов.. и проще!  | 
|||
| 
    19
    
        fisher    
     04.02.13 
            ✎
    18:09 
 | 
         
        (5) Можно так в RLS для регистра сведений
  
        ТекущаяТаблица ИЗ #ТекущаяТаблица КАК ТекущаяТаблица ЛЕВОЕ СОЕДИНЕНИЕ МойРегистрСведений ПО ТекущаяТаблица.Номенклатура = МойРегистрСведений.Номенклатура ГДЕ &Булево ИЛИ МойРегистрСведений.Номенклатура ЕСТЬ NULL  | 
|||
| 
    20
    
        Reset    
     04.02.13 
            ✎
    18:10 
 | 
         
        +(16)
  
        или в случае соединения с регистром Где &МойТипБулево И Не МойРС.Номенклатура is Null ИЛИ Не &МойТипБулево И МойРС.Номенклатура is Null  | 
|||
| 
    21
    
        AlStorm    
     04.02.13 
            ✎
    18:11 
 | 
         
        (19)
  
        Логично) Спасибо. PS Дожился, затупил на фонарнейшей задачке, хотя в универе булевские задачи щелкал)) pps Пошел я спать))  | 
|||
| 
    22
    
        Reset    
     04.02.13 
            ✎
    18:12 
 | 
         
        (17)  я просто условие написал в плюс к (4), а синтаксис пусть автор сам правит :)
  
        типа отмазался)  | 
|||
| 
    23
    
        AlStorm    
     04.02.13 
            ✎
    18:12 
 | 
         
        Кстати, эта вот фигня, что булева - тоже будет в регистре сведений))) НУ а как же иначе, параметры в RLS не передать)     
         | 
|||
| 
    24
    
        DrShad    
     04.02.13 
            ✎
    18:12 
 | 
         
        только на большом объеме будет долго отбирать     
         | 
|||
| 
    25
    
        Reset    
     04.02.13 
            ✎
    18:13 
 | 
         
        (21) в (19) вариант для того случая, если на вопрос из (12) ответить "все записи из справочника", а ты вроде по другому хотел     
         | 
|||
| 
    26
    
        Reset    
     04.02.13 
            ✎
    18:14 
 | 
         
        (23) Параметры сеанса можно использовать как "параметры"     
         | 
|||
| 
    27
    
        AlStorm    
     04.02.13 
            ✎
    18:15 
 | 
         
        (24)
  
        У меня, когда я открываю шаблон ограничения RLS в УТ11, конфигуратор на минуты две виснет... Я думаю, что там тоже не все радужно) Но работает как-то..  | 
|||
| 
    28
    
        AlStorm    
     04.02.13 
            ✎
    18:15 
 | 
         
        (26)
  
        Да, точно, забыл  | 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |