6. DDNAME SYSTEME

Un DDNAME système est un nom symbolique utilisé pour identifier un fichier ou un périphérique système. Il est généralement utilisé pour accéder aux fichiers système standard tels que SYSIN, SYSOUT, SYSPRINT, SYSUT1, etc.

Le DDNAME est associé à un nom de fichier physique et à des attributs tels que le type de périphérique, le mode d’accès, la disposition du fichier et l’organisation des données. Les DDNAME système permettent de définir les entrées et sorties de données dans les programmes COBOL et sont généralement définis dans les instructions JOB et EXEC du JCL.

6.1. Recherche de programmes pour exécution

LINKLIB LOGIQUE
La Linklib logique est un ensemble de bibliothèques constitué de la SYS1.LINKLIB et de bibliothèques système et privées qui lui sont rattachées. Cet ensemble est défini dans des membres LNKLSTnn de SYS1.PARMLIB.
A partie du moment où un programme que l’on veut exécuter se trouve dans une bibliothèque de la Linklib logique, il n’est pas nécessaire de définir cette bibliothèque dans le JCL.

DEFINITION DE BIBLIOTHEQUE PRIVEES
La recherche d’un programme dans une ou plusieurs bibliothèques privées peut être demandée par l’une des cartes suivantes :

//JOBLIB DD DSN=BIB.LOAD,DISP=SHR
//STEPLIB DD DSN=BIB.LOAD2,DISP=SHR

  • Carte JOBLIB : permet de définir une bibliothèque privée qui sera valable pour toute la durée du JOB. Elle doit suivre obligatoirement la carte JOB. Et la carte JES2 s’il y’en a et précéder la première carte EXC.

Exemple :
//JOB1   JOB
//JOBLIB DD DSN=BIB.LOAD1,DISP=SHR
//STEP1  EXEC PGM=PROG1

Remarque : a chaque fois que le JOB demande l’exécution d’un programme, le système le recherche dans les bibliothèques de la JOBLIB. Si il n’est pas trouver dans ,la recherche ce poursuit dans la LINKLIB LOGIQUE.

  • Carte STEPLIB : permet de définir une bibliothèque privée qui ne sera valable que pour la durée du STEP dans le quel elle est définie. Elle fait partie des carte DD.

Exemple :
//JOB2    JOB
//STEP1   EXEC PGM=PROG2
//STEPLIB DD DSN=BIB.LOAD2,DISP=SHR

Remarque :
Avec une carte STEPLIB, quand l’étape demande l’exécution du programme, le Système le recherche dans la bibliothèque définie par STEPLIB. Sinon il continue sa recherche dans la LINKLIB LOGIQUE. Il n’y aura en aucun cas de recherche dans les bibliothèques éventuellement définie par JOBLIB.

6.2. Définition de catalogues

La définition d’un catalogue peut être demandée par l’une des cartes suivantes :

//JOBCAT DD DSN=USER.CAT1,DIS=SHR
//STEPCAT DD DSN=USER.CAT2,DISP=SHR

JOBCAT : un catalogue défini avec une carte JOBCAT sera valable pour toute la durée du JOB. La recherche d’un fichier de fera dans l’ordre suivant :
1) Catalogue défini par JOBCAT
2) Master Catalog
3) Catalogue associé au premier ‘Qualifieur’ du nom du fichier.
Une carte JOBCAT doit obligatoirement être placée entre la carte JOB et la première carte EXEC.
Si il existe une carte JOBCAT doit obligatoirement être placée entre la carte JOB et la première carte EXEC.
SI il existe une carte JOBLIB pour le même JOB elle doit être placer entre la carte JOB et la carte JOBCAT.

Exemple :
//JOB1   JOB
//JOBLIB DD DSN=BIB.LOAD1,DISP=SHR

//JOBCAT DD DSN=USER.CAT1,DISP=SHR
//STEP1  EXEC PGM=PROG1

STEPCAT : un catalogue défini par une carte STEPCAT est valable seulement pour la durée du STEP dans la quelle il est défini. La recherche d’un fichier se fait dans l’ordre suivant :
1) Catalogue défini par STEPCAT
2) Master Catalog
3) Catalogue associer au premier qualifieur du nom de fichier.
Une carte STEPCAT se place parmi les cartes DD de l’étape.

Exemple :
//JOB1    JOB
//JOBLIB  DD DSN=BIB.LOAD1,DISP=SHR
//STEP1   EXEC PGM=PROG1
//STEPCAT DD DSN=USER.CAT2,DISP=SHR

6.3. Edition des messages programmes

L’édition des messages programmes est faites sur un fichier SYSOUT défini par une carte :

//SYSOUT DD SYSOUT=classe

6.4. Options de DEBUGGING COBOL

Certaines options de debugging cobol nécessitent la présence des cartes suivantes.

//SYSDBOUT DD SYSOUT=classe
//SYSABOUT DD SYSOUT=classe

6.5. Edition des DUMPS

La sortie de DUMPS peut se faire sur fichier SYSOUT, disque ou bande. Elle est obtenue par l’intermédiaire d’une carte :

//SYSUDUMP DD SYSOUT=classe