Où sont stockées les informations du scheduler ?

Les entrées sont stockées dans un objet unique :

 Tapez la commande WRKOBJ *ALL/*ALL *JOBSCD

 Vous trouvez un objet QDFTJOBSCD sans la bibliothèque QUSRSYS

 Tapez la commande DMPOBJ QUSRSYS/QDFTJOBSCD *JOBSCD pour effectuer un dump de l’objet dans un spool

Vous pouvez pour récupérer les informations du scheduler, utiliser l’API QWCLSCDE. Elle liste les postes du scheduler dans un user space.

Pour faire rapide, vous pouvez télécharger l’exemple de programme CLP READJBSCDE que j’ai écrit d’après un exemple de source d’origine IBM et qui utilise quatre APIs :

 QUSCRTUS pour créer le user space.

 QWCLSCDE pour alimenter le user space par les postes du scheduler.

 QUSRTVUS pour lire le user space.

 QUSDLTUS pour supprimer le user space.

Un CLP n’est pas le meilleur moyen d’utiliser les API. Il sera donc préférable :

 Créer une table dont vous définirez la structure selon vos besoins.

 Faire un programme ( en RPG par exemple ) qui lise le scheduler selon le même principe (les APIs sont les mêmes), et alimentant la table avec les informations récupérées. Et tout cela dans QTEMP. Pas d’inquiétude, c’est rapide).

Mais pour l’exemple en RPG, suite au prochain numéro…

Bon, voilà , à  la suite d’un accès de courage : je n’avais jamais fait de RPG (malgré une déjà  longue expérience). J’ai décidé de m’y mettre pour mettre en ligne un source RPG qui permette de récupérer les informations du scheduler.

Le programme RPG RTVSCDE fait dans l’ordre :

 Crée dans QTEMP un fichier RTVSCDE de même structure que le fichier RTVSCDE trouvé dans la liste de bibliothèque lors de l’exécution du programme.

 Lit les informations du scheduler via les APIs pour les insérer dans le fichier RTVSCDE de QTEMP.

Installation et compilation du programme sur votre as400 :

 Télécharger le source sur votre PC.

 Transférer le source de votre PC vers votre AS400 via ftp (voir notre article) dans un fichier source QRPGLESRC.

 via PDM, ajoutez bien le type du membre RTVSCDE transféré : SQLRPGLE

 Faites un copier de la requête de création de la table RTVSCDE qui se trouve dans le source du programme RTVSCDE ( Subroutine TabC ).

 Sur votre AS400, en SQL interactif, coller et exécuter la requête pour créer le fichier RTVSCDE dans la bibliothèque que vous voulez.

 Compilez le programme avec le fichier RTVSCDE en ligne par la commande CRTSQLRPGI.

 Si vous n’avez pas d’erreur de compilation (normalement non), vous pouvez l’exécuter.

Exécution du programme :

 Pour exécuter le programme et récupérer les infos du scheduler :

  • CALL RTVSCDE

 Pour exécuter le programme et recréer le fichier physique RTVSCDE, sans avoir besoin de réextraire la requête du source (lors d’une livraison du programme compilé sur un AS400 par exemple) :

  • CALL RTVSCDE PARM(‘O’)

Documentation de l’API.

 Documentation de l’API en cliquant ici

Print Friendly, PDF & Email