Показать сообщение отдельно
Старый 27.01.2010, 15:24   #2  
DSPIC is offline
DSPIC
Боец
 
1,077 / 1243 (44) ++++++++
Регистрация: 11.04.2008
Цитата:
Сообщение от Zabr Посмотреть сообщение
Ax4.0 SP2. Смотрю в активных сессиях SysClientSessions даты логина. Вижу, что сегодняшние. В коде делаю выборку по единственному условию SysClientSessions.Login_date == systemdateget() - и не находится ничего. Как такое может быть ?
На уровне SQL, поля типа Date имеют тип DateTime на уровне SQL, а следовательно, вместе с датой, содержат время; но в нормальных условиях время всегда нулевое, axapta сохраняет только составляющую даты. А вот касательно таблицы SysClientSessions, то в ней в поле SysClientSessions.Login_date записывается ещё и время, которое не соответствует текущему systemdateget().

Используйте в условии интервал:

[Вчерашняя дата] > Login_date > [Завтрашняя дата]

P.S. Кстати, в 2009й появился новый тип данных DateTime, который наравне с датой, фиксирует ещё и время.

Последний раз редактировалось DSPIC; 27.01.2010 в 15:29.
За это сообщение автора поблагодарили: Zabr (1).