Hola a los lectores del
Blog,!
Gracias por estar siempre presente.
Retomamos el tema de las
fechas en este artículo
He desarrollo una pequeña
aplicación a manera de ejemplo para el
tratamiento de campos tipo DATE.
El aplicativo consta de un
archivo físico, un archivo de pantalla y un programa corto en RPGLE
El objetivo de la
aplicación es grabar o buscar los periodos de tiempo y sus fechas de inicio y
de finalización. El archivo consta de una
clave que es un numérico de tres y dos
campos: la fecha de inicio del periodo o fecha DESDE y la fecha de finalización
del periodo o Fecha HASTA.
Podemos tener por ejemplo
una tabla de periodos como sigue:
Periodo
Fecha desde Fecha hasta
001 01.0.2014 01.15.2014
002 16.01.2014 31.01.2014
Etc.
La pantalla permite grabar
un nuevo periodo o buscar un periodo que ya existe para que nos muestre las
fechas de inicio o finalización que fueron grabadas.
Pueden ver el campo
periodo y luego las fechas desde y
hasta.
Si colocamos un periodo, por ejemplo, 001 y presionamos el botón BUSCAR, el aplicativo busca en el archivo el
periodo 001 y si lo consigue despliega las dos fechas correspondientes Si no lo
consigue emite un mensaje de “periodo no encontrado”.
Cabe destacar lo
siguiente:
1.-Los campos de fecha
desplegados en pantalla son alfabéticos de 10 posiciones.
2.-Los campos del archivo
fueron declarados tipo fecha. (Se coloca una L en la columna correspondiente).
3.- El formato de fecha
indicado por mì, en las DDS y en las
variables del programa es *EUR.
En lo personal para mí es más
cómodo y coincide bastante con el formato
iberoamericano DDMMAAA. El separador es
PUNTO (.) siendo está una diferencia de forma y no de fondo.
4.-Para desplegar los
campos del archivo en pantalla se utiliza la función %char:
Variable de pantalla = %char(fecha_archivo:*EUR)
5.-Para grabar los campos
de la pantalla al archivo se utiliza la función
%date:
Campo del archivo =
%date(fecha_pantalla : *EUR)
6.-Las validaciones del
aplicativo son básicas. No valida duplicidad ni periodos con fechas limites
iguales. Es decir, es algo meramente ilustrativo del manejo de fechas. Cada
programador puede realizar los cambios o extensiones que requiera.
En este enlace puedes
descargar la aplicación anteriormente descrita
Encontrarás tres documentos en .txt.
- La DDS del archivo físico ARCDATE
- El archivo de Pantalla: SCREENDATE
- El programa: RPGLEDATE
Hay un montón de funciones
que permiten convertir enteros, caracteres en fecha y viceversa. Esto es
particularmente útil cuando se desea enviar ráfagas de datos desde el iseries a
plataformas distintas al iseries que pueden requerir conversiones especiales de
data para ser leídas por los otros equipos.
En este enlace tienen
varios ejemplos de conversión entre distintos tipos de datos y variables o
campos tipo fecha.
Si te pareció
interesante, reenvíalo a un amigo haciendo click en el sobrecito que está al
final del artículo. El conocimiento es valioso, compártelo.
Autor: Ing. Liliana Suárez