Имя: Пароль:
1C
1С v8
Период времени в запросе
Ø (piter3 15.02.2021 13:44)
,
0 Фоксик
 
15.02.21
13:03
Всем привет! Кто подскажет - в запросе нужно организовать выборку данных по периоду с 18:00 вчерашнего дня по 18:00 сегодняшнего. Вот что получилось

ВЫБРАТЬ
    саСобытияДоставки.Событие,
    саСобытияДоставки.ДатаСоздания КАК ДатаСоздания1,
    ВЫБОР
        КОГДА саСобытияДоставки.ДатаСоздания <= ДОБАВИТЬКДАТЕ(НАЧАЛОПЕРИОДА(саСобытияДоставки.ДатаСоздания, ДЕНЬ), ЧАС, 18)
            ТОГДА НАЧАЛОПЕРИОДА(саСобытияДоставки.ДатаСоздания, ДЕНЬ)
        ИНАЧЕ ДОБАВИТЬКДАТЕ(НАЧАЛОПЕРИОДА(саСобытияДоставки.ДатаСоздания, ДЕНЬ), ДЕНЬ, 1)
    КОНЕЦ КАК ДатаСоздания
ИЗ
    РегистрСведений.саСобытияДоставки КАК саСобытияДоставки
ГДЕ
    саСобытияДоставки.Событие = &Событие
1 Kassern
 
15.02.21
13:05
(0) А где отбор по периоду?
2 Фоксик
 
15.02.21
13:06
(1) ВЫБОР
        КОГДА саСобытияДоставки.ДатаСоздания <= ДОБАВИТЬКДАТЕ(НАЧАЛОПЕРИОДА(саСобытияДоставки.ДатаСоздания, ДЕНЬ), ЧАС, 18)
            ТОГДА НАЧАЛОПЕРИОДА(саСобытияДоставки.ДатаСоздания, ДЕНЬ)
        ИНАЧЕ ДОБАВИТЬКДАТЕ(НАЧАЛОПЕРИОДА(саСобытияДоставки.ДатаСоздания, ДЕНЬ), ДЕНЬ, 1)
    КОНЕЦ КАК ДатаСоздания
3 piter3
 
15.02.21
13:07
4 Kassern
 
15.02.21
13:08
(2) Это всего лишь поле с условием, в вашем варианте запрос выдаст все события за все время, а в данном поле будет либо начало дня даты события, либо начало следующего дня даты события...
5 ДенисЧ
 
15.02.21
13:09
(2) Если это отбор, то я Piloto español
6 Pro-tone
 
15.02.21
13:12
(2) отбор это после ГДЕ и то что в параметрах виртуальной таблицы
7 Фоксик
 
15.02.21
13:28
(4) Эм, может тогда поможете если вас не затруднит?
8 Фоксик
 
15.02.21
13:29
(5) Руссо комьюнити не без урода. Да да
9 skafandr
 
15.02.21
13:30
(7) Вам в (3) уже помогли
10 ДенисЧ
 
15.02.21
13:31
(8) Ну, пока ты не пришёл - таких было по пальцам пересчитать...