JCL – Instruction EXEC

Chaque JCL peut être composé de plusieurs étapes de job.
Chaque étape de tâche peut exécuter directement un programme ou appeler une procédure qui, à son tour, exécute un ou plusieurs programmes (étapes de tâche).
L’instruction, qui contient les informations de programme/procédure d’étape de job, est l’instruction EXEC.

Le but de l’instruction EXEC est de fournir les informations requises pour le programme/la procédure exécuté(e) dans l’étape de job.
Les paramètres codés dans cette instruction peuvent transmettre des données au programme en cours d’exécution, peuvent remplacer certains paramètres de l’instruction JOB et peuvent transmettre des paramètres à la procédure si l’instruction EXEC appelle une procédure au lieu d’exécuter directement un programme.

Syntaxe

Voici la syntaxe de base d’une instruction JCL EXEC :

//Nom-step EXEC Position-param, Keyword-param 

Description

Voyons la description des termes utilisés dans la syntaxe de l’instruction EXEC ci-dessus.

Nom-step

Ceci identifie l’étape de travail dans le JCL. Il peut être de longueur 1 à 8 avec des caractères alphanumériques.

EXEC

Il s’agit du mot-clé pour l’identifier en tant qu’instruction EXEC.

POSITION-PARAM

Ce sont des paramètres positionnels, qui peuvent être de deux types :

Paramètre de positionDescription
PGMIl s’agit du nom du programme à exécuter dans l’étape de travail.
PROCIl s’agit du nom de la procédure à exécuter dans l’étape de travail. Nous en parlerons dans un chapitre séparé.
KEYWORD-PARAM

Voici les différents paramètres de mots-clés pour l’instruction EXEC. Vous pouvez utiliser un ou plusieurs paramètres en fonction des besoins et ils sont séparés par une virgule :

Paramètre de mot-cléDescription
PARMUtilisé pour fournir des données paramétrées au programme en cours d’exécution dans l’étape de job.
Ceci est un champ dépendant du programme et n’a pas de règles définies, sauf que la valeur PARM doit être incluse entre guillemets en cas de caractères spéciaux.

Par exemple donné ci-dessous, la valeur “CUST1000” est transmise sous forme de valeur alphanumérique au programme.
Si le programme est en COBOL, la valeur transmise via un paramètre PARM dans un JCL est reçue dans la LINKAGE SECTION du programme.
ADDRSPPCCeci est utilisé pour spécifier si l’étape de travail nécessite un stockage virtuel ou réel pour l’exécution.
Le stockage virtuel est paginable alors que le stockage réel ne l’est pas et est placé dans la mémoire principale pour exécution.
Les étapes de travail, qui nécessitent une exécution plus rapide, peuvent être placées dans un stockage réel. 

Voici la syntaxe :
ADRESPC=VIRT | REAL

Lorsqu’un ADDRSPC n’est pas codé, VIRT est celui par défaut.
ACCTCela spécifie les informations comptables de l’étape de travail. 

Voici la syntaxe :
ACCT=(ID utilisateur)

Ceci est similaire aux informations de comptabilisation des paramètres positionnels dans l’instruction JOB.
S’il est codé à la fois dans les instructions JOB et EXEC, les informations de comptabilisation dans l’instruction JOB s’appliquent à toutes les étapes de travail où un paramètre ACCT n’est pas codé.
Le paramètre ACCT dans une instruction EXEC remplacera celui présent dans l’instruction JOB pour cette étape de travail uniquement.