CPF2845
La copie a échoué (code raison &2).
Gravité 40 · Fin anormale du programme ou de la fonction
Cause
La commande CPYFRMIMPF ou CPYTOIMPF a échoué (code raison &2). Signification des codes raison : 1 Valeur de CCSID ou de page de codes incorrecte. 2 La zone &1 du fichier de définition de zone n'est pas une zone du paramètre TOFILE. 3 Les données de la zone &1 du paramètre TOFILE comportent un séparateur décimal incorrect. 4 La zone &1 du paramètre TOFILE n'admet pas de valeur indéfinie, ou le paramètre FROMFILE ne contient pas assez de zones pour le paramètre TOFILE. TOFILE n'accepte pas les valeurs indéfinies. 5 Délimiteurs du format DTAFMT(*DLM) incorrects. 6 Le paramètre TOFILE ou ERRRCDFILE ne peut pas être mis à blanc. 7 La zone numérique &1 du paramètre FROMFILE contient des blancs ou d'autres caractères non admis. 8 La zone &1 du paramètre FROMFILE contient des caractères non admis dans une zone de date, d'heure ou d'horodatage. 9 Données de la zone &1 non admises au paramètre TOFILE. 10 Données du fichier de définition de zone non admises au paramètre TOFILE. 11 Le paramètre RCDDLM d'un fichier STREAM peut uniquement être *CR, *CRLF, *LF ou *LFCR et, pour un fichier base de données, le paramètre RCDDLM peut être défini par *EOR ou une valeur admise. 12 FROMFILE contient des types de données non pris en charge, par exemple, LOB. 13 FROMSTMF contient un enregistrement trop long pour être correctement importé. Cette erreur se produit lorsque aucun délimiteur d'enregistrement correct n'a été détecté avant dépassement de la mémoire tampon. 14 Un descripteur de connexion ne peut pas être attribué car un autre descripteur est déjà affecté au travail.
Que faire
Procédez comme suit : 1 FROMCCSID ou TOCCSID doit avoir une valeur de CCSID admise si le CCSID de fichier est 65535. Sinon, indiquez CCSID (*FILE). Sinon, les paramètres FROMCCSID, TOCCSID ou STMFCODPAG indiqués ne seront pas pris en charge. 2 Remplacez le nom de zone dans le fichier de définition de zone par le nom d'une zone au paramètre TOFILE. 3 Modifiez les données de FROMFILE de sorte que le séparateur décimal soit correct. 4 Modifiez les données de FROMFILE de sorte que la zone ne soit pas de type indéfini. 5 Indiquez des délimiteurs corrects pour le format DTAFMT(*DLM). 6 Mettez à blanc TOFILE ou ERRRCDFILE avec la commande CLRPFM. 7 Modifiez les données de FROMFILE. 8 Modifiez les données de FROMFILE. 9 Modifiez les données de FROMFILE. 10 Corrigez les données du fichier de définition de zone au paramètre FROMFILE. Si CPYFRMIMPF utilise un fichier STREAM, augmentez la longueur de STMFLEN. 11 Indiquez la valeur RCDDLM admise au paramètre. 12 Utilisez un paramètre FROMFILE ne contenant pas de zones de type LOB. 13 Aucun enreg du paramètre FROMSTMF ne doit dépasser 32 766 octets. 14 Le processus peut être effectué dans un autre travail.
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 | *BIN |
2 |
Sur votre IBM i
Afficher la description complète du message :
DSPMSGD RANGE(CPF2845) MSGF(QSYS/QCPFMSG)
L'intercepter dans un programme CL, quand il est envoyé comme message d'échappement :
MONMSG MSGID(CPF2845) EXEC(DO)
/* traitement de l'erreur */
ENDDO