Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.25;
Скачать: 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 вся ветка

Текущий архив: 2004.04.25;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.053 c
1-1081142205
Comp
2004-04-05 09:16
2004.04.25
Произвольная форма окна


1-1081590998
CCh
2004-04-10 13:56
2004.04.25
Dll в системе


7-1077927199
BBCHa
2004-02-28 03:13
2004.04.25
Словить Ctrl+Enter


3-1080736757
прогерШ
2004-03-31 16:39
2004.04.25
Как отменить при мультиселекте все выделения?


1-1081410375
КомофОнСамый
2004-04-08 11:46
2004.04.25
TListBox и Duplicate