Aller au contenu

Message d'erreur IBM i (AS/400)

CPF703E

Opération journal impossible en raison d'une transaction DDL.

Gravité 40 · Fin anormale du programme ou de la fonction

Cause

Vous avez tenté d'exécuter une commande &3 sur le fichier &1 de la bibliothèque &2. Or, ce fichier fait partie d'une transaction de validation DDL (Langage de définition des données) active pour le travail &6/&5/&4, mais sans avoir été créé au titre de cette transaction. L'opération journal n'est donc pas possible. En effet, la commande &3 n'est applicable qu'à un fichier créé en tant qu'élément de cette transaction de validation DDL.

Que faire

Le travail &6/&5/&4 n'est pas actuellement actif. Procédez à l'une des opérations suivantes : 1 - Lancez un IPL afin de permettre la reprise du contrôle de validation pour le travail &6/&5/&4. Si le travail a été interrompu anormalement au cours d'une opération de validation, un IPL tente de terminer cette opération. Utilisez ensuite la commande DSPLOG (Afficher l'historique du système) pour déterminer le type de reprise effectué au cours de l'IPL. Le message CPI8356 signale le début de la reprise pour un travail donné. Les messages qui lui font immédiatement suite identifient les erreurs détectées au cours de la reprise. Si la reprise aboutit au cours de l'IPL pour le travail &6/&5/&4, vous pouvez relancer la commande &3 sur le fichier. Dans le cas contraire, supprimez le fichier à l'aide de la commande DLTF. Si le travail n'a pas été interrompu au cours d'une opération de validation, le système procède au retrait du fichier, celui-ci n'étant donc plus soumis à la reprise de contrôle pour la transaction de validation DDL. 2 - Si vous n'avez pas besoin du fichier, utilisez la commande DLTF pour le supprimer.

Variables du message

Quand le système envoie le message, chaque variable est remplacée par une valeur réelle : un nom d'objet, de bibliothèque, un code...

VariableTypeLongueur
&1 *CHAR 10
&2 *CHAR 10
&3 *CHAR 10
&4 *CHAR 10
&5 *CHAR 10
&6 *CHAR 6

Sur votre IBM i

Afficher la description complète du message :

DSPMSGD RANGE(CPF703E) MSGF(QSYS/QCPFMSG)

L'intercepter dans un programme CL, quand il est envoyé comme message d'échappement :

MONMSG MSGID(CPF703E) EXEC(DO)
  /* traitement de l'erreur */
ENDDO