viernes, 5 de marzo de 2021

Jcl - tratamiento de fechas (3)

Vamos a ver cómo se puede realizar tratamiento de fechas en un jcl. Para ello vamos a partir de la fecha del sistema y a suponer que la fecha del día es 8 de Agosto de 2017 (08-08-2017).


//* %%SET %%FECHAX = %%$ODATE
//*------------------------------------------------------------------------
//* %%SET %%AAAA     = %%SUBSTR %%FECHAX 1 4
//* %%SET %%MM        = %%SUBSTR %%FECHAX 5 2
//* %%SET %%DD         = %%SUBSTR %%FECHAX 7 2
//* %%SET %%FECDIA   = %%AAAA-%%MM-%%DD
//*------------------------------------------------------------------------
//* %%SET %%FECHAD  = %%$OYEAR-%%OMONTH-%%ODAY
//*------------------------------------------------------------------------

ODATE - contiene la fecha del día que según el ejemplo dado sería 20170808 (OJO!!!! fíjate en el formato, va primero el año y a continuación el mes y el día, todo junto, sin ningún tipo de separación).

La variable FECHAX contendrá la fecha del sistema, es decir, el ODATE (20170808).

La variable AAAA contendrá el año de la fecha existente en FECHAX (2017).

La variable MM contendrá el mes de la fecha existente en FECHAX (08).

La variable DD contendrá el día de la fecha existente en FECHAX (08).

La variable FECDIA contendrá la unión de las tres variables antes mencionadas separadas por guiones (2017-08-08).

La variable FECHAD contendrá la fecha del sistema en el formato AAAA-MM-DD (20170808). Si os fijáis se obtiene el mismo resultado que el obtenido en la variable FECDIA pero en una sola línea.