Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Запрос к рг сведений

Запрос к рг сведений
Я
   lite777
 
28.12.18 - 14:03
Здравствуйте ,Товарищи программисты
Запрос.Текст=
         "ВЫБРАТЬ
         |    КонтрВып.Ном КАК Ном,
         |    КонтрВып.Место КАК Место,
         |    КонтрВып.Зн КАК Зн
         |ИЗ
         |    РегистрСведений.КонтрВып  КАК КонтрВып
         |ГДЕ
    //     |    КонтрВып.Ном = &Ном И
         | ( КонтрВып.Место = &Место ИЛИ КонтрВып.Место = &Место2 ) И КонтрВып.Зн=ИСТИНА
         |    И  КонтрВып.Зн<>ЛОЖЬ
         |   И КонтрВып.Период<=&д2
         | И  (  КонтрВып.Ном В ИЕРАРХИИ(&гр1)   ИЛИ КонтрВып.Ном В ИЕРАРХИИ(&гр2) ИЛИ
         |  КонтрВып.Ном В ИЕРАРХИИ(&гр3)   )  "    ;
 
 
   Dmitry1c
 
1 - 28.12.18 - 14:04
   lxs
 
2 - 28.12.18 - 14:04
Кровь из глаз....
   Гипервизор
 
3 - 28.12.18 - 14:06
Еще "Место КАК Мст" - и будет полный фарш.
   lite777
 
4 - 28.12.18 - 14:06
Есть рг сведений подчинен регистртору переодический, есть товар со значением  в РГ первойд датой ЗН =ИСТИНА второй датой Зн=Ложь но почему то он попадает в этот запрос хотя у меня КонтрВып.Зн<>ЛОЖЬ в чем тут проблема ?
   Гипервизор
 
5 - 28.12.18 - 14:07
(4) Я вас правильно понял, дата - Булево?
   lite777
 
6 - 28.12.18 - 14:08
ЗН-БУЛЕВО
   lite777
 
7 - 28.12.18 - 14:08
но ЗН=ЛОЖЬ почемуто попадет в запрос
   Buster007
 
8 - 28.12.18 - 14:09
назови нормально свои измерения, регистр и т.д.
потом станет гораздо проще
   Buster007
 
9 - 28.12.18 - 14:09
хотя бы синонимы нормальные дай в запросе
   Гипервизор
 
10 - 28.12.18 - 14:10
(9) Вы что, так программа меньше места занимает.
 
 Рекламное место пустует
   lite777
 
11 - 28.12.18 - 14:11
ресурс ЗН-БУЛЕВО, ном и место -измерения
   lxs
 
12 - 28.12.18 - 14:11
(8) Это называется ректальное программирование. Не мешай человеку самоутверждаться.
   youalex
 
13 - 28.12.18 - 14:12
(4) пр в нзв мт и п зп
   lxs
 
14 - 28.12.18 - 14:14
(0) Тебе надо почитать про основы построения запросов. В твоем случае поможет конструкция ВЫБОР КОГДА ТОГДА ИНАЧЕ КОНЕЦ
   lite777
 
15 - 28.12.18 - 14:15
можно по подробнее ,
   lite777
 
16 - 28.12.18 - 14:16
КонтрВып.Ном КАК Ном, это 1С КОНСТРУКТОР  так что вопросы к 1С
   IOANNscrp
 
17 - 28.12.18 - 14:20
(16) ну, если называть метаданные так, то конечно :D
   lxs
 
18 - 28.12.18 - 14:26
(16) Если честно, у меня нет никакого желания разбирать тот говнокод, который у тебя в запросе, потому что глаза ломаются. Так чисто визуально я уверен, что ВЫБОР в условии тебе поможет.
   IOANNscrp
 
19 - 28.12.18 - 14:27
| (КонтрВып.Место В (&СписокМест) 
| И КонтрВып.Зн=ИСТИНА 
| И КонтрВып.Период<=&д2
| И КонтрВып.Ном В ИЕРАРХИИ(&СписокГрупп)";
   13_Mult
 
20 - 28.12.18 - 14:29
   VladZ
 
21 - 28.12.18 - 14:37
(0)   И КонтрВып.Зн=ИСТИНА И  КонтрВып.Зн<>ЛОЖЬ - это для надежности?

Зачем сократил название реквизитов? Чего хотел добиться?
   lite777
 
22 - 28.12.18 - 14:47
просто есть две записи в регистре товар введен ЗН =истана и след датой  тото же товар выведен из ассаротимента ЗН=ЛОЖЬ , этот товар не должне попасть в запрос
   IOANNscrp
 
23 - 28.12.18 - 14:48
Он и не попадёт, если зн только истина в условии
   lite777
 
24 - 28.12.18 - 14:48
проведение документа делает движение по номенклатуре со значением ЗН=ИСТИНА ИЛИ ЗН =ЛОЖЬ
   lite777
 
25 - 28.12.18 - 14:49
ЗН-ИСТИНА попадает нормально как раз
   lite777
 
26 - 28.12.18 - 14:50
а вот когда две записи с разной дато зн= истина и зн=ложь попадает тоже
   IOANNscrp
 
27 - 28.12.18 - 14:58
В консоль отчётов и тренироваться. Параметры добавлять поочередно проверяя результат
   lite777
 
28 - 28.12.18 - 15:06
уже проверяю
   Deon
 
29 - 28.12.18 - 15:16
Ну вот что тут непонятного-то?

просто есть две записи в регистре товар введен ЗН =истана и след датой  тото же товар выведен из ассаротимента ЗН=ЛОЖЬ , этот товар не должне попасть в запрос проведение документа делает движение по номенклатуре со значением ЗН=ИСТИНА ИЛИ ЗН =ЛОЖЬ ЗН-ИСТИНА попадает нормально как раз а вот когда две записи с разной дато зн= истина и зн=ложь попадает тоже
   lite777
 
30 - 28.12.18 - 15:22
и что ?
   IOANNscrp
 
31 - 28.12.18 - 15:22
(30) и то, что задача по другому теперь звучит
   IOANNscrp
 
32 - 28.12.18 - 15:23
(31) Вам необходимо выборкой брать максимальную дату, как срез последних
   lite777
 
33 - 28.12.18 - 15:24
запрос с условием ЗН=ЛОЖЬ работает , нужно сддеаль вложенный запрос  где зн=истина и второй где зн=ложь ,
потом убрать товары из первого запроса которые есть во втором
 
 
   IOANNscrp
 
34 - 28.12.18 - 15:25
(33) у вас же все от периода зависит, что последнее, то и верное
   lite777
 
35 - 28.12.18 - 15:27
как эти два запроса собрать
 ВЫБРАТЬ 
             КонтрВып.Ном ,
             КонтрВып.Место ,
             КонтрВып.Зн 
         ИЗ
             РегистрСведений.КонтрВып  КАК КонтрВып
         ГДЕ
    
          ( КонтрВып.Место = &Место ИЛИ КонтрВып.Место = &Место2 ) 
             И  КонтрВып.Зн=ИСТИНА    
            И КонтрВып.Период<=&д2
          И  (  КонтрВып.Ном В ИЕРАРХИИ(&гр1)   ИЛИ КонтрВып.Ном В ИЕРАРХИИ(&гр2) ИЛИ
           КонтрВып.Ном В ИЕРАРХИИ(&гр3)   )  



и  ВЫБРАТЬ 
             КонтрВып.Ном ,
             КонтрВып.Место ,
             КонтрВып.Зн 
         ИЗ
             РегистрСведений.КонтрВып  КАК КонтрВып
         ГДЕ
    
          ( КонтрВып.Место = &Место ИЛИ КонтрВып.Место = &Место2 ) 
             И  КонтрВып.Зн=ЛОЖЬ    
            И КонтрВып.Период<=&д2
          И  (  КонтрВып.Ном В ИЕРАРХИИ(&гр1)   ИЛИ КонтрВып.Ном В ИЕРАРХИИ(&гр2) ИЛИ
           КонтрВып.Ном В ИЕРАРХИИ(&гр3)   )
   IOANNscrp
 
36 - 28.12.18 - 15:29
регистр периодический?
   lite777
 
37 - 28.12.18 - 15:30
да
   IOANNscrp
 
38 - 28.12.18 - 15:32
Во вложенном запросе берете срезПоследних, затем как сделаете выборку в основном вставляете отбор по ЗН
   lite777
 
39 - 28.12.18 - 15:36
подчинен регистратору
   lite777
 
40 - 28.12.18 - 15:36
а может это быть косяк платформы 8,3,13,1513 ?
   IOANNscrp
 
41 - 28.12.18 - 15:38
А в чем косяк? то что запрос неправильный?
   lite777
 
42 - 28.12.18 - 15:43
1с полседнее время косячные плаформы гонит, например 8,3,11,2867 не дает зайти в конфигуратор  ,если база в ржиме сервера , пока все не выйдут из базы
   IOANNscrp
 
43 - 28.12.18 - 15:47
ВЫБРАТЬ
    ВложенныйЗапрос.УровеньСклада,
    ВложенныйЗапрос.КлассXY,
    ВложенныйЗапрос.ОстатокС
ИЗ
    (ВЫБРАТЬ
        КонтрВыпСрезПоследних.Ном КАК Ном,
        КонтрВыпСрезПоследних.Место КАК Место,
        КонтрВыпСрезПоследних.Зн КАК Зн
    ИЗ
        РегистрСведений.КонтрВып.СрезПоследних КАК КонтрВыпСрезПоследних) КАК ВложенныйЗапрос
ГДЕ
    ВложенныйЗапрос.Зн = ИСТИНА
   IOANNscrp
 
44 - 28.12.18 - 15:48
ВложенныйЗапрос.Ном,
ВложенныйЗапрос.Место,
ВложенныйЗапрос.Зн
   lite777
 
45 - 28.12.18 - 16:02
ВЫБРАТЬ 
             КонтрВып.Ном ,
             КонтрВып.Место ,
             КонтрВып.Зн 
         ИЗ
             РегистрСведений.КонтрВып.СрезПоследних(&д2)  КАК КонтрВып
         ГДЕ
          ( КонтрВып.Место = &Место ИЛИ КонтрВып.Место = &Место2 ) 
             И  КонтрВып.Зн<>ЛОЖЬ  И КонтрВып.Зн=ИСТИНА  
          И  (  КонтрВып.Ном В ИЕРАРХИИ(&гр1)   ИЛИ КонтрВып.Ном В ИЕРАРХИИ(&гр2) ИЛИ
           КонтрВып.Ном В ИЕРАРХИИ(&гр3)   )
   lite777
 
46 - 28.12.18 - 16:03
вот так вроде работате!
   lite777
 
47 - 28.12.18 - 16:03
работает
   IOANNscrp
 
48 - 28.12.18 - 16:03
(46) поживем увидим)
   lxs
 
49 - 28.12.18 - 16:55
"И  КонтрВып.Зн<>ЛОЖЬ  И КонтрВып.Зн=ИСТИНА" - это просто пздц какой-то предновогодний.... впервые вижу такой бред
 
 Рекламное место пустует
   Михаил Козлов
 
50 - 28.12.18 - 16:57
(49) Может у чела не бинарная логика? Например NULL.
   lxs
 
51 - 28.12.18 - 17:01
(47) точно у ЗН булево? Флаг Составной не стоит случайно?..
   IOANNscrp
 
52 - 28.12.18 - 17:03
да, даже если составной :D
   lxs
 
53 - 28.12.18 - 17:05
Хотелось бы мне глянуть конечно на этот регистр вживую...
   GANR
 
54 - 28.12.18 - 17:09
// Вариант исходный.    

    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    |    КонтрВып.Ном КАК Ном,
    |    КонтрВып.Место КАК Место,
    |    КонтрВып.Зн КАК Зн
    |ИЗ
    |    РегистрСведений.КонтрВып КАК КонтрВып
    |ГДЕ
    |    (КонтрВып.Место = &Место
    |            ИЛИ КонтрВып.Место = &Место2)
    |    И КонтрВып.Зн = ИСТИНА
    |    И КонтрВып.Зн <> ЛОЖЬ
    |    И КонтрВып.Период <= &д2
    |    И (КонтрВып.Ном В ИЕРАРХИИ (&гр1)
    |            ИЛИ КонтрВып.Ном В ИЕРАРХИИ (&гр2)
    |            ИЛИ КонтрВып.Ном В ИЕРАРХИИ (&гр3))";
    
    // Вариант измененный.

    Запрос.Текст =
    "ВЫБРАТЬ
    |    КонтрВып.Ном КАК Ном,
    |    КонтрВып.Место КАК Место,
    |    КонтрВып.Зн КАК Зн
    |ИЗ
    |    РегистрСведений.КонтрВып КАК КонтрВып
    |ГДЕ
    |    КонтрВып.Место В (&Место12)
    |    И КонтрВып.Зн
    |    И КонтрВып.Период <= &д2
    |    И КонтрВып.Ном В ИЕРАРХИИ (&гр123)";
   GANR
 
55 - 28.12.18 - 17:10
(0) А какой мудак это писал?
   H A D G E H O G s
 
56 - 28.12.18 - 17:13
Запрос - смешной, а ситуация - страшная.
   lxs
 
57 - 28.12.18 - 17:13
(54) Ему этот вариант уже выше предложили)))
(55) ТС и есть этот М..
   GANR
 
58 - 28.12.18 - 17:16
(57) Точно, в (19)


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