Message d'erreur IBM i (AS/400)
CPF2F82
La définition de fichier &1 ne peut pas être liée au fichier.
Gravité 30 · Erreur grave
Cause
Cette définition de fichier contient des zones de longueur variable, des zones date/heure/horodatage ou bien des zones acceptant les valeurs indéfinies. Ces zones ne peuvent pas être utilisées pour un fichier décrit dans le programme.
Que faire
Effectuez l'une des opérations suivantes :
- Utilisez cette définition pour créer un nouveau fichier, à description externe.
- Modifiez la définition de fichier, de sorte que les zones de longueur variable, les zones data/heure/horodatage ou les zones acceptant les valeurs indéfinies ne soient pas utilisées.
- Liez le fichier à une définition différente, qui n'utilise pas les zones citées ci-dessus.
Description technique
Certains attributs de zone ne sont pris en charge que par les fichiers de base de données décrits de manière externe. Ils comprennent les suivants :
- Zones de type caractère SBCS de longueur variable
- Zones de date, d'heure et d'horodatage
- Zones autorisant les valeurs null
- Zones graphiques DBCS Les définitions de fichier contenant des zones ayant l'un des attributs ci-dessus ne peuvent pas être liées à un fichier décrit par programme.
Some field attributes are only supported by externally described database files. They include the following: -- Variable-length SBCS-character fields -- Date, Time, and Timestamp fields -- Fields that allow null values -- DBCS-graphic fields File definitions that contain fields with any of the above attributes cannot be linked to a program described file.
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 |
Sur votre IBM i
Afficher la description complète du message :
DSPMSGD RANGE(CPF2F82) MSGF(QSYS/QCPFMSG)
L'intercepter dans un programme CL, quand il est envoyé comme message d'échappement :
MONMSG MSGID(CPF2F82) EXEC(DO)
/* traitement de l'erreur */
ENDDO