Une généralité en JCL est que cette langage de contrôle de tâches est utilisé pour décrire les travaux à exécuter sur un système informatique centralisé.
Les instructions JCL spécifient les programmes à exécuter, les données à utiliser et les ressources système nécessaires pour exécuter les travaux. Les tâches sont soumises à un planificateur de travaux qui les ordonnance et les distribue aux ressources système pour leur traitement. Le JCL est une compétence clé pour les programmeurs et les administrateurs système travaillant avec des ordinateurs centraux.
1.1. Description
Un JCL ce compose d’un certain nombre d’ordres qui on un but de :
- Soumettre au système un travail, c’est-à-dire un ensemble de programmes à exécuter.
L’ordre utilisé pour cela est : JOB - Donnée le nom du programme à exécuter, ou la procédure à appeler, EXEC
- Définir l’ensemble des données associées aux programmes du traitement demander a être exécuter, DD.
L’ensemble des ordres de contrôle sont soumis à une syntaxe qu’il faut respecter sous peine de voir un refus d’exécution et envoie d’un message JOB NOT RUN – JCL ERROR.
L’exécution d’un JCL est séquentielle, les ordres de contrôle doivent être précisées dans un ordre déterminé à l’intérieur du JOB, et cela étape par étape. Ces étapes seront respectueux des condition coder par l’utilisateur.
Les JOB sont indépendant dans leurs soumissions.
1.2. Codage
Un JCL ce compose principalement d’ordre décrit précédemment:
En première ligne un ordre JOB une seul par JCL(membre PDS).
Une succession d’ordre EXEC. Il doit être suivie par des ordres DD pour spécifier l’ensemble des composants (fichier entrer, fichier de sortie, Sysin, compte rendu d’exec, fichier de display …)
La présence d’une carte fin n’est pas obligatoire.
Dans le tableau qui suit un récapitulatif des ordres est présenté :
Nom de la carte | Paramètres définis |
COMMAND | Indique la commande MVS ou JES2 à effectuer lors de l’exécution du JCL (depuis MVS/ESA SP4) |
CNTL/ENDCNTL | Marque début/la fin du ou des paramètres de contrôle pour un sous-système d’impression. |
DD | Nom logique d’un fichier, nom physique, utilisateur(création, lecture, modification, suppression..), type de support (bande,disque), identification du support, taille du fichier, caractéristiques intrinsèques (organisation, blocage, taille des enregistrements), labels. |
EXEC | Nom de l’étape du JOB, nom du programme à exécuter, paramètres à passer au programme, taille mémoire à allouer, conditions d’exécution, durée d’exécution de l’étape. |
IF/THEN/ELSE/ENDIF | Permet de Conditionner l’exécution des étapes (depuis MVS/ESA SP4). |
INCLUDE | Spécifie le nom du membre de bibliothèque à inclure dans le JCL. Aucune possibilité de paramétrage (depuis MVS/ESA SP4) |
JCLLIB | Précise la bibliothèque qui contient la procédure ou le groupe d’include que l’on vaut exécuter (depuis MVS/ESA SP4) |
JOB | Nom du JOB, du Programme, ou programmeur, classe d’exécution, classe de sortie, niveau des messages d’erreur, durée d’exécution, conditions de reprise |
OUTPUT | Options d’impression que le JES utilisera pour les fichier en SYSOUT. |
PROC | Définit une procédure, permet de donner des valeurs par défaut aux variables. |
PEND | Détermine la fin d’une procédure. |
SET | Donne des valeurs aux variables qui paramètrent le JCL (depuis MVS/ESA SP4) |
XMIT | Transmission d’enregistrements d’un système sous JES3 vers un autre système. |
//* | Commentaire |
// | FIN de JCL |
/* | Fin de données |