Имя: Пароль:
1C
1С v8
Как сравнить в запросе две даты если одна со временем другая без?
0 Cerera
 
02.10.12
16:07
в запросе в соединении вот такое условие

       ПО ВложенныйЗапрос.ДатаПоявления = КоличестваРабочихДнейМеждуДатами.НачДата
           И ВложенныйЗапрос.ДатаИсчезновения = КоличестваРабочихДнейМеждуДатами.КонДата

Но условие не срабатывает потому что
во вложенном запросе даты с временем, хотя и с нулями вместо времени
а даты из присоединенного регистра без времени.
как привести их к одному типу.
1 DrShad
 
02.10.12
16:09
НачалоПериода(ВложенныйЗапрос.ДатаПоявления, День) = НачалоПериода(КоличестваРабочихДнейМеждуДатами.НачДата, День)
2 Kolls
 
02.10.12
16:09
НачалоПериода(ХХХХ,День) ....
3 GLazNik
 
02.10.12
16:10
НАЧАЛОПЕРИОДА, ВЫРАЗИТЬ
4 Cerera
 
02.10.12
16:30
(1)(2) не работает    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КоличестваРабочихДнейМеждуДатами КАК КоличестваРабочихДнейМеждуДатами
       ПО (НАЧАЛОПЕРИОДА(ВложенныйЗапрос.ДатаПоявления, ДЕНЬ) = НАЧАЛОПЕРИОДА(КоличестваРабочихДнейМеждуДатами.НачДата, ДЕНЬ))
           И (НАЧАЛОПЕРИОДА(ВложенныйЗапрос.ДатаИсчезновения, ДЕНЬ) = НАЧАЛОПЕРИОДА(КоличестваРабочихДнейМеждуДатами.КонДата, ДЕНЬ))
5 DrShad
 
02.10.12
16:31
врешь
6 Kolls
 
02.10.12
16:38
(4) - дожно сработать, 146%... сам юзаю периодически
7 Kolls
 
02.10.12
16:39
либо у тебя где нить там нулы есть... или пустые даты
8 DrShad
 
02.10.12
16:41
(7) и все равно сработает, а то что результат не тот что ожидался не говорит о том что не работает запрос
9 alxxsssar
 
02.10.12
16:41
НАЧАЛОПЕРИОДА(Дата,ДЕНЬ) тебе в помощь
10 DrShad
 
02.10.12
16:43
(9) да как бы еще в (1) уже было, так что баян!
11 Cerera
 
02.10.12
16:47
(8)(6)заработало. после того как я в виртуальную таблицу вложенный запрос отправил а лишь потом соединение сделал.