Introducción

Los parámetros simbólicos en JCL (Job Control Language) son una herramienta poderosa que permite la reutilización y flexibilidad en la definición de trabajos. Estos parámetros actúan como variables que pueden ser sustituidas por valores específicos en el momento de la ejecución del trabajo. Esto es especialmente útil cuando se trabaja con procedimientos (PROCs) y se desea personalizar ciertos aspectos del trabajo sin modificar el código base.

Conceptos Clave

  1. Definición de Parámetros Simbólicos: Los parámetros simbólicos se definen en los procedimientos JCL y se utilizan para representar valores que pueden variar.
  2. Sustitución de Parámetros: Los valores de los parámetros simbólicos se proporcionan en el momento de la ejecución del trabajo, permitiendo la personalización del trabajo sin cambiar el PROC.
  3. Sintaxis: Los parámetros simbólicos se denotan con el símbolo & seguido del nombre del parámetro.

Ejemplo Básico

Definición de un Procedimiento con Parámetros Simbólicos

//MYPROC PROC
//STEP1 EXEC PGM=MYPROG
//DD1   DD   DSN=&DATASET,DISP=SHR
//DD2   DD   DSN=&&TEMP,UNIT=SYSDA,SPACE=(TRK,(1,1)),DISP=(NEW,PASS)

En este ejemplo, &DATASET es un parámetro simbólico que se puede sustituir por un nombre de conjunto de datos específico cuando se llama al procedimiento.

Llamada al Procedimiento con Sustitución de Parámetros

//MYJOB  JOB  (ACCT),'EXAMPLE JOB'
//STEP1  EXEC MYPROC,DATASET=MY.DATA.SET

En este caso, &DATASET se sustituye por MY.DATA.SET cuando se ejecuta el trabajo.

Ejemplo Detallado

Procedimiento con Múltiples Parámetros Simbólicos

//BACKUP PROC
//STEP1 EXEC PGM=IEBGENER
//SYSPRINT DD SYSOUT=*
//SYSUT1   DD DSN=&INPUT,DISP=SHR
//SYSUT2   DD DSN=&OUTPUT,DISP=(NEW,CATLG,DELETE),
//            UNIT=SYSDA,SPACE=(CYL,(5,5)),DCB=(RECFM=FB,LRECL=80,BLKSIZE=800)
//SYSIN    DD DUMMY

Llamada al Procedimiento con Sustitución de Parámetros

//BACKUPJOB JOB (ACCT),'BACKUP JOB'
//STEP1     EXEC BACKUP,INPUT=PROD.DATA,OUTPUT=BACKUP.DATA

En este ejemplo:

  • &INPUT se sustituye por PROD.DATA.
  • &OUTPUT se sustituye por BACKUP.DATA.

Ejercicio Práctico

Ejercicio

  1. Definir un procedimiento llamado COPYPROC que copie un conjunto de datos de entrada a un conjunto de datos de salida. Utiliza parámetros simbólicos para los nombres de los conjuntos de datos de entrada y salida.
  2. Crear un trabajo JCL que llame al procedimiento COPYPROC y proporcione los nombres de los conjuntos de datos de entrada y salida.

Solución

Definición del Procedimiento

//COPYPROC PROC
//STEP1 EXEC PGM=IEBGENER
//SYSPRINT DD SYSOUT=*
//SYSUT1   DD DSN=&INFILE,DISP=SHR
//SYSUT2   DD DSN=&OUTFILE,DISP=(NEW,CATLG,DELETE),
//            UNIT=SYSDA,SPACE=(CYL,(1,1)),DCB=(RECFM=FB,LRECL=80,BLKSIZE=800)
//SYSIN    DD DUMMY

Trabajo JCL

//COPYJOB  JOB (ACCT),'COPY JOB'
//STEP1    EXEC COPYPROC,INFILE=INPUT.DATA,OUTFILE=OUTPUT.DATA

Retroalimentación y Consejos

  • Errores Comunes: Un error común es olvidar proporcionar valores para todos los parámetros simbólicos definidos en el procedimiento. Asegúrate de que todos los parámetros simbólicos tengan valores asignados en la llamada al procedimiento.
  • Nombres de Parámetros: Utiliza nombres de parámetros simbólicos que sean descriptivos y fáciles de entender para mejorar la legibilidad del JCL.
  • Reutilización: Los parámetros simbólicos facilitan la reutilización de procedimientos JCL, lo que puede ahorrar tiempo y reducir errores al evitar la duplicación de código.

Conclusión

Los parámetros simbólicos son una característica esencial de JCL que permite la creación de trabajos flexibles y reutilizables. Al dominar el uso de parámetros simbólicos, puedes escribir JCL más eficiente y adaptable, lo que es crucial para la gestión de trabajos en entornos mainframe. En el próximo tema, exploraremos cómo sobrescribir parámetros en procedimientos para aún mayor control y personalización.

© Copyright 2024. Todos los derechos reservados