Aller au contenu

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...

VariableTypeLongueur
&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