Вниз
Скачать: CL | DM;

Дата и время   Найти похожие ветки 

 
Марат   (2004-04-08 13:42) [0]

Здаравствуйте, мастера. Ворпос встал такой: необходимо сравнить две даты Д1 и Д2 (на >,< или=). Д1 может быть формата dd.mm.yy или dd.mm.yy hh.mm.ss, а Д2 это текущая дата. Когда я запускаю программу пошагово, то я вижу, что дата отображается в виде числа. А можно ли это число как-нибудь присвоить какой-нибудь переменной. Ну типа: К:=...(Д1)?


 
Тимохов ©   (2004-04-08 13:46) [1]


> Д1 может быть формата dd.mm.yy или

Дата не может быть никакого формата. Тип TDatetime - это фактически double. Целая часть дни, дробная минуты, часы. Это см. в хелпе tdatetime+f1.

на ваш вопрос я не ответил, но наверое прояснил для вас ситуацию, чтобы задать вопрос в более понятной форме.


 
Denis ©   (2004-04-08 13:48) [2]

Можно.
Используй, например, real.


 
Vlad Oshin ©   (2004-04-08 13:49) [3]

type  TDateTime = type Double;


 
Denis ©   (2004-04-08 13:54) [4]

Угум. Корректнее - Double.


 
Марат   (2004-04-08 14:21) [5]

Попробую объяснить обширнее. До этого момента, в таблицу записывался контрольный срок без времени (т.е. использовалась функция Date). Теперь возникла необходимость записывать дату со временем (т.е. Now). На одной из форм проекта в DBGrid была такая проверка:
if TDBGrid(Sender).DataSource.DataSet.FieldByName("Dt_Cntr").AsDateTime< Date then
begin
TDBGrid(Sender).Canvas.Brush.Color:=$006CFF;
end;
т.е. строка в DBGrid закрашивается определенным цветом, в зависимости от сравнения контрольного срока с текущей датой (в данном примере красным).
Теперь в поле "Dt_Cntr" таблицы я записал первое значение со временем и возникла проблема: условие не работает.


 
Семен Сорокин ©   (2004-04-08 14:23) [6]

if Int(TDBGrid(Sender).DataSource.DataSet.FieldByName("Dt_Cntr").AsDateTime) < Date then


 
Denis ©   (2004-04-08 14:30) [7]

А какой смысл сравнивать дату+время с просто датой?
Тогда уже так:

if TDBGrid(Sender).DataSource.DataSet.FieldByName("Dt_Cntr").AsDateTime< Now then



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.022 c
6-1074854474
Виталий
2004-01-23 13:41
2004.04.25
SendCmd, TidPOP3


9-1067830770
Сандро
2003-11-03 06:39
2004.04.25
LINES


3-1080716517
-SeM-
2004-03-31 11:01
2004.04.25
Бинарная логика в Firebird


3-1080547756
Earlynn
2004-03-29 12:09
2004.04.25
Таблицы Paradox тормозят в ADO. Что не так?


7-1077776661
Andy
2004-02-26 09:24
2004.04.25
Работа со службами в Win2000/XP




   Наверх