Страница 1 из 1

Фильтрация по дате-времени

Добавлено: 12 мар 2012, 12:22
grinka
Проблема следующая: пытаюсь показать репорт, в котором используются параметры типа DateTime - по ним должна проводиться фильтрация. Однако, репорт, похоже, игнорирует значение времени, используя только дату. Судя по профайлеру, это делается вполне осознанно:

Код: Выделить всё

WHERE (CONVERT(DATETIME, CONVERT(NCHAR(2), DATEPART(Month, [t4].[start_time])) + ('/' + (CONVERT(NCHAR(2), DATEPART(Day, [t4].[start_time])) + ('/' + CONVERT(NCHAR(4), DATEPART(Year, [t4].[start_time]))))), 101) >= @p6) AND (CONVERT(DATETIME, CONVERT(NCHAR(2), DATEPART(Month, [t4].[end_time])) + ('/' + (CONVERT(NCHAR(2), DATEPART(Day, [t4].[end_time])) + ('/' + CONVERT(NCHAR(4), DATEPART(Year, [t4].[end_time]))))), 101) <= @p7) AND ([t4].[deactivate_date] IS NULL)
Меж тем для параметра явно указан тип данных DateTime, и в запрос передаются @p6 и @p7 как DateTime.
Пожалуйста, поясните, с чем это может быть связано?

PS: возможно, тема созвучна с топиком, обсуждённым ранее.

Фильтрация по дате-времени

Добавлено: 13 мар 2012, 07:03
Aleksey
Здравствуйте,

Не смогли воспроизвести проблему.
Пожалуйста, уточните как вы передаете значения для данных параметров.

Спасибо.

Фильтрация по дате-времени

Добавлено: 13 мар 2012, 07:39
grinka
Сейчас попробую вычленить.
Но я правильно понимаю, что движок репортов должен работать с датой-временем и подобных "глюков" больше не наблюдается?
А то сгенерированный SQL запрос уж больно специфичный.

Фильтрация по дате-времени

Добавлено: 13 мар 2012, 10:16
grinka
Похоже, проблема была на нашей стороне - сами такой неправильный запрос генерировали.
Так что вопрос снимается, спасибо за внимание :)

Фильтрация по дате-времени

Добавлено: 14 мар 2012, 03:42
Andrew
Здравствуйте,

Вопрос снят ))). Будем рады помочь.

Спасибо.