CPF1964
Valeur de VALUE incorrecte pour variable numérique &3 dans programme &1.
Gravité 30 · Erreur grave
Cause
La valeur numérique ne permet pas de modifier la variable &3 pour l'une des raisons suivantes :
- La valeur est trop grande pour la variable.
- Les valeurs en virgule flottante *NAN, *INF et *NEGINF ne peuvent pas être utilisées pour modifier une variable numérique en virgule fixe.
- La valeur numérique indiquée ne peut pas être représentée avec exactitude dans la variable ; soit la valeur, soit la variable, ou encore les deux, sont en virgule flottante.
Que faire
Indiquez, au paramètre VALUE, une valeur numérique correcte ou, au paramètre PGMVAR, un nom de variable et utilisez le paramètre PGM pour sélectionner une variable pouvant se substituer à la valeur indiquée. Relancez ensuite la commande.
Description technique
Le système d'exploitation fonctionne généralement avec la condition de résultat inexact en virgule flottante masquée ; cette erreur ne se produit donc normalement pas parce qu'une valeur numérique ne peut pas être représentée exactement dans la variable.
The operating system generally operates with the floating-point inexact result condition masked, so this error does not normally occur because a numeric value could not be exactly represented in the variable.
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 | *CHAR |
variable |
Sur votre IBM i
Afficher la description complète du message :
DSPMSGD RANGE(CPF1964) MSGF(QSYS/QCPFMSG)
L'intercepter dans un programme CL, quand il est envoyé comme message d'échappement :
MONMSG MSGID(CPF1964) EXEC(DO)
/* traitement de l'erreur */
ENDDO