Aller au contenu

DSPJOBLOG

Afficher historique du travail

À quoi ça sert

Lire la boîte noire d'un travail : chaque commande exécutée et chaque message reçu, y compris l'erreur qui l'a fait échouer.

Pourquoi on fait ça

Un programme s'arrête avec « Erreur dans le programme » et rien d'autre. La vraie cause est dans l'historique du travail : un CPF ou un MCH, avec une explication détaillée qui dit presque toujours quoi corriger. C'est le réflexe numéro un de tout développeur IBM i.

Le cas concret

/* L'historique de ma session, la plus récente en bas */
DSPJOBLOG

/* L'historique d'un batch encore actif, imprimé pour analyse */
DSPJOBLOG  JOB(123456/SAK/FACTURNUIT) OUTPUT(*PRINT)

À l'écran, F10 affiche aussi les messages détaillés (masqués par défaut). Placez le curseur sur un message et appuyez sur F1 : l'écran « Cause / Que faire » s'ouvre.

Le piège classique

DSPJOBLOG ne fonctionne que sur un travail encore actif ou en file d'attente. Une fois le travail terminé, son historique est un spool nommé QPJOBLOG : cherchez-le avec WRKSPLF. S'il n'existe pas, c'est souvent que la description de travail indique LOG(4 0 *NOLIST), qui ne garde l'historique qu'en cas de fin anormale.

Voir aussi : WRKJOB, DSPJOB, WRKSPLF, WRKACTJOB, la fonction SQL QSYS2.JOBLOG_INFO.

Aide IBM i de la commande

Texte du F1, IBM i 7.5 en français (bibliothèque QSYS)

Où s'exécute : Tous les environnements (*ALL)
Compatible multitâche : Non

La commande DSPJOBLOG permet d'afficher les commandes et les messages associés à un travail qui est toujours actif alors que son historique n'a pas été écrit. Cette commande permet également d'afficher les commandes demandées pour un travail se trouvant encore en file d'attente et dont le traitement n'a pas commencé.

Cette commande permet de surveiller le déroulement d'un travail.

Remarque :Il est également possible d'accéder à cette fonction via les commandes DSPJOB (Afficher l'état d'un travail) et WRKJOB (Gérer un travail).

La fonction de table QSYS2.JOBLOG_INFO renvoie des informations similaires.

