Tutoriales JCL
¡Bienvenido a nuestro portal de tutoriales de programación en JCL (Job Control Language)! Aquí en cobolcoder.com, nos dedicamos a brindarte recursos detallados y accesibles para que puedas dominar JCL y optimizar tus procesos de trabajo en entornos mainframe.
¿Qué es JCL? El lenguaje de control de trabajos (JCL) es esencial en el mundo de los mainframes, ya que permite definir y gestionar la ejecución de tareas y programas en sistemas operativos como IBM z/OS. En nuestra plataforma, encontrarás una serie de tutoriales paso a paso diseñados para ayudarte a comprender los fundamentos de JCL, desde la creación de trabajos hasta la gestión de recursos y la optimización del rendimiento.
¡Sumérgete en el fascinante mundo de JCL con nosotros! Explora nuestros tutoriales, participa en la comunidad y lleva tus habilidades de programación en mainframes al siguiente nivel. ¡Estamos emocionados de ser parte de tu viaje de aprendizaje en JCL!
Guías Básicas sobre Programación en JCL
SORT en JCL
En JCL (Job Control Language), puedes utilizar el programa SORT para ordenar dos ficheros.
//SORTJOB JOB (123),'Nombre del job',CLASS=A,MSGCLASS=X,MSGLEVEL=(1,1)
//STEP1 EXEC PGM=SORT
//SYSOUT DD SYSOUT=A
//SORTIN1 DD DSN=your.input.file1,DISP=SHR
//SORTIN2 DD DSN=your.input.file2,DISP=SHR
//SORTOUT DD DSN=your.output.file,DISP=(NEW,CATLG,DELETE),
// UNIT=SYSDA,SPACE=(CYL,(5,5),RLSE)
//SYSIN DD *
SORT FIELDS=(start_position,length,format,A/D)
/*
En este ejemplo:
//SORTJOB
es la declaración del trabajo, donde puedes especificar información como el nombre del trabajo, la clase, etc.//STEP1
es la declaración de la fase del trabajo. En este caso, utilizamos el programa SORT.//SYSOUT
especifica la salida del sistema para mensajes del programa SORT.//SORTIN1
y//SORTIN2
son las declaraciones para los dos ficheros de entrada que deseas ordenar.//SORTOUT
es la declaración para el fichero de salida ordenado.//SYSIN
contiene las opciones de control para el programa SORT. En este ejemplo, se utiliza la opciónSORT FIELDS
para especificar los campos de ordenación.
En este artículo se explican su principales características con ejemplos de programación.
INCLUDE Condition
La condición INCLUDE
se utiliza en el contexto del paso de clasificación, SORT, para especificar un conjunto de registros que se deben incluir en la salida del paso de clasificación.
//SORTJOB JOB 1,PROGRAMMER
//STEP01 EXEC PGM=SORT
//SORTIN DD DSN=MI.INPUT.DATOS,DISP=SHR
//SORTOUT DD DSN=MI.OUTPUT.DATOS,
// DISP=(NEW,CATLG,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(5,5)),
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=0)
//SYSOUT DD SYSOUT=*
//SYSIN DD *
SORT FIELDS=(1,10,CH,A)
INCLUDE COND=(20,5,CH,EQ,C'VALOR')
/*
Explicación del JCL:
- SORTIN: Define el archivo de entrada (
MI.INPUT.DATOS
). Aquí están los datos que se ordenarán y filtrarán. - SORTOUT: Define el archivo de salida (
MI.OUTPUT.DATOS
). Aquí se guardarán los registros ordenados y filtrados. - SYSIN: Aquí especificamos las operaciones de ordenamiento y filtrado.
SORT FIELDS=(1,10,CH,A)
: Ordena los registros en orden ascendente (A) utilizando los primeros 10 caracteres (1,10) como clave de ordenamiento.CH
indica que se trata de un campo de caracteres.INCLUDE COND=(20,5,CH,EQ,C'VALOR')
: Filtra los registros para incluir solo aquellos donde los caracteres entre las posiciones 20 y 24 sean exactamenteVALOR
.
Explicación del código de filtro:
INCLUDE COND=(20,5,CH,EQ,C'VALOR')
:20,5
: Indica la posición de inicio (20) y la longitud (5) del campo a evaluar.CH
: Especifica que el campo es de tipo carácter.EQ
: Especifica que debe haber una coincidencia exacta (igualdad).C'VALOR'
: Especifica el valor con el que se compara el campo.
OUTREC Condition
La condición OUTREC
se utiliza en el contexto del paso de clasificación (SORT) para definir la disposición y transformación de los registros de salida antes de que se escriban en el archivo de salida.
//SORTJOB JOB 1,PROGRAMMER
//STEP01 EXEC PGM=SORT
//SORTIN DD DSN=MI.INPUT.DATOS,DISP=SHR
//SORTOUT DD DSN=MI.OUTPUT.DATOS,
// DISP=(NEW,CATLG,DELETE),
// UNIT=SYSDA,
// SPACE=(CYL,(5,5)),
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=0)
//SYSOUT DD SYSOUT=*
//SYSIN DD *
SORT FIELDS=(1,10,CH,A)
INCLUDE COND=(20,5,CH,EQ,C'VALOR')
OUTREC FIELDS=(1:1,10,11:20,5,16:C'FIJO')
/*
Explicación del JCL:
- SORTIN: Define el archivo de entrada (
MI.INPUT.DATOS
). - SORTOUT: Define el archivo de salida (
MI.OUTPUT.DATOS
). - SYSIN: Especifica las operaciones de ordenamiento, filtrado y transformación.
SORT FIELDS=(1,10,CH,A)
: Ordena los registros por los primeros 10 caracteres en orden ascendente.INCLUDE COND=(20,5,CH,EQ,C'VALOR')
: Filtra los registros para incluir solo aquellos donde el campo de la posición 20 a la 24 contenga exactamenteVALOR
.OUTREC FIELDS=(1:1,10,11:20,5,16:C'FIJO')
: Modifica los registros de salida aplicando una reestructuración.
Explicación de OUTREC:
OUTREC FIELDS=(1:1,10,11:20,5,16:C'FIJO')
:1:1,10
: Copia los primeros 10 caracteres desde la posición 1 del registro original a la posición 1 en el registro de salida.11:20,5
: Copia los 5 caracteres desde la posición 20 del registro original a la posición 11 en el registro de salida.16:C'FIJO'
: Inserta el valor constante'FIJO'
a partir de la posición 16 en el registro de salida.
Este ejemplo muestra cómo ordenar y filtrar registros en JCL, y luego formatear la salida de manera personalizada usando OUTREC
.
SUM FIELDS JCL
El control de declaración SUM FIELDS JCL, indica que cuando dos registros tienen campos de control de un SORT o fusión iguales, se suman los campos de resumen, se coloca la suma en uno de los registros y se elimina el otro. Si está activada la opción EQUALS, se conserva el primer registro; si está activada la opción NOEQUALS, el registro conservado es impredecible.
OUTFIL Condition
En el mundo del mainframe, JCL (Job Control Language) es la columna vertebral para la ejecución de trabajos y la gestión de datos. Dentro de JCL, uno de los componentes más poderosos y versátiles es la declaración OUTFIL
, que se utiliza principalmente en combinación con las utilidades de IBM, como DFSORT
y ICETOOL
, para el reformateo de ficheros.
Calculadora Online de ficheros JCL
Calculador Online de ficheros JCL para calcular el BLOCK SIZE, los TRKS y los CYL, en función de los registros de entrada y el LRECL.
JCL: Cómo Ejecutar un Proceso
Este libro explora el Job Control Language (JCL), esencial para ejecutar procesos en sistemas mainframe. Aprender JCL es fundamental para optimizar y automatizar tareas en sistemas IBM, y esta guía te muestra cómo hacerlo de manera práctica y efectiva.
Temas principales
- Estructura y comandos esenciales de JCL
- Creación y gestión de trabajos
- Optimización de recursos y manejo de errores
- Ejemplos prácticos de configuración de procesos
Con esta lectura, podrás mejorar la eficiencia de tus trabajos en mainframe, aumentando tu productividad en proyectos complejos.