Essa função calcula a diferença entre duas data/hora e devolve o retorno em String pois o retorno vai ser sempre em horas.
Formato do retorno: HH:mm:ss
function CalcularDiferencaDtHrToString(DataFinal, DataInicial: TDate; HoraFinal, HoraInicial: TTime): String;
var
DataHoraFinal, DataHoraInicial :TDateTime;
Total, Horas :Real;
H, M, S, SS :Word;
NumDias :Integer;
begin
DataHoraFinal := DataFinal + HoraFinal;
DataHoraInicial := DataInicial + HoraInicial;
if DataHoraInicial > DataHoraFinal then
Total := DataHoraInicial - DataHoraFinal
else
Total := DataHoraFinal - DataHoraInicial;
NumDias := Trunc(Total);
Horas := Total - Trunc(Total);
Decodetime(Horas, H, M, S, SS);
H := H + 24 * Trunc(NumDias);
Result := FormatFloat('#00',H) + ':' + FormatFloat('00',M)+':'+FormatFloat('00',S);
end;
Nenhum comentário:
Postar um comentário