Aller au contenu

CPF1991

Aucun argument ne correspond au paramètre pour la variable &3.

Gravité 30 · Erreur grave

Cause

La variable &3 du programme &1, ou un pointeur de base nécessaire à la localisation de la variable, fait référence à un paramètre pour lequel aucun argument n'a été transmis.

Que faire

Effectuez l'une des opérations suivantes, puis relancez la commande :

  • S'il s'agit d'une variable pointée, vous pouvez indiquer un pointeur de base ne nécessitant pas le paramètre omis, au paramètre ADR, PGMVAR, PTR ou REFPTR.
  • Vérifiez que tous les pointeurs de base associés à la variable sont positionnés correctement et que tous les paramètres obligatoires sont transmis lorsque le programme est appelé. Vous pouvez utiliser la commande DSPPGMVAR (Afficher une variable de programme) pour afficher une valeur de pointeur et la commande CHGHLLPTR (Modifier un pointeur HLL) ou CHGPTR (Modifier un pointeur) pour modifier une variable de pointeur pour un objet de données.

Description technique

Si aucun pointeur de base n'a été indiqué dans la commande, la variable est déclarée définie ou basée sur un paramètre qui n'a pas été transmis lors de l'appel du programme. La variable qui exige le paramètre manquant est &3.

If no basing pointers were specified on the command, the variable is declared defined or based on a parameter that was not passed when the program was called. The variable that requires the missing parameter is &3.

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

Sur votre IBM i

Afficher la description complète du message :

DSPMSGD RANGE(CPF1991) MSGF(QSYS/QCPFMSG)

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

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