En este tema, aprenderemos cómo definir conjuntos de datos en JCL (Job Control Language). Los conjuntos de datos son fundamentales en JCL, ya que representan los archivos que se utilizan y manipulan durante la ejecución de un trabajo. A continuación, desglosaremos los conceptos clave, proporcionaremos ejemplos prácticos y ejercicios para reforzar el aprendizaje.

Conceptos Clave

  1. Conjunto de Datos (Data Set): Un conjunto de datos es una colección de datos almacenados en un formato específico en el sistema mainframe. Puede ser un archivo secuencial, un archivo particionado (PDS), o un archivo VSAM, entre otros.
  2. Declaración DD (Data Definition): La declaración DD se utiliza en JCL para definir y describir los conjuntos de datos que un trabajo necesita. Incluye información como el nombre del conjunto de datos, su ubicación, y cómo debe ser tratado durante y después del trabajo.

Estructura de la Declaración DD

La declaración DD tiene la siguiente estructura básica:

//DDNAME  DD  PARAMETROS
  • DDNAME: Es el nombre lógico del conjunto de datos dentro del trabajo JCL.
  • DD: Palabra clave que indica que es una declaración de definición de datos.
  • PARAMETROS: Especifican las características y el tratamiento del conjunto de datos.

Parámetros Comunes en la Declaración DD

Parámetro Descripción
DSN Nombre del conjunto de datos (Data Set Name).
DISP Disposición del conjunto de datos (nueva, existente, etc.).
UNIT Unidad de almacenamiento (disco, cinta, etc.).
SPACE Espacio a asignar para el conjunto de datos.
DCB Control de bloque de datos (Data Control Block).

Ejemplo Práctico

A continuación, se muestra un ejemplo de cómo definir un conjunto de datos en JCL:

//MYJOB    JOB  (ACCT),'Example Job',CLASS=A,MSGCLASS=X
//STEP1    EXEC PGM=MYPROGRAM
//MYDATA   DD   DSN=MY.DATA.SET,DISP=(NEW,CATLG,DELETE),
//              UNIT=SYSDA,SPACE=(CYL,(5,1)),DCB=(RECFM=FB,LRECL=80,BLKSIZE=800)

Explicación del Ejemplo

  • MYJOB: Define el trabajo con el nombre 'Example Job'.
  • STEP1: Ejecuta el programa 'MYPROGRAM'.
  • MYDATA: Define el conjunto de datos con los siguientes parámetros:
    • DSN=MY.DATA.SET: Nombre del conjunto de datos.
    • DISP=(NEW,CATLG,DELETE): Indica que el conjunto de datos es nuevo, se catalogará si el trabajo termina correctamente, y se eliminará si el trabajo falla.
    • UNIT=SYSDA: Asigna el conjunto de datos a una unidad de disco.
    • SPACE=(CYL,(5,1)): Asigna espacio en cilindros, con 5 cilindros primarios y 1 cilindro secundario.
    • DCB=(RECFM=FB,LRECL=80,BLKSIZE=800): Define el formato de registro fijo (FB), longitud de registro de 80 bytes, y tamaño de bloque de 800 bytes.

Ejercicio Práctico

Ejercicio 1

Define un conjunto de datos en JCL con las siguientes especificaciones:

  • Nombre del conjunto de datos: USER.TEST.DATA
  • Disposición: Nuevo, catalogar si el trabajo termina correctamente, eliminar si falla.
  • Unidad: Disco (SYSDA)
  • Espacio: 10 cilindros primarios y 2 cilindros secundarios.
  • DCB: Formato de registro variable (VB), longitud de registro de 100 bytes, tamaño de bloque de 1000 bytes.

Solución del Ejercicio 1

//TESTJOB  JOB  (ACCT),'Test Job',CLASS=A,MSGCLASS=X
//STEP1    EXEC PGM=TESTPROG
//TESTDATA DD   DSN=USER.TEST.DATA,DISP=(NEW,CATLG,DELETE),
//              UNIT=SYSDA,SPACE=(CYL,(10,2)),DCB=(RECFM=VB,LRECL=100,BLKSIZE=1000)

Resumen

En esta sección, hemos aprendido cómo definir conjuntos de datos en JCL utilizando la declaración DD. Hemos cubierto los parámetros más comunes y proporcionado ejemplos prácticos para ilustrar su uso. Además, hemos incluido un ejercicio práctico para reforzar los conceptos aprendidos. En el próximo tema, exploraremos los conjuntos de datos temporales y cómo se utilizan en JCL.

© Copyright 2024. Todos los derechos reservados