Fórum Descubri o tempo de duas horas?????????????? #173551

07/08/2003

0

Pessoal, estou com problemas é que tenho que pegar a diferente entre duas datas. Ex: 05/08/2003 13:28:23 (DAT_SOLICITACAO) e
05/08/2003 13:43:39 (DAT_FECHAMENTO). Usando o código abaixo está me retornando um valor maior que deveria. Alguém poderia me ajudar?
ps: Estou usando Oracle 8i

TempoTotalOS := Qy_RelAcessTempo.FieldByName(´DAT_FECHAMENTO´).AsDateTime - Qy_RelAcessTempo.FieldByName(´DAT_SOLICITACAO´).AsCurrency;

QRLOSTempoTotal.Caption := FormatFloat(´#,0.00 hs´, (TempoTotalOS * 24));


Guedes.


Guedes.rj

Guedes.rj

Responder

Posts

07/08/2003

4_olho

TempoTotalOS := Qy_RelAcessTempo.FieldByName(´DAT_FECHAMENTO´).[color=red:3199500885]AsDateTime[/color:3199500885] - Qy_RelAcessTempo.FieldByName(´DAT_SOLICITACAO´).[color=red:3199500885]AsCurrency[/color:3199500885];

Procure utilizar o mesmo tipo para ambos. DateTime com Currency ? Não dá!


Responder

Gostei + 0

07/08/2003

Guedes.rj

Já tentei, mais não funcionou!


Responder

Gostei + 0

07/08/2003

Aroldo Zanela

Colega,

TempoTotalOS := Trunc(Qy_RelAcessTempo.FieldByName(´DAT_FECHAMENTO´).AsDate) - Trunc(Qy_RelAcessTempo.FieldByName(´DAT_SOLICITACAO´).AsDate)+1; 


Oops! Aguenta ai que eu fiz para data, Estou corrigindo.... para horas.


Responder

Gostei + 0

07/08/2003

Aroldo Zanela

Colega,

Mais fácil com:

Unit

DateUtils

Category

date/time routines

function HoursBetween(const ANow, AThen: TDateTime): Int64;

Description

Call HoursBetween to obtain the difference, in hours, between two TDateTime values. HoursBetween counts only entire hours. Thus, HoursBetween reports the difference between 9:00 AM and 9:59:59 AM as 0 because the difference is one second short of an entire hour.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar