CPF1922
Variable &3 non trouvée dans le programme &1.
Gravité 30 · Erreur grave
Cause
Le nom &3 indiqué pour la variable, le pointeur de base ou l'indice, n'a pas été trouvé dans le programme. Soit le nom de la variable ou du qualifiant a été mal orthographié, soit la valeur numérique de l'indice est incorrecte. Il se peut également qu'un programme inadéquat ait été utilisé pour trouver la variable.
Que faire
Indiquez, au paramètre ADR, PGMVAR, PTR ou REFPTR, un nom de variable correct et, au paramètre PGM, un nom de programme approprié. Relancez ensuite la commande.
Description technique
Un nom de variable doit être orthographié de la même manière que dans le langage de haut niveau (HLL) utilisé pour créer le programme. Le nom complet de la variable (y compris tous les noms de qualificatifs et les valeurs d'indice) doit être placé entre apostrophes si des caractères spéciaux sont utilisés. Une valeur d'indice numérique ne doit contenir que les chiffres 0-9 et un signe initial facultatif. Si un indice ne respecte pas ces règles (par exemple s'il contient des blancs intégrés ou un point décimal), il est considéré comme un nom de variable HLL. Pour une variable d'un programme CL, le nom doit être placé entre apostrophes et commencer par une esperluette. La variable non trouvée est &3.
A variable name must be spelled the same way it is specified in the high-level language (HLL) used to create the program. The entire variable name (including all qualifier names and subscript values) must be enclosed in apostrophes if special characters are used. A numeric subscript value must contain only the digits 0-9 and an optional leading sign. If a subscript does not follow these rules (such as if it contains embedded blanks or a decimal point), it is assumed to be an HLL variable name. For a variable in a CL program, the name must be enclosed in apostrophes and must start with an ampersand. The variable not found 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...
| Variable | Type | Longueur |
|---|---|---|
| &1 | *CHAR |
10 |
| &3 | *QTDCHAR |
variable |
Sur votre IBM i
Afficher la description complète du message :
DSPMSGD RANGE(CPF1922) MSGF(QSYS/QCPFMSG)
L'intercepter dans un programme CL, quand il est envoyé comme message d'échappement :
MONMSG MSGID(CPF1922) EXEC(DO)
/* traitement de l'erreur */
ENDDO