Restrictions :

  1. Pour afficher un historique du travail, vous devez disposer des droits *JOBCTL (droits d'exploitation des travaux) ou le travail doit avoir le même nom d'utilisateur que la personne qui lance la commande DSPJOBLOG.
  2. Pour afficher l'historique d'un travail auquel le droit spécial *ALLOBJ (tous les objets), a été associé, vous devez soit disposer de ce droit spécial, soit avoir accès à la fonction All Object Job Log de l'IBM i par le biais de l'administration d'application de System i Navigator. La commande CHGFCNUSG (Modifier utilisation de la fonction), avec un ID fonction QIBM_ACCESS_ALLOBJ_JOBLOG, permet également de modifier la liste des utilisateurs autorisés à afficher l'historique d'un travail avec droit spécial *ALLOBJ.

Paramètres

Mot-clé Description Valeurs possibles Remarques
JOB Travail Valeurs uniques: *
Autres valeurs: Nom de travail qualifié
Facultatif, positionnel 1
Qualificatif 1: Travail Nom
Qualificatif 2: Utilisat Nom
Qualificatif 3: Numéro 000000-999999
OUTPUT Sortie *, *PRINT, *APIDFN, *OUTFILE Facultatif, positionnel 2
OUTFILE Fichier recevant la sortie Nom d'objet qualifié Facultatif
Qualificatif 1: Fichier recevant la sortie Nom
Qualificatif 2: Biblio Nom, *LIBL, *CURLIB
OUTMBR Options pour membre de sortie Liste d'éléments Facultatif
Élément 1: Membre recevant la sortie Nom, *FIRST
Élément 2: Remplacement ou ajout enregs *REPLACE, *ADD
MSGF fichier message *MSG, *LIBL Facultatif
DUPJOBOPT Option pour travaux dupliqués *SELECT, *MSG Facultatif

Travail (JOB)

Indique le nom du travail dont l'historique doit être affiché.

Valeurs uniques

*
Le travail dont l'historique est affiché est celui dans lequel cette commande est lancée.

Autres valeurs

nom-qualifié-du-travail
Indiquez le nom du travail dont l'historique doit être affiché. Si le qualificatif du travail n'est pas mentionné, le nom est recherché parmi l'ensemble des travaux existants. S'il existe plusieurs occurrences du nom indiqué, une liste de messages contenant le nom qualifié des travaux est affichée.

Un identificateur de travail est une valeur spéciale ou un nom qualifié comportant jusqu'à trois éléments. Exemple :

*
nom-travail
nom-utilisateur/nom-travail
numéro-travail/nom-utilisateur/nom-travail

Sortie (OUTPUT)

Indique si le résultat de la commande doit être affiché sur le poste de travail d'où cette dernière a été lancée, imprimé avec la sortie spoule du travail ou envoyé vers un fichier base de données.

*
La sortie est affichée (s'il s'agit d'un travail interactif) ou imprimée avec la sortie spoule du travail (s'il s'agit d'un travail par lots).
*PRINT
Le résultat est placé dans un fichier spoule de la file d'attente en sortie du travail.
*OUTFILE
La sortie est envoyée vers le fichier base de données indiqué dans le paramètre OUTFILE. Cette option n'est disponible que si le paramètre JOB contient la valeur spéciale astérisque (*). Elle permet seulement d'obtenir un fichier de sortie primaire.
*APIDFN
La sortie est envoyée vers les fichiers base de données qui ont été déjà préparés via l'API QMHCTLJL. *APIDFN peut uniquement être indiqué si JOB(*) l'est également. Les paramètres OUTFILE et OUTMBR ne sont pas utilisés.

Cette value permet d'obtenir des fichiers de sortie primaire et secondaire. Si vous avez indiqué dans l'API un filtrage des messages, il sera appliqué avant l'écriture des messages dans la base de données. Le format base de données (QMHPFT) du fichier de sortie est le même que celui du fichier modèle QAMHJLPR fourni par IBM.

Fichier recevant la sortie (OUTFILE)

Indique le fichier de base de données vers lequel la sortie générée par la commande est dirigée. Si ce fichier n'existe pas, la commande en crée un dans la bibliothèque précisée. S'il existe déjà, les droits publics sur le fichier sont les mêmes que le droit de création de la pour la bibliothèque contenant le fichier. Pour afficher ce droit, utilisez la commande DSPLIBD (Afficher une description de bibliothèque).

Qualificatif 1 : Fichier recevant la sortie

nom
Indiquez le nom du fichier de base de données vers lequel la sortie générée de la commande est dirigée.

Qualificateur 2: Biblio

*LIBL
Le fichier est recherché dans la liste des bibliothèques. Si le système ne le trouve pas, il en crée un dans la bibliothèque en cours. S'il n'existe pas de bibliothèque en cours, le fichier est créé dans la bibliothèque QGPL.
*CURLIB
Bibliothèque de l'unité d'exécution en cours utilisée pour localiser le fichier. Si cette bibliothèque n'est pas indiquée, QGPL est utilisée par défaut.
nom
Indiquez le nom de la bibliothèque dans laquelle doit s'effectuer la recherche.

Options pour membre de sortie (OUTMBR)

Indique le nom du membre de fichier base de données dans lequel est envoyée la sortie de la commande.

Elément 1 : Membre recevant la sortie

*FIRST
Le premier membre du fichier reçoit la sortie. Si OUTMBR(*FIRST) est indiqué et que le membre n'existe pas, le système en crée un du nom indiqué à l'invite Fichier recevant la sortie (paramètre OUTFILE). Si le membre existe, vous avez la possibilité d'ajouter de nouveaux enregistrements à la fin du membre existant ou de le mettre à blanc et de lui ajouter les nouveaux enregistrements.
nom
Indiquez le nom du membre de fichier destiné à recevoir la sortie. Si aucun membre de ce nom n'existe, le système le crée.

Elément 2 : Remplacement ou ajout enregs

*REPLACE
Le système met à blanc le membre existant et ajoute les nouveaux enregistrements.
*ADD
Le système ajoute les nouveaux enregistrements à la suite des enregistrements existants.

fichier message (MSGF)

Indique comment le fichier message utilisé pour formater un message prédéfini est détecté. Les messages envoyés via un fichier message dans une bibliothèque spécifique sont toujours formatés à l'aide du fichier message de cette bibliothèque. Les messages envoyés via un fichier message détecté à l'aide de la liste des bibliothèques peuvent être formatés à l'aide de la liste des bibliothèques lorsque le message a été envoyé ou lorsque l'historique de travail s'affiche.

*MSG
Le fichier message détecté au moment de l'envoi du message est utilisé pour formater un message prédéfini.
*LIBL
La liste des bibliothèques du travail affichant l'historique du système permet de localiser le fichier message et de formater un message prédéfini.

Option pour travaux dupliqués (DUPJOBOPT)

Indique l'action effectuée lorsque des travaux en double sont détectés par cette commande.

*SELECT
L'écran de sélection s'affiche lorsque des travaux en double sont détectés lors d'une session interactive. Sinon, un message est émis.
*MSG
Un message est émis lorsque des travaux dupliqués sont détectés.

Exemples

DSPJOBLOG   JOB(ANDERSON/PAYROLL)  OUTPUT(*PRINT)

Cette commande génère un historique pour le travail PAYROLL de l'utilisateur ANDERSON.

Messages d'erreur

Messages *ESCAPE

CPF0941
Le travail &3/&2/&1 ne se trouve plus dans le système.
CPF1069
Fin des noms dupliqués.
CPF1070
Travail &3/&2/&1 non trouvé.
CPF24DB
L'option *APIDFN requiert que l'API QMHCTLJL soit exécutée au préalable.
CPF24D7
Le fichier &1 de la bibliothèque &2 ne peut pas être utilisé pour la production de l'historique du travail. File &1 in library &2 cannot be used for job log production.
CPF24D8
Le fichier DDM &1 de la bibliothèque &2 ne peut pas être utilisé pour la production de l'historique du travail. DDM file &1 in library &2 cannot be used for job log production.
CPF24E0
Erreur lors de l'écriture de l'historique du travail dans &1 de &2.
CPF2441
Vous n'êtes pas autorisé à afficher l'historique du travail.
CPF2443
Historique du travail non affiché ni listé car travail terminé.
CPF2523
Aucune information d'historique pour ce travail.
CPF2532
File d'attente de msg du travail endommagée. Historique du travail arrêté.
CPF9822
Non autorisé au fichier &1 de &2.
CPF9845
Erreur lors de l'ouverture du fichier &1.
CPF9846
Erreur lors du traitement du fichier &1 de &2.
CPF9847
Erreur lors de la fermeture du fichier &1 de bibliothèque &2.

© Copyright IBM Corp. Texte d'aide reproduit à des fins de formation.