Aller au contenu

Message d'erreur IBM i (AS/400)

CPF4152

Erreur à l'ouverture du membre *ALL du fichier &2 de &3.

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

Cause

Le paramètre MBR(*ALL) ne peut pas être utilisé avec CLEAR, EOFDLY, FMTSLR, INHWRT ou POSITION pour ouvrir le membre *ALL du fichier &2, dans la bibliothèque &3. De plus, le paramètre MBR(*ALL) ne peut pas être utilisé lors de l'ouverture du fichier &2 s'il s'agit d'un fichier DB2 Multisystem.

Que faire

Si le fichier &2, bibliothèque &3 est un fichier DB2 Multisystem, supprimez la substitution à l'aide de la commande DLTOVR. Spécifiez ensuite les paramètres MBR(*FIRST) ou MBR(*LAST) ainsi que tout autre paramètre admis dans la commande OVRDBF. Si le fichier &2, bibliothèque &3 n'est pas un fichier DB2 Multisystem, procédez comme suit pour obtenir l'ouverture du membre *ALL de &2 dans &3 :

  • Si l'un des paramètres POSITION, EOFDLY ou INHWRT a été indiqué, procédez à la substitution du fichier en spécifiant les paramètres POSITION(*NONE), EOFDLY(*NONE) ou INHWRT(*NO) et MBR(*ALL), et effectuez, le cas échéant, toutes les substitutions admises requises dans la commande OVRDBF ;
  • si le paramètre FMTSLR a été défini, supprimez la substitution à l'aide de la commande DLTOVR. Ensuite, indiquez le paramètre MBR(*ALL) ainsi, le cas échéant, que les autres attributs de substitution admis requis dans la commande OVRDBF ;
  • si le paramètre CLEAR a été défini, remplacez l'attribut de fichier par CLEAR(NO).

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
&2 *CHAR 10
&3 *CHAR 10

Sur votre IBM i

Afficher la description complète du message :

DSPMSGD RANGE(CPF4152) MSGF(QSYS/QCPFMSG)

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

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