FoxPro/Visual FoxPro - Calcular tiempo

   
Vista:

Calcular tiempo

Publicado por noe velazquez (71 intervenciones) el 19/05/2008 21:41:30
Hola Foro !!

espero me puedan ayudar con este pequeño problema y es el siguiente.

como puedo calcular las horas y los minutos tengo dos campos un lo llame ENTRADA y el otro SALIDA los dos son C ( 5 ) Ejemp. entrada ( 09:30 ) y el de salida es ( 13:40 ) que serian 4 horas con 10 minutos.
y otra pregunta seria mejor cambiar el tipo de campo a Date Time ? de antemano les agradesco su ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Calcular tiempo

Publicado por Gabriel Sánchez (112 intervenciones) el 19/05/2008 23:15:59
Hola espero esta función te sirva....

*--------------------
FUNCTION TIEMPO_TRANSCURRIDO(HE,HS)

HEM=HOUR(CTOT(HE))*60 + MINUTE(CTOT(HE))
HSM=HOUR(CTOT(HS))*60 +MINUTE(CTOT(HS))
HTM=HSM-HEM
HT=ALLTRIM(STR(INT(HTM/60)))+':'+ALLTRIM(STR(MOD(HTM,60)))
RETURN HT

ENDFUNC
*----------------------------------------------

Ejem: tiempo_transcurrido('09:30', '14:40') retornará 05:10 Cinco horas con 10 minutos.

Suerte.

Gabriel.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Calcular tiempo

Publicado por noe velazquez (71 intervenciones) el 20/05/2008 01:21:08
Hola Gabriel ! !

disculpa mi falta de conocimiento pero en que parte pongo los valores ?

y si los valores los tengo en unas tabla ?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Calcular tiempo

Publicado por jose camilo (688 intervenciones) el 20/05/2008 04:28:08
FUNCTION TIEMPO_TRANSCURRIDO(HE,HS)

HEM=HOUR(CTOT(HE))*60 + MINUTE(CTOT(HE))
HSM=HOUR(CTOT(HS))*60 +MINUTE(CTOT(HS))
HTM=HSM-HEM
HT=ALLTRIM(STR(INT(HTM/60)))+':'+ALLTRIM(STR(MOD(HTM,60)))
RETURN HT

ENDFUNC

explicando la funcion

HE = Hora de Entrada
HA = Hora de Salida

HEM = Hora de entrada minuto
HSM = Hora de Salida minuto

HTM = Hora total en minutos
HT = Hora real

si los valores esta en una tabla Nomina con los campos
HoraEntrada
HoraSalida
HorasTrabajada
Podrias hacer algo como
Raplace all HorasTrabajada With TIEMPO_TRANSCURRIDO(Horaentada,HoraSalida)

lo mismo podria ser en un despliego
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar