Hola forero
En estos casos se utiliza unas funciones de fecha y hora que tiene RPG, asumo
que los valores de fecha y hora son numéricos (fecha numérico de 8 formato iso
y Hora numérico de 6)En un programa rpg se define en la hoja D las siguientes
variables:
DNombre+++++++++ETDsDesde++A+/L+++IDc.Palabras
clave+++++++++++++++++++++++Comentarios+++++++++dWDATE s
d datfmt(*iso) dWTIME
s t
dTIMESTAMPI s zdTIMESTAMPF s zdWRESLT
s 7 0 dPTIMESTA ds
dPYEAR 4
Año dPSP1 1
inz('-') Separador dPMES
2 Mes dPSP2
1 inz('-') Separador dPDIA
2 Día
dPSP3 1 inz('-')
Separador dPHORA 2
Hora dPSP4 1 inz('.')
Separador dPMIN 2
Minutos dPSP5 1
inz('.') Separador dPSEC
2 Segundos dPSP6
1 inz('.') Separador dPMSG
6 inz('000000') Milisegundos
Asigna la fecha a la variable WDATE y la hora a la variable WTIMELuego se
asigna el valor de la variable WDATE y el valor de la variable WTIME a la
variable PTIMESTA que tiene el formato de AAAA-MM-DD-HH.MM.SS.mmmmmm, mediante
la instrucción EXTRCT se asigna a cada valor de la variable PTIMESTA de la
siguiente forma:
c extrct WDATE:*y PYEAR c extrct
WDATE:*m PMES c extrct WDATE:*d PDIA c
extrct WTIME:*h PHORA c extrct WTIME:*mn
PMIN c extrct WTIME:*s PSEC
Luego se asigna el valor de la variable PTIMESTA a la variable TIMESTAMPI para
manipular su valor como una fecha real.c eval TIMESTAMPI
= %timestamp(PTIMESTA)
Lo anterior sera para la fecha y hora inicial, luego se repite la misma
operación para la fecha y hora final de tal suerte que tendra en las variables
TIMESTAMPI y TIMESTAMPF los valores de fecha y hora inicial y final en forma
fecha.
Bajo este formato se puede calcular la diferencia en tiempos entre la fecha y
hora inicial y final con la siguiente instrucción:
c TIMESTAMPF subdur TIMESTAMPI WRESLT:*mn
Lo anterior obtiene la diferencia entre las fechas y horas inicial y final
dejando el resultado en minutos en la variable WRESLT.
Date: Wed, 20 Oct 2010 15:33:48 +0200
Subject: Calculo de Fechas y Horas
From: [email protected]
To: [email protected]
Buenas tardes a todos:
Tenemos un programa que se va gestionando entre varios departamentos, cuando
entra en un departamento se apunta la fecha y la hora de inicio y cuando
finaliza la gestion se apunta la fecha y hora final.
Pues bien necesito calcular el tiempo que ha tardado en hacer la gestion en ese
departamento. Hay que calcular el tiempo con la fecha y hora de inicio contra
la fecha y hora final.
He intentado bucar alguna copy en esta dirección
http://publib.boulder.ibm.com/infocenter/iseries/v5r3/index.jsp?topic=/apis/apifinder.htm
y no he encontrado nada.
Alguien me podria a consejar
Gracias
Un saludo
____________________________________________________
�nete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 � Publicaciones Help400, S.L.
____________________________________________________
Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 © Publicaciones Help400, S.L.