somar Horas
Tenho na minha tabela um campo do tipo datetime, agora preciso que no meu relatório saia o valor acumulado de horas deste campo, já fiz somando e acumulando em uma váriável, mas quando chega a 24 horas ele zera o total e incrementa um dia na data, quero que saia como estiver, exemplo:
se ns soma for 01/01/04 12:35:24 quero que fique assim 31/12/03 36:35:24 ou melhor seria se saisse sem a data, mas na formatação do campo que ajeito isto.
Por favor é urgente, e desde já agradeço a atenção.
André Luis - Leitbom
Desenvolvedor
se ns soma for 01/01/04 12:35:24 quero que fique assim 31/12/03 36:35:24 ou melhor seria se saisse sem a data, mas na formatação do campo que ajeito isto.
Por favor é urgente, e desde já agradeço a atenção.
André Luis - Leitbom
Desenvolvedor
Andre Silveira
Curtidas 0
Respostas
Thomaz_prg
18/11/2004
Colega, tenta fazer o seguinte:
É transformado tudo em segundos e depois é retornado para o formato hh:mm:ss
var i,h,m,s:integer; t:string; table.first; i:=0; while not table.eof do begin h:=StrToInt( FormatDateTime( ´hh´ , hora ) ) * 3600; m:=StrToInt( FormatDateTime( ´mm´ , hora ) ) * 60 ; s:=StrToInt( FormatDateTime( ´ss´ , hora ) ); i:=i+h+m+s; table.next; end; h:=i div 3600; i:=i mod 3600; m:=i div 60; s:=i mod 60; t:=IntToStr(h)+´:´+IntToStr(m)+´:´+IntToStr(s) showmessage(´ Total: ´+t );
É transformado tudo em segundos e depois é retornado para o formato hh:mm:ss
GOSTEI 0