Message d'erreur IBM i (AS/400)
CPF7115
Nombre d'indices incorrect pour la variable &4.
Gravité 30 · Erreur grave
Cause
Le nombre d'indices indiqué ne correspond pas au nombre de dimensions pour la variable. La variable &4 du programme &1 a &2 dimension(s) de tableau.
Que faire
Au paramètre ADR, PGMVAR, PTR ou REFPTR, indiquez le nombre correct d'indices pour la variable et relancez la commande.
Description technique
Si le nombre de dimensions du tableau est zéro, la variable n'est pas un tableau et aucun indice ne peut donc être indiqué. Si la variable est un tableau, les considérations suivantes s'appliquent : 1. Pour le paramètre PGMVAR des commandes ADDBKP, ADDTRC ou DSPPGMVAR, vous pouvez afficher un tableau entier, une section de tableau à une dimension ou un seul élément de tableau. 2. Pour le paramètre ADR des commandes CHGPTR ou CHGHLLPTR, vous pouvez définir un pointeur sur l'adresse d'un tableau entier ou d'un seul élément de tableau. 3. Pour un pointeur de base sur n'importe quel paramètre de commande, et pour les paramètres PGMVAR, PTR ou REFPTR des commandes CHGPGMVAR, CHGPTR ou CHGHLLPTR, vous devez indiquer un seul élément de tableau.
If the number of array dimensions is zero, the variable is not an array so no subscripts can be specified. If variable is an array, the following considerations apply: 1. For the PGMVAR parameter on the ADDBKP, ADDTRC, or DSPPGMVAR command you can display an entire array, a single-dimensional array cross-section, or a single array element. 2. For the ADR parameter on the CHGPTR or CHGHLLPTR command, you can set a pointer to the address of an entire array, or a single array element. 3. For a basing pointer on any command parameter, and for the PGMVAR, PTR, or REFPTR parameter on the CHGPGMVAR, CHGPTR, or CHGHLLPTR command, you must specify a single array element.
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 |
| &2 | *BIN |
2 |
| &4 | *CHAR |
variable |
Sur votre IBM i
Afficher la description complète du message :
DSPMSGD RANGE(CPF7115) MSGF(QSYS/QCPFMSG)
L'intercepter dans un programme CL, quand il est envoyé comme message d'échappement :
MONMSG MSGID(CPF7115) EXEC(DO)
/* traitement de l'erreur */
ENDDO