En aquest tema, explorarem el paràmetre de disposició (DISP) en JCL, que és fonamental per a la gestió de conjunts de dades. El paràmetre DISP especifica com s'ha de tractar un conjunt de dades abans, durant i després de l'execució d'un treball.

Objectius d'Aprenentatge

Al final d'aquest tema, hauràs de ser capaç de:

  1. Comprendre la sintaxi del paràmetre DISP.
  2. Conèixer els diferents valors que pot prendre el paràmetre DISP.
  3. Aplicar el paràmetre DISP en diferents situacions pràctiques.

  1. Sintaxi del Paràmetre DISP

El paràmetre DISP té la següent sintaxi general:

DISP=(status,normal-disposition,abnormal-disposition)
  • status: Indica l'estat del conjunt de dades abans de l'execució del treball.
  • normal-disposition: Especifica què fer amb el conjunt de dades si el treball s'executa correctament.
  • abnormal-disposition: Especifica què fer amb el conjunt de dades si el treball falla.

Valors del status

  • NEW: Crea un nou conjunt de dades.
  • OLD: Utilitza un conjunt de dades existent.
  • MOD: Modifica un conjunt de dades existent.
  • SHR: Comparteix un conjunt de dades existent amb altres treballs.

Valors de normal-disposition i abnormal-disposition

  • CATLG: Cataloga el conjunt de dades.
  • DELETE: Elimina el conjunt de dades.
  • KEEP: Manté el conjunt de dades sense canvis.
  • UNCATLG: Descataloga el conjunt de dades.

  1. Exemples Pràctics

Exemple 1: Crear un Nou Conjunt de Dades

//STEP1   EXEC PGM=MYPROG
//MYDATA  DD  DSN=MY.DATA.SET,DISP=(NEW,CATLG,DELETE),UNIT=SYSDA,SPACE=(CYL,(5,5))

En aquest exemple:

  • NEW: Crea un nou conjunt de dades anomenat MY.DATA.SET.
  • CATLG: Cataloga el conjunt de dades si el treball s'executa correctament.
  • DELETE: Elimina el conjunt de dades si el treball falla.

Exemple 2: Utilitzar un Conjunt de Dades Existents

//STEP2   EXEC PGM=MYPROG
//MYDATA  DD  DSN=MY.EXISTING.DATA,DISP=(OLD,KEEP,KEEP)

En aquest exemple:

  • OLD: Utilitza el conjunt de dades existent MY.EXISTING.DATA.
  • KEEP: Manté el conjunt de dades sense canvis tant si el treball s'executa correctament com si falla.

Exemple 3: Modificar un Conjunt de Dades Existents

//STEP3   EXEC PGM=MYPROG
//MYDATA  DD  DSN=MY.MOD.DATA,DISP=(MOD,CATLG,CATLG)

En aquest exemple:

  • MOD: Modifica el conjunt de dades existent MY.MOD.DATA.
  • CATLG: Cataloga el conjunt de dades tant si el treball s'executa correctament com si falla.

  1. Exercicis Pràctics

Exercici 1

Escriu una declaració DD per a un conjunt de dades nou que es creï i es catalogui si el treball s'executa correctament, però que s'elimini si el treball falla.

Solució:

//NEWDD   DD  DSN=NEW.DATA.SET,DISP=(NEW,CATLG,DELETE),UNIT=SYSDA,SPACE=(CYL,(5,5))

Exercici 2

Escriu una declaració DD per a un conjunt de dades existent que es mantingui sense canvis tant si el treball s'executa correctament com si falla.

Solució:

//EXISTDD DD  DSN=EXISTING.DATA.SET,DISP=(OLD,KEEP,KEEP)

Exercici 3

Escriu una declaració DD per a un conjunt de dades que es modifiqui i es catalogui tant si el treball s'executa correctament com si falla.

Solució:

//MODDD   DD  DSN=MODIFY.DATA.SET,DISP=(MOD,CATLG,CATLG)

Errors Comuns i Consells

  • Error: Utilitzar DISP=NEW per a un conjunt de dades existent.

    • Solució: Assegura't que el conjunt de dades no existeixi abans d'utilitzar DISP=NEW.
  • Error: No especificar normal-disposition i abnormal-disposition.

    • Solució: Sempre especifica les disposicions per evitar comportaments inesperats.

Conclusió

El paràmetre DISP és crucial per a la gestió de conjunts de dades en JCL. Comprendre la seva sintaxi i els seus valors et permetrà controlar com es creen, utilitzen i eliminen els conjunts de dades en els teus treballs JCL. Practica amb diferents combinacions per familiaritzar-te amb el seu ús i evitar errors comuns.

© Copyright 2024. Tots els drets reservats