CPF0811
Longueur du paramètre RTNVAR incorrecte pour la zone de données.
Gravité 40 · Fin anormale du programme ou de la fonction
Cause
Le programme a tenté d'extraire le contenu de la zone de données &1 de la bibliothèque &2, pour l'inclure dans une variable de programme de longueur incorrecte. Si le paramètre RTNVAR est de type *LGL, la longueur de la zone de données ou de sa sous-chaîne n'est pas égale à 1. Si RTNVAR est de type *CHAR, la longueur du paramètre est donc inférieure à celle de la zone de données ou de sa sous-chaîne. Si RTNVAR est de type *DEC, le paramètre n'est pas assez long pour contenir les données figurant dans la zone de données indiquée.
Que faire
Affichez la zone de données (commande DSPDTAARA), afin de connaître sa taille et son contenu. Effectuez ensuite l'une des opérations suivantes, puis renouvelez la demande :
- Modifiez la taille du paramètre RTNVAR ou de la zone de données.
- Modifiez la longueur de la sous-chaîne.
- Modifiez le contenu de la zone de données.
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 | *CHAR |
10 |
Sur votre IBM i
Afficher la description complète du message :
DSPMSGD RANGE(CPF0811) MSGF(QSYS/QCPFMSG)
L'intercepter dans un programme CL, quand il est envoyé comme message d'échappement :
MONMSG MSGID(CPF0811) EXEC(DO)
/* traitement de l'erreur */
ENDDO