En aquest tema, explorarem les declaracions fonamentals del JCL (Job Control Language) que són essencials per a la creació i execució de treballs en un entorn mainframe. Les declaracions JCL són instruccions que indiquen al sistema com executar un treball, quins recursos utilitzar i com gestionar les dades. Les tres declaracions principals que veurem són:
- Declaració JOB
- Declaració EXEC
- Declaració DD
Declaració JOB
La declaració JOB és la primera línia d'un treball JCL i proporciona informació general sobre el treball. Aquesta declaració defineix el treball al sistema operatiu i inclou informació com el nom del treball, el compte de facturació i altres paràmetres de control.
Sintaxi Bàsica
Exemple
Explicació
- JOBNAME: Nom del treball, que ha de ser únic dins del sistema.
- accounting_info: Informació de comptabilitat per a la facturació.
- description: Descripció del treball.
- CLASS: Classe del treball, que determina la prioritat i els recursos assignats.
- MSGCLASS: Classe de missatges, que especifica on s'enviaran els missatges de sortida.
Declaració EXEC
La declaració EXEC indica al sistema quin programa o procediment s'ha d'executar. Cada treball pot tenir una o més declaracions EXEC.
Sintaxi Bàsica
Exemple
Explicació
- stepname: Nom del pas, que ha de ser únic dins del treball.
- PGM: Nom del programa que s'executarà.
- PARM: Paràmetres opcionals que es passen al programa.
Declaració DD
La declaració DD (Data Definition) defineix els conjunts de dades que s'utilitzaran en un pas del treball. Aquesta declaració especifica on es troben les dades d'entrada i on s'han de desar les dades de sortida.
Sintaxi Bàsica
Exemple
Explicació
- ddname: Nom de la definició de dades, que ha de ser únic dins del pas.
- DSN: Nom del conjunt de dades.
- DISP: Disposició del conjunt de dades (per exemple, SHR per compartir, NEW per crear un nou conjunt de dades).
Exemple Complet d'un Treball JCL
A continuació, es mostra un exemple complet d'un treball JCL que inclou les tres declaracions principals:
//MYJOB JOB (12345), 'Example Job', CLASS=A, MSGCLASS=X //STEP1 EXEC PGM=IEFBR14 //INPUT DD DSN=MY.DATA.SET, DISP=SHR
Explicació
- Declaració JOB: Defineix el treball amb el nom
MYJOB
, informació de comptabilitat12345
, descripcióExample Job
, classeA
i classe de missatgesX
. - Declaració EXEC: Defineix un pas anomenat
STEP1
que executa el programaIEFBR14
. - Declaració DD: Defineix un conjunt de dades d'entrada anomenat
INPUT
amb el nomMY.DATA.SET
i disposicióSHR
(compartit).
Exercici Pràctic
Exercici
Crea un treball JCL que executi un programa anomenat MYPROG
i utilitzi un conjunt de dades d'entrada anomenat USER.DATA.INPUT
amb disposició OLD
.
Solució
//MYJOB JOB (67890), 'My JCL Job', CLASS=B, MSGCLASS=Y //STEP1 EXEC PGM=MYPROG //INPUT DD DSN=USER.DATA.INPUT, DISP=OLD
Explicació
- Declaració JOB: Defineix el treball amb el nom
MYJOB
, informació de comptabilitat67890
, descripcióMy JCL Job
, classeB
i classe de missatgesY
. - Declaració EXEC: Defineix un pas anomenat
STEP1
que executa el programaMYPROG
. - Declaració DD: Defineix un conjunt de dades d'entrada anomenat
INPUT
amb el nomUSER.DATA.INPUT
i disposicióOLD
(exclusiu).
Conclusió
En aquesta secció, hem après sobre les tres declaracions principals del JCL: JOB, EXEC i DD. Hem vist la seva sintaxi bàsica, exemples pràctics i hem realitzat un exercici per reforçar els conceptes apresos. Aquestes declaracions són fonamentals per a la creació de treballs JCL i seran la base per a temes més avançats en els següents mòduls.
Curs de JCL (Job Control Language)
Mòdul 1: Introducció al JCL
- Què és el JCL?
- Estructura Bàsica d'un Treball JCL
- Visió General de les Declaracions JCL
- Executar el Teu Primer Treball JCL
Mòdul 2: Declaracions i Sintaxi del JCL
Mòdul 3: Declaracions de Definició de Dades (DD)
- Definició de Conjunts de Dades
- Conjunts de Dades Temporals
- Referència a Conjunts de Dades
- Paràmetre de Disposició
Mòdul 4: Procediments i Paràmetres Simbòlics
- Introducció als Procediments
- Crear i Utilitzar Procediments
- Paràmetres Simbòlics
- Sobreescriure Paràmetres
Mòdul 5: Conceptes Avançats de JCL
- Processament Condicional
- Declaracions JCLLIB i INCLUDE
- Grups de Dades de Generació (GDGs)
- Reinici i Punt de Control
Mòdul 6: Gestió d'Errors i Depuració
- Errors Comuns de JCL
- Interpretar Missatges d'Error de JCL
- Tècniques de Depuració
- Utilitzar JES2/JES3 per a la Resolució de Problemes