En este tema, proporcionaremos una visión general de las declaraciones más importantes en JCL (Job Control Language). Estas declaraciones son fundamentales para definir y controlar los trabajos que se ejecutan en un sistema mainframe. A lo largo de este módulo, aprenderás sobre las tres declaraciones principales: JOB, EXEC y DD, así como su sintaxis y uso básico.

Declaraciones Principales en JCL

  1. Declaración JOB

La declaración JOB es la primera declaración en un trabajo JCL y se utiliza para identificar el trabajo al sistema operativo. Incluye información como el nombre del trabajo, el usuario que lo envía y las condiciones de ejecución.

Sintaxis Básica:

//JOBNAME JOB (accounting_info), 'programmer_name', CLASS=class, MSGCLASS=msgclass, ...

Ejemplo:

//MYJOB JOB (12345), 'John Doe', CLASS=A, MSGCLASS=X

Explicación:

  • JOBNAME: Nombre del trabajo.
  • accounting_info: Información de contabilidad para el trabajo.
  • 'programmer_name': Nombre del programador.
  • CLASS: Clase de trabajo, que determina la prioridad y los recursos asignados.
  • MSGCLASS: Clase de mensajes, que especifica dónde se enviarán los mensajes de salida.

  1. Declaración EXEC

La declaración EXEC se utiliza para ejecutar un programa o procedimiento. Define el programa que se va a ejecutar y los parámetros necesarios.

Sintaxis Básica:

//stepname EXEC PGM=program_name, PARM=parameters

Ejemplo:

//STEP1 EXEC PGM=IEFBR14

Explicación:

  • stepname: Nombre del paso dentro del trabajo.
  • PGM: Nombre del programa a ejecutar.
  • PARM: Parámetros opcionales que se pasan al programa.

  1. Declaración DD

La declaración DD (Data Definition) se utiliza para describir los archivos y dispositivos que el programa necesita. Define cómo se deben manejar los conjuntos de datos.

Sintaxis Básica:

//ddname DD DSN=data_set_name, DISP=disposition, ...

Ejemplo:

//MYDATA DD DSN=MY.DATA.SET, DISP=SHR

Explicación:

  • ddname: Nombre de la definición de datos.
  • DSN: Nombre del conjunto de datos.
  • DISP: Disposición del conjunto de datos (por ejemplo, NEW, OLD, SHR).

Ejemplo Completo de un Trabajo JCL

A continuación, se muestra un ejemplo completo de un trabajo JCL que incluye las tres declaraciones principales:

//MYJOB JOB (12345), 'John Doe', CLASS=A, MSGCLASS=X
//STEP1 EXEC PGM=IEFBR14
//MYDATA DD DSN=MY.DATA.SET, DISP=SHR

Explicación:

  1. La declaración JOB define el trabajo con el nombre MYJOB, asigna la clase A y la clase de mensajes X.
  2. La declaración EXEC ejecuta el programa IEFBR14 en el paso STEP1.
  3. La declaración DD define un conjunto de datos MY.DATA.SET con disposición SHR (compartido).

Ejercicio Práctico

Ejercicio: Escribe un trabajo JCL que:

  1. Defina un trabajo con el nombre TESTJOB, asignado a la clase B y la clase de mensajes Y.
  2. Ejecute el programa IEFBR14 en un paso llamado INIT.
  3. Defina un conjunto de datos llamado TEST.DATA.SET con disposición NEW.

Solución:

//TESTJOB JOB (12345), 'Jane Smith', CLASS=B, MSGCLASS=Y
//INIT EXEC PGM=IEFBR14
//TESTDATA DD DSN=TEST.DATA.SET, DISP=(NEW,CATLG,DELETE)

Explicación:

  1. La declaración JOB define el trabajo TESTJOB con la clase B y la clase de mensajes Y.
  2. La declaración EXEC ejecuta el programa IEFBR14 en el paso INIT.
  3. La declaración DD define un conjunto de datos TEST.DATA.SET con disposición NEW, que se catalogará (CATLG) si el trabajo se completa con éxito y se eliminará (DELETE) si falla.

Conclusión

En esta sección, hemos cubierto una visión general de las declaraciones principales en JCL: JOB, EXEC y DD. Estas declaraciones son esenciales para definir y controlar los trabajos en un sistema mainframe. En los próximos módulos, profundizaremos en cada una de estas declaraciones y exploraremos sus opciones y parámetros en detalle.

© Copyright 2024. Todos los derechos reservados