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

не работает условие во вложеном запросе

не работает условие во вложеном запросе
Я
   Папай
 
15.01.22 - 13:46
всем добрый день.не срабатывает условие выделенное слешами.в чем подвох?
    |ГДЕ
    |    И ЗаказПокупателя.Проведен
    |    И НЕ ЗаказПокупателя.ПометкаУдаления
    |    И ЗаказПокупателя.Дата МЕЖДУ &ДатаС И &ДатаПо
    |    И (НЕ ЗаказПокупателя.Ссылка В
    |                (ВЫБРАТЬ                                              
    |                    МаршрутныйЛист.ДокументОснование
    |                ИЗ
    |                    Документ.МаршрутныйЛистКАК МаршрутныйЛист
    |                ГДЕ
    |                    НЕ МаршрутныйЛист.ПометкаУдаления)
///////////////////////////////////////
    |    ИЛИ НЕ ЗаказПокупателя.Ссылка В
    |                (ВЫБРАТЬ                    
    |                    ЛистСклада.ЗаказПокупателя
    |                ИЗ
    |                    Документ.ЛистСклада.Данные КАК ЛистСклада
    |                ГДЕ
    |                    НЕ ЗаказПокупателя.ПометкаУдаления))
////////////////////////////////////////////////
   Жан Пердежон
 
1 - 15.01.22 - 13:47
подвоха нет, это ты просто хочешь, чтобы оно как-то по-другому работало
   Жан Пердежон
 
2 - 15.01.22 - 13:48
судя по всему с логикой проблемы
   Папай
 
3 - 15.01.22 - 13:49
Срабатывает только поиск в маршрутном. Складской лист не ищет
   Папай
 
4 - 15.01.22 - 13:50
Логика условия правильная?
   PuhUfa
 
5 - 15.01.22 - 14:00
(0) ты уверен что у тебя условия ГДЕ правильно прописаны во вложенных запросах?
   Kassern
 
6 - 15.01.22 - 14:01
(0) а как у вас в (0) условие с И начинается?
   bolder
 
7 - 15.01.22 - 14:02
(0)  НЕ  ЛистСклада.ЗаказПокупателя.ПометкаУдаления))
   Kassern
 
8 - 15.01.22 - 14:03
(0) попробуйте ваше В (ВЫБРАТЬ...) Переписать через временные таблицы, тогда и код будет читаться лучше и выполняться скорее всего быстрее
   Жан Пердежон
 
9 - 15.01.22 - 14:03
Вагную тебе надо убрать скобки перед не и заменить ИЛИ на И
но по большому счету - хз что ты этого запроса хочешь
   Kassern
 
10 - 15.01.22 - 14:03
и условие будет проще написать правильное
   Папай
 
11 - 15.01.22 - 14:04
Комбинация с И тоже не срабатывает. Даже если первую часть убрать условия с маршрутным листом
   Папай
 
12 - 15.01.22 - 14:05
(8) мне нужна не скорость и читаемость в данном вопросе. Если он будет на пол секунды выполнятся быстрее никому от этого плохо не станет
   Папай
 
13 - 15.01.22 - 14:06
Точнее медленнее
   Kassern
 
14 - 15.01.22 - 14:06
(12) как раз читаемость будет лучше через временные таблицы, через консоль вы всегда сможете посмотреть чем они заполняются и как они соединяются.
   Kassern
 
15 - 15.01.22 - 14:07
и вы явно укажите соединения этих таблиц с главной
   bolder
 
16 - 15.01.22 - 14:07
(7) Или перепиши с созданием синонома

ВЫБРАТЬ                    
    |                    ЛистСклада.ЗаказПокупателя Как ЗаказПокупателяЛист
   ИЗ
    |                    Документ.ЛистСклада.Данные КАК ЛистСклада
    |                ГДЕ
    |                    НЕ ЗаказПокупателяЛист.ПометкаУдаления))
   Папай
 
17 - 15.01.22 - 14:11
(9) даже так не пашет
 |ГДЕ
    |    И ЗаказПокупателя.Проведен
    |    И НЕ ЗаказПокупателя.ПометкаУдаления
    |    И ЗаказПокупателя.Дата МЕЖДУ &ДатаС И &ДатаПо
    |    И (НЕ ЗаказПокупателя.Ссылка В
    |                                                    
///////////////////////////////////////

    |  
    |                (ВЫБРАТЬ                    
    |                    ЛистСклада.ЗаказПокупателя
    |                ИЗ
    |                    Документ.ЛистСклада.Данные КАК ЛистСклада
    |                ГДЕ
    |                    НЕ ЗаказПокупателя.ПометкаУдаления))
////////////////////////////////////////////////
   Папай
 
18 - 15.01.22 - 14:13
Скобки не причем.. Забыл убрать
   Папай
 
19 - 15.01.22 - 14:18
Проверил через консоль не срабатывает проверка прметки удаления. Все заказы попадают в консоли
   PuhUfa
 
20 - 15.01.22 - 14:20
(17) ты не читаешь что тебе пишут или просто угараешь?
Найди 8 отличий между твоим
НЕ ЗаказПокупателя.ПометкаУдаления
и
НЕ ЛистСклада.ЗаказПокупателя.ПометкаУдаления
   Папай
 
21 - 15.01.22 - 14:21
(20) так тоже не срабатывает. Работает только пометка=ложь
   Ёпрст
 
22 - 15.01.22 - 14:30
|ГДЕ
    |    ЗаказПокупателя.Проведен
    |    И ЗаказПокупателя.Дата МЕЖДУ &ДатаС И &ДатаПо
    |    И НЕ ЗаказПокупателя.Ссылка В
    |                (ВЫБРАТЬ                    
    |                    ЛистСклада.ЗаказПокупателя
    |                ИЗ
    |                    Документ.ЛистСклада.Данные КАК ЛистСклада
    |                ГДЕ
    |                    НЕ ЛистСклада.ПометкаУдаления)
   Папай
 
23 - 15.01.22 - 14:37
Госпада. На самом деле все тревиально и должно быть простым.
Листсклада.Ссылка.ПометкаУдаления)ибо это тч а не реквизиты т шапки. Всем спасибо. Разобрался
   Папай
 
24 - 15.01.22 - 14:38
(14) ваши предложения полный треш.
   Kassern
 
25 - 15.01.22 - 14:48
(24) Вы хоть раз в типовых видели подобную конструкцию, которую вы впихнуть пытаетесь через ИЛИ В (Выбрать...)? Ну раз считаете, что "треш", ваше право, любитесь сами с подобными конструкциями. А вам всего-то 3 таблицы соединить надо...
   pechkin
 
26 - 15.01.22 - 14:58
(24) тут во вложенных всего 1 селект. От переписывания проще ну никак не станет
   pechkin
 
27 - 15.01.22 - 15:00
А вот ( не или не ) лучше заменить на не ( и )
   Курцвейл
 
28 - 15.01.22 - 15:10
Очередная веселая тяжелочитаемая жесть. Особенно с наверняка составным типом ДокументОснование.
Вложенные запросы зло. Надо переписать на соединение с временной таблицей, где Ссылка типизирована.
   Kassern
 
29 - 15.01.22 - 15:11
(28) вы не понимаете, по мнению ТС, это "полный треш" решение...Я уже молчу, что обращение идет не к регистрам и напрямую к документам
   Жан Пердежон
 
30 - 15.01.22 - 15:37
имхо, тс неадекват
 
 


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