Como crear un archivo VSAM KSDS (con key/clave de indexación).

Este CODIGO JCL crea el VSAM que se compone de tres archivos que actúan en conjunto (Cluster).

El programa encargado de generar este tipo de archivos es el IDCAMS. Tambien se usa para borrarlos

Del JCL anterior, las siguientes son las lineas de importancia en la creación del VSAM:

//PASOXXXX EXEC PGM=IDCAMS                                              
//SYSPRINT DD SYSOUT=*                                                  
//SYSIN DD *                                                            
     DEFINE CLUSTER( -                                                     
          NAME(IBMUSER.MAGTEST0.ARCH.MAGVS) -                               
          INDEXED -                                                         
          VOL(ZARES1) -                                                     
          TRACKS(300 50) -                                                  
          RECSZ(52 132) -                                                   
          CISZ(12288) -                                                     
          KEY(8 0) -                                                        
          SHR(2 3) -                                                        
          FSPC(15 15))                                                      

NAME – identifica el fichero dentro del catálogo. Posteriormente se identificará en una DSN.

INDEXED – indica que el fichero es del tipo KSDS. NONINDEXED indica que el fichero es del tipo ESDS y NUMBERED con un fichero RRDS.

VOL – indica el nombre del disco en el que el fichero va a grabarse. Si no los conocemos, desde la opción 3.4, ingresamos IBMUSER* y ENTER para visualizarlo.

TRACKS, CYLS, RECORDS: Determina el espacio en pistas, cilindros o registros. La primera magnitud indica el espacio de la extensión primaria y la segunda el espacio para las extensiones secundarias.

RECSZ – el tamaño del registro consta de dos parámetros, el primero indica el tamaño medio en bytes de los registros que se van a almacenar en el fichero; el segundo indica el tamaño máximo en bytes de dichos registros. Si son iguales indica que los registros son de longitud fija.

CISZ:: Control Interval Size, longitud Intervalo de control. El intervalo de control es el equivalente al bloque en los ficheros VSAM.

KEYS – define la clave. Consta de dos subparámetros, el primero indica el tamaño en bytes de la clave, y el segundo indica la posición desde el comienzo del registro. Generalmente, la clave comienza en la primera posición del registro.

SHR – indica el grado de compartición del fichero. Consta de dos subparámetros: § El primero indica la compartición en distintos trabajos. § El segundo indica la compartición en distintos sistemas.

FSPC: Free Space. Indica la distribución del espacio libre en el fichero, la primera magnitud indica el espacio libre en cada intervalo de control y la segunda indica el número de intervalos de control libres en el Area de Control.



Los otros dos archivos que conforman el cluster de VSAM son:

DATA – se utiliza para definir los datos del fichero VSAM.

INDEX – se utiliza para definir el índice del fichero VSAM. Sólo se codifica cuando el fichero es KSDS.



Hasta acá la creación del VSAM. Ahora, hay que agregarle algunos datos, por ahora en forma manual...

Tenemos el VSAM en la siguiente ruta:

RUTA DEL VSAM:   IBMUSER.MAGTEST0.ARCH.MAGVS
                         IBMUSER.MAGTEST0.ARCH.MAGVS.DATA   
                         IBMUSER.MAGTEST0.ARCH.MAGVS.INDEX  

Desde el menú principal del ispf opción 'M',

opción '7 DITTO', opción '2 EDIT', opción '1 EDIT VSAM DATA',

ingresamos 'DATA SET NAME: IBMUSER.MAGTEST0.ARCH.MAGVS',

y entramos al editor de texto de archivos VSAM.


NOTA: recordar que todos los registros deben tener los mismos campos (de igual tamaño y posición).