Página 1 de 1

soma de horas

Enviado: 04 Mai 2005 09:21
por claudiocjr
Ola Pessoal.

Tenho que fazer um sistema onde a somas de horas

Tenho uma funcao onde converte todas as horas
em minutos soma estes minutos e depois converte em horas

O problema ocorre quando passa de um dia para outro

exemplo : informo data 04/05/2005 horas 23:50
data 05/05/2005 horas 00:05

Como poderia executar a soma destas horas?


Grato


Claudio

Enviado: 04 Mai 2005 09:39
por Marquin
Ola Claudio,

Eu tb trabalho com horas e faço da seguinte forma:

Calculo o primeiro dia até 24:00 e soma com o restante do outro dia

ate mais

Marquin

Enviado: 04 Mai 2005 13:59
por Toledo
Claudio,

Seguindo o raciocínio do nosso amigo Marquin, veja abaixo o que você pode fazer:

Código: Selecionar todos

vHsIni:="23:50"
vHsFin:="00:05"
vHoras:=CAL_HS(vHsIni,vHsFin)

**************
FUNC CAL_HS(hs1,hs2)
sega=SECS(hs1) //transforma hora entrada em segundos
segb=SECS(hs2) //transforma hora saida em segundos
IF sega>segb
 nSegs=((86400 - sega)+segb)
ELSE
 nSegs=(segb - sega)
ENDIF
v_cal=INT(nSegs/3600)   //calcula as horas
v_minut=(nSegs - (v_cal * 3600))  //separa minutos
v_hs=str(v_cal,2)+SUBS(TSTRING(v_minut),3,3) 
RETU (v_hs)
Abraços,