Grupos de Generación (GDG)
Generation Data Group (GDG), es un grupo de
archivos que están funcional y cronológicamente
relacionados entre sí.
relacionados entre sí.
Su nombre lo asigna el sistema de la siguiente
manera:
Nombfich.GnnnnVnn
-
Nombfich, corresponde a la
denominación de grupo.
-
Gnnnn, número de generación (de
0000 a 9999). Cuando se llega al máximo número de ficheros para un GDG,
dependiendo de los parámetros del sistema, el GDG se vacía por completo o sólo
el más antiguo. Al añadir un nuevo fichero al grupo, siempre será GEN(+1),
siendo el actual siempre GEN(0).
-
Vnn, versión de la generación (de
00 a 99). Sólo se conserva la versión más reciente.
No son ficheros VSAM.
Creación de un GDG
//PROGRAMA EXEC
PGM=IDCAMS
//SYSPRINT DD
SYSOUT=*
//SYSIN DD *
DEFINE GDG
-
(NAME(FICHERO.PRUEBA) -
LIMIT(15) -
EMPTY -
NOSCRATCH)
/*
|
A través de la utilidad IDCAMS se define para el catálogo la existencia
de un GDG y el número de
generaciones permitidas. Los parámetros empleados son los siguientes:
generaciones permitidas. Los parámetros empleados son los siguientes:
-
LIMIT – especifica el número
máximo de GDS’s (ficheros) que puede tener un GDG.
-
EMPTY – al llegar al máximo, se
descatalogan (se borran) todos los ficheros de generación; NOEMPTY, al llegar
al máximo, sólo se descataloga el fichero más antiguo.
-
SCRATCH / NOSCRATCH – especifica
si se borrará o no del volumen la información existente
del fichero, cuando éste se descatalogue.
del fichero, cuando éste se descatalogue.
Creación de un GDS
//PROGRAMA
EXEC PGM=PGMGDS
//SALIDA DD DSN=FICHERO.PRUEBA(+1),
//
DISP=(,CATLG,DELETE),UNIT=SYSDA,
//
SPACE=(TRK,(10,5),RLSE),
//
RECFM=FB,LRECL=87,BLKSIZE=0
/*
|
GDS: Generation Data Set. El
nombre completo del fichero empleado en el ejemplo sería:
FICHERO.PRUEBA.G0001V01
Al acabar de ejecutarse el paso, el GDG pasa a ser el actual (versión
0).
Si un paso posterior crea otro fichero nuevo (+1), al acabar de
ejecutarse el paso, el GDG pasa a ser el actual (versión 0), y el que teníamos
anteriormente sería la versión (-1).
Borrado de un GDS
//DEL GDS EXEC
PGM=IDCAMS
//SYSPRINT DD
SYSOUT=*
//SYSIN DD
*
DELETE FICHERO.PRUEBA(0) PURGE
/*
|
Borrado de un GDG
//DELGDG EXEC
PGM=IDCAMS
//SYSPRINT DD
SYSOUT=*
//SYSIN DD *
DELETE FICHERO.PRUEBA GDG
PURGE
/*
|
No hay comentarios.:
Publicar un comentario