CPF3131
Impossible d'initialiser membre &2 avec enreg par défaut.
Gravité 40 · Fin anormale du programme ou de la fonction
Cause
Le membre &2 du fichier &1 de la bibliothèque &3 n'a pu être initialisé avec les enregistrements par défaut : le chemin d'accès du membre &5, fichier &4 de la bibliothèque &6, a empêché cette initialisation pour la raison indiquée par le code &7. Les codes raison et leur signification sont les suivants : 1
- Le fichier a un chemin d'accès, une contrainte unique ou une contrainte de clé primaire ayant une clé unique, et les enregistrements par défaut produiraient des clés en double. L'initialisation de plusieurs enregistrements a été tentée ou une valeur de clé figure en double dans le fichier. 2
- Des spécifications de sélection/omission ont été indiquées pour le chemin d'accès et une erreur s'est produite lors de la sélection/omission. 3
- Le chemin d'accès a un mappage unique de clé de fichier logique et les enregistrements par défaut produiraient des clés en double. 4
- Le chemin d'accès possède une clé en virgule flottante mais la valeur par défaut de la zone clé n'est pas un nombre.
Que faire
Entrez le paramètre RECORDS(*DLT) pour initialiser le membre qui contient les enregistrements supprimés, ou enlevez le membre qui a empêché l'initialisation (commande RMVM). Si le nom des membres et des fichiers relatifs aux chemins d'accès est *N, il se peut que ces chemins aient été créés temporairement pour une analyse.
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 |
| &3 | *CHAR |
10 |
| &4 | *CHAR |
10 |
| &5 | *CHAR |
10 |
| &6 | *CHAR |
10 |
| &7 | *BIN |
2 |
Sur votre IBM i
Afficher la description complète du message :
DSPMSGD RANGE(CPF3131) MSGF(QSYS/QCPFMSG)
L'intercepter dans un programme CL, quand il est envoyé comme message d'échappement :
MONMSG MSGID(CPF3131) EXEC(DO)
/* traitement de l'erreur */
ENDDO