CPYFRMIMPF
Copier depuis fich importation
En bref
La commande CPYFRMIMPF (Copier depuis un fichier d'importation) permet de copier tout ou partie d'un fichier d'importation dans le fichier indiqué au paramètre TOFILE.
CPYFRMIMPF se lit CPY
(Copier) + FRMIMPF.
Sur IBM i, le nom d'une commande associe presque toujours un verbe et un objet.
Syntaxe minimale
CPYFRMIMPF TOFILE(…)
Paramètres
-
FROMSTMFFichier STREAM d'origine -
FROMFILEFichier d'origine -
TOFILEFichier BD de destination obligatoire -
MBROPTRemplacement ou ajout enregs -
STMFLENLongueur enreg fichier STREAM -
FROMCCSIDCCSID d'origine -
TOCCSIDCCSID de destination -
RCDDLMDélimiteur d'enregistrement -
DTAFMTFormat enr fichier importation -
STRDLMDélimiteur de chaîne -
STRESCCHRCaractère d'échap de chaîne -
RMVBLANKRetrait des blancs -
FLDDLMDélimiteur de zone -
FLDDFNFILEFichier de définition de zone -
DECPNTSymbole décimal -
DECFLTRNDMode arrondi virg flot décimal -
DATFMTFormat de date -
DATSEPSéparateur de date -
TIMFMTFormat d'heure -
TIMSEPSéparateur d'heure -
FROMRCDCopie depuis numéro d'enreg -
ERRLVLNombre d'erreurs admises -
ERRRCDFILEFichier enreg d'erreurs -
ERRRCDOPTRemplacement ou ajout enreg. -
RPLNULLVALRemplacement valeurs indéf -
IDCOLColonne d'identité -
RMVCOLNAMSuppression de noms de colonne
Astuce : dans une session 5250, tapez CPYFRMIMPF puis F4 pour
l'invite de saisie, et F1 sur un paramètre pour son aide.
Aide IBM i de la commande
Texte du F1, IBM i 7.5 en français
(bibliothèque QSYS)
Où s'exécute : Tous les environnements (*ALL)
Compatible multitâche : Non
La commande CPYFRMIMPF (Copier depuis un fichier d'importation) permet de copier tout ou partie d'un fichier d'importation dans le fichier indiqué au paramètre TOFILE. Le terme fichier d'importation est utilisé pour décrire un fichier créé dans le but de permettre la copie de données entre des bases de données hétérogènes. Le fichier d'importation (paramètre FROMSTMF ou FROMFILE) est appelé fichier d'origine dans cette commande.
Cette commande permet notamment de copier des données en parallèle. Le parallélisme est activé pour les fichiers comportant au moins 50000 enregistrements. Les enregistrements ne sont pas copiés en parallèle lorsque le paramètre FROMSTMF est spécifié. Le nombre de tâches mises en oeuvre pour exécuter la copie peut ainsi être défini au paramètre DEGREE de la commande CHGQRYA (Modifier les attributs de requête). Pour des performances optimales, le nombre de tâches doit correspondre au nombre d'UC + 1.
Par exemple, si le système comporte deux UC, indiquez CHGQRYA DEGREE(*NBRTASKS 3)
Pour permettre l'utilisation de plusieurs tâches, le dispositif SMP (multitraitement symétrique) doit être installé sur le système.
Lors d'une copie depuis un fichier bande, un fichier de la bibliothèque QTEMP, un fichier réparti ou un fichier logique, une seule tâche sera utilisée. Pour plus d'informations, reportez-vous à la commande CHGQRYA.
La commande CPYFRMIMPF permet d'exécuter entre autres les fonctions spécifiques suivantes :
- Copie d'un fichier d'origine vers un fichier physique à description externe. Le fichier de destination doit exister sur le système pour que la copie puisse aboutir.
- Restriction du nombre d'enregistrements copiés en fonction de numéros d'enregistrements de début et de fin relatifs.
- Ajout d'enregistrements dans un membre de fichier existant ou substitution du contenu d'un membre de fichier en réception (paramètre MBROPT).
Gestion des erreurs : Le message d'arrêt programme CPF2817 est émis pour les nombreuses erreurs susceptibles de se produire au cours d'une opération de copie. Il est toujours précédé d'au moins un message de diagnostic indiquant le cas d'erreur spécifique. Pour plus de détails, consultez le manuel Catégorie des fichiers et systèmes de fichiers de l'IBM i Information Center, à l'adresse http://www.ibm.com/systems/i/infocenter/.
Substitution : Les substitutions sont traitées pour tous les fichiers.
Message d'état : Pendant l'exécution de la commande CPYFRMIMPF, le message CPI2801 est émis sous la forme d'un message d'état informant l'utilisateur interactif qu'une opération de copie est en cours. Pour savoir comment empêcher l'affichage de ces messages d'état, consultez le manuel Catégorie des fichiers et systèmes de fichiers de l'IBM i Information Center, à l'adresse http://www.ibm.com/systems/i/infocenter/.
Performances :
Pour accroître les performances de l'opération de copie :
- Supprimez tous les fichiers logiques à clé dépendant du fichier de destination.
- Désactivez l'intégralité des contraintes et déclencheurs du fichier de destination.
- Pour vous assurer que les enregistrements du fichier d'origine seront correctement copiés, essayez d'en copier quelques-uns au moyen des options FROMRCD et Nombre d'enregistrements.
- Après vous être assuré que les données seront correctement copiées, utilisez le paramètre ERRLVL(*NOMAX).
Remarques relatives aux données de délimitation :
- Un blanc (' ') ne peut pas être utilisé comme délimiteur.
- Un blanc (' ') ne peut pas figurer dans une zone numérique.
- Les zones du fichier d'origine dont la longueur est supérieure à celle des zones correspondantes dans le fichier de destination seront tronquées (à droite).
- Si les données du fichier d'origine ne représentent pas l'ensemble des zones du fichier de destination, ces dernières prendront une valeur indéfinie. Si c'est le cas et que les zones du fichier de destination n'admettent pas les valeurs indéfinies, une erreur se produit et l'enregistrement n'est pas copié dans le fichier de destination.
- Une zone indéfinie du fichier d'origine peut être indiquée par deux délimiteurs de zone adjacents, deux délimiteurs de chaîne adjacents ou un délimiteur de zone suivi d'un délimiteur d'enregistrement.
- Une zone de fichier d'origine contenant tous les caractères blancs à stocker dans une zone de longueur fixe d'un fichier de destination conservera les caractères blancs même si le retrait de ces derniers est demandé.
- Une zone de fichier d'origine contenant tous les caractères blancs à stocker dans une zone de longueur variable d'un fichier de destination sera représentée comme un seul caractère vide significatif lorsque le retrait des caractères blancs est indiqué.
Remarques relatives aux données fixes : Les informations de chaque zone du fichier de format fixe doivent apparaître dans l'ordre suivant :
Nom Position Position Position zone de début de fin caractère indéfini _________________________________________________________ Zone1 1 10 11 Zone2 12 15 16 *END
Dans ce cas, les informations du fichier de définition de zone sont les suivantes :
- La colonne Nom zone contient le nom de la zone dans le fichier de destination.
- La colonne Position de début indique la position d'octet dans le fichier d'origine à partir de laquelle la copie de données doit s'effectuer pour la zone.
- La colonne Position de fin indique la position d'octet dans le fichier d'origine représentant la fin de la copie de données pour la zone.
- La colonne Position caractère indéfini correspond à la position d'octet dans le fichier d'origine indiquant si la zone est indéfinie. La valeur 'Y' précise que la zone est indéfinie, contrairement à la valeur 'N'. La valeur 0 apparaît si aucun caractère indéfini n'est spécifié.
- L'indicateur *END désigne la fin du fichier de définition de zone.
Dans l'exemple précédent, le fichier de définition de zone comporterait :
Zone1 1 10 11 Zone2 12 15 16 *END
- L'autre méthode permettant de créer le fichier de définition de zone consiste à utiliser le mot clé *COL au lieu des noms de colonne réels. *COL indique les positions des données dans le fichier STREAM pour toutes les colonnes de fichiers cible ordonnées.
Exemple de fichier de définition de zone utilisant *COL :
*COL 1 10 11 *COL 12 15 16 *END
Remarques pour les zones de données de types LOB et XML
Les zones de données de types LOB et XML nécessitent l'utilisation de fichiers STREAM secondaires contenant les données LOB ou XML ainsi qu'un fichier de définition de zone décrivant les décalages des zones dans le fichier. Chaque enregistrement représentant une donnée LOB ou XML dans le fichier d'importation contient le nom d'un fichier STREAM secondaire en lieu et place des données.
Remarque :L'exemple ci-après illustre 3 fichiers STREAM secondaires (lob1.dat, lob2.dat et lob3.dat) dans le répertoire "/lobdata", contenant les données LOB réelles à importer.
Utilisation du fichier de définition de zone suivant :
Nom Position Position Position zone de début de fin caractère indéfini _________________________________________________________ Zone1 1 10 42 Zone2 12 40 44 *END
Le fichier d'importation contiendrait des longueurs d'enregistrement de 44 caractères (d'après le fichier de définition de zone ci-dessus) et les données suivantes :
0 1 2 3 4 /Position
12345678901234567890123456789012345678901234 /caractère
aaaaaaaaaa /lobdata/lob1.dat N N
bbbbbb /lobdata/lob2.dat N N
/lobdata/lob3.dat Y N
cccccccccc N Y
Restrictions :
- Les fichiers d'origine et de destination ne peuvent pas être identiques.
- Le fichier de destination doit exister avant l'opération de copie.
- Le fichier de destination ne comportera pas les mêmes numéros d'enregistrement relatifs que le fichier d'origine.
- Le fichier d'origine doit indiquer un fichier source ou un fichier admis comportant 1 zone qui ne soit pas de type numérique.
- Si le fichier d'origine est défini à l'aide de l'option SHARE(*YES), les résultats sont imprévisibles. En conséquence, vous devez vous assurer que le fichier n'est pas ouvert par un autre processus avant l'opération de copie.
Remarque : Ne faites pas précéder une entrée d'un astérisque sauf si celle-ci est une "valeur spéciale" présentée (dans l'écran lui-même ou dans les informations d'aide) avec un astérisque.
Paramètres
| Mot-clé | Description | Valeurs possibles | Remarques |
|---|---|---|---|
| FROMSTMF | Fichier STREAM d'origine | Chemin d'accès | Facultatif, positionnel 2 |
| FROMFILE | Fichier d'origine | Liste d'éléments | Facultatif, positionnel 3 |
| Élément 1: Fichier | Nom d'objet qualifié | ||
| Qualificatif 1: Fichier | Nom | ||
| Qualificatif 2: Biblio | Nom, *LIBL, *CURLIB | ||
| Élément 2: Membre | Nom, *FIRST, *ALL | ||
| TOFILE | Fichier BD de destination | Liste d'éléments | Obligatoire, positionnel 1 |
| Élément 1: Fichier | Nom d'objet qualifié | ||
| Qualificatif 1: Fichier | Nom | ||
| Qualificatif 2: Biblio | Nom, *LIBL, *CURLIB | ||
| Élément 2: Membre | Nom, *FIRST, *FROMMBR, *ALL | ||
| MBROPT | Remplacement ou ajout enregs | *ADD, *REPLACE, *UPDADD | Facultatif |
| STMFLEN | Longueur enreg fichier STREAM | Entier, *TOFILE | Facultatif |
| FROMCCSID | CCSID d'origine | 1-65533, *FILE | Facultatif |
| TOCCSID | CCSID de destination | 1-65533, *FILE | Facultatif |
| RCDDLM | Délimiteur d'enregistrement | Valeur caractère, *ALL, *CRLF, *LF, *CR, *LFCR, *EOR | Facultatif |
| DTAFMT | Format enr fichier importation | *DLM, *FIXED | Facultatif |
| STRDLM | Délimiteur de chaîne | Valeur caractère, *DBLQUOTE, *NONE | Facultatif |
| STRESCCHR | Caractère d'échap de chaîne | Valeur caractère, *STRDLM, *NONE | Facultatif |
| RMVBLANK | Retrait des blancs | *NONE, *LEADING, *TRAILING, *BOTH | Facultatif |
| FLDDLM | Délimiteur de zone | Valeur caractère, ',', *TAB | Facultatif |
| FLDDFNFILE | Fichier de définition de zone | Liste d'éléments | Facultatif |
| Élément 1: Fichier | Nom d'objet qualifié | ||
| Qualificatif 1: Fichier | Nom | ||
| Qualificatif 2: Biblio | Nom, *LIBL, *CURLIB | ||
| Élément 2: Membre | Nom, *FIRST, *ALL | ||
| DECPNT | Symbole décimal | *PERIOD, *COMMA | Facultatif |
| DECFLTRND | Mode arrondi virg flot décimal | *HALFEVEN, *HALFDOWN, *HALFUP, *UP, *CEILING, *DOWN, *FLOOR | Facultatif |
| DATFMT | Format de date | *ISO, *USA, *EUR, *JIS, *MDY, *DMY, *YMD, *JUL, *YYMD | Facultatif |
| DATSEP | Séparateur de date | '/', '-', '.', ',', *BLANK | Facultatif |
| TIMFMT | Format d'heure | *ISO, *USA, *EUR, *JIS, *HMS | Facultatif |
| TIMSEP | Séparateur d'heure | ':', '.', *BLANK | Facultatif |
| FROMRCD | Copie depuis numéro d'enreg | Liste d'éléments | Facultatif |
| Élément 1: Copie depuis numéro d'enreg | Entier non signé, *FIRST | ||
| Élément 2: Nombre d'enreg à copier | Entier non signé, *END | ||
| ERRLVL | Nombre d'erreurs admises | Entier non signé, *NOMAX | Facultatif |
| ERRRCDFILE | Fichier enreg d'erreurs | Valeurs uniques: *NONE Autres valeurs: Liste d'éléments |
Facultatif |
| Élément 1: Fichier | Nom d'objet qualifié | ||
| Qualificatif 1: Fichier | Nom | ||
| Qualificatif 2: Biblio | Nom, *LIBL, *CURLIB | ||
| Élément 2: Membre | Nom, *FIRST, *ALL | ||
| ERRRCDOPT | Remplacement ou ajout enreg. | *ADD, *REPLACE | Facultatif |
| RPLNULLVAL | Remplacement valeurs indéf | *NO, *FLDDFT | Facultatif |
| IDCOL | Colonne d'identité | *GEN, *FROMFLD | Facultatif |
| RMVCOLNAM | Suppression de noms de colonne | *NO, *YES | Facultatif |
Fichier STREAM d'origine (FROMSTMF)
Indique le chemin d'accès au fichier STREAM à partir duquel doivent être copiées les données. Soit ce paramètre, soit le paramètre FROMFILE est obligatoire.
- nom-chemin
- Indiquez le chemin d'accès au fichier STREAM en entrée.
Remarque :Ce paramètre est compatible Unicode. Pour plus d'informations, reportez-vous à la section sur la prise en charge Unicode dans CL, dans les Rubriques CL de la catégorie Programmation de l'IBM i Information Center, à l'adresse http://www.ibm.com/systems/i/infocenter/.
Fichier d'origine (FROMFILE)
Indique le fichier d'origine et le membre du fichier contenant les enregistrements à copier. Soit ce paramètre, soit le paramètre FROMSTMF est obligatoire.
Les différents types de fichier d'origine possibles sont les suivants :
- fichier physique source,
- fichier DDM,
- fichier physique réparti,
- fichier physique décrit dans les programmes,
- fichier logique à format unique,
- fichier physique comportant une zone de type non numérique,
- fichier bande.
Elément 1 : Fichier
-
Qualificatif 1 : Fichier
- nom
- Indiquez le nom du fichier contenant les enregistrements à copier.
-
Qualificatif 2 : Biblio
- *LIBL
- La recherche porte sur toutes les bibliothèques de la liste des bibliothèques de l'unité d'exécution en cours jusqu'à ce que la première occurrence soit trouvée.
- *CURLIB
- La recherche porte sur la bibliothèque en cours de l'unité d'exécution. Si aucune bibliothèque n'est définie comme bibliothèque en cours pour l'unité d'exécution, la recherche porte sur la bibliothèque QGPL.
- nom
- Indiquez le nom de la bibliothèque dans laquelle doit s'effectuer la recherche.
Elément 2 : Membre
- *FIRST
- Le premier membre (par ordre de date de création) du fichier d'origine est utilisé. La valeur *FIRST n'est pas admise si le fichier d'origine ne comporte aucun membre, à moins qu'un nom de membre ne soit indiqué dans une commande OVRDBF (Substituer un fichier base de données) appliquée au fichier d'origine.
- *ALL
- Tous les membres du fichier d'origine indiqué doivent être copiés. L'option *ALL n'est pas admise pour un fichier bande.
- nom
- Indiquez le nom du membre de fichier à utiliser.
Fichier BD de destination (TOFILE)
Indique le fichier et membre base de données en sortie destiné à recevoir les enregistrements copiés. Le fichier en sortie est également appelé fichier de destination.
Les différents types de fichier de destination possibles sont les suivants :
- fichier physique source,
- fichier DDM,
- fichier physique réparti,
- fichier physique décrit dans les programmes,
- fichier physique à description externe.
Ce paramètre est obligatoire.
Elément 1 : Fichier
-
Qualificatif 1 : Fichier
- nom
- Indiquez le nom du fichier destiné à recevoir les enregistrements copiés.
-
Qualificatif 2 : Biblio
- *LIBL
- La recherche porte sur toutes les bibliothèques de la liste des bibliothèques de l'unité d'exécution en cours jusqu'à ce que la première occurrence soit trouvée.
- *CURLIB
- La recherche porte sur la bibliothèque en cours de l'unité d'exécution. Si aucune bibliothèque n'est définie comme bibliothèque en cours pour l'unité d'exécution, la recherche porte sur la bibliothèque QGPL.
- nom
- Indiquez le nom de la bibliothèque dans laquelle doit s'effectuer la recherche.
Elément 2 : Membre
- *FIRST
- Le premier membre (par ordre de date de création) du fichier en sortie est utilisé. La valeur *FIRST n'est pas admise si le fichier de destination ne comporte aucun membre, à moins qu'un nom de membre ne soit indiqué dans une commande OVRDBF (Substituer un fichier base de données) appliquée au fichier de destination.
- *ALL
- Les données sont copiées dans le membre de destination approprié de la table partitionnée. La valeur *ALL est admise uniquement pour les tables partitionnées.
- *FROMMBR
- Cette valeur impose une correspondance entre les noms de membres des fichiers d'origine et des fichiers de destination.
- nom
- Indiquez le nom du membre de fichier destiné à recevoir les enregistrements copiés. Si un membre de ce nom n'existe pas déjà dans ce fichier, il sera créé.
Remplacement ou ajout enregs (MBROPT)
Indique si l'opération de copie remplace, ajoute, ou met à jour les enregistrements d'un membre de fichier base de données lorsqu'un membre de ce nom existe déjà. Si ce membre n'existe pas, il est créé et ajouté au fichier base de données.
Remarque :Si *ADD ou *UPDADD est indiqué et que le fichier de destination ne contient pas d'enregistrements, l'opération de copie s'exécute normalement. Si *REPLACE est indiqué et que le fichier de destination ne contient pas d'enregistrements, l'opération se termine anormalement.
- *ADD
- Les enregistrements copiés sont ajoutés après ceux du membre.
- *REPLACE
- Les enregistrements copiés remplacent ceux du membre.
- *UPDADD
- Le système met à jour les enregistrements à clés en double et ajoute les nouveaux enregistrements à la suite des enregistrements existants. Pour plus d'informations, reportez-vous au manuel Catégorie des fichiers et systèmes de fichiers de l'IBM i Information Center, à l'adresse http://www.ibm.com/systems/i/infocenter/.
Longueur enreg fichier STREAM (STMFLEN)
Longueur maximale d'un enregistrement du fichier STREAM lorsque *DLM est indiqué à l'invite Format enr fichier importation (paramètre DTAFMT) ou longueur effective de tous les enregistrements du fichier STREAM lorsque le paramètre DTAFMT a pour valeur *FIXED.
- *TOFILE
- La longueur d'enregistrement du fichier de destination est utilisée.
- longueur-enregistrement
- Indiquez la longueur d'enregistrement à utiliser pour chaque enregistrement du fichier STREAM.
CCSID d'origine (FROMCCSID)
Indique le CCSID du fichier d'origine.
- *FILE
- Le CCSID du fichier d'origine est utilisé. Si le fichier d'origine est un fichier bande, le CCSID par défaut du travail est utilisé.
- 1-65533
- Indiquez le CCSID à utiliser si le fichier d'origine possède le CCSID 65535 ou s'il s'agit d'un fichier bande. Si le fichier d'origine ne possède pas le CCSID 65535 ou s'il ne s'agit pas d'un fichier bande, un message d'erreur est généré.
CCSID de destination (TOCCSID)
Indique le CCSID à utiliser pour les zones du fichier de destination.
- *FILE
- Les données sont converties au CCSID de zone du fichier de destination. Si le CCSID du fichier de destination est 65535, la zone n'est pas convertie et elle est traitée comme si elle contenait des données binaires.
- 1-65533
- Indiquez le CCSID à utiliser lorsque le CCSID de la zone du fichier de destination est 65535. Si le CCSID de la zone du fichier de destination n'est pas 65535, ce paramètre n'est pas pris en compte.
Délimiteur d'enregistrement (RCDDLM)
Indique le délimiteur d'enregistrement à utiliser.
Si le paramètre FROMFILE est défini, les valeurs admises sont *EOR ou une valeur alphanumérique. Si le paramètre FROMSTMF est défini, les valeurs admises sont *CR, *CRLF, *LF, *LFCR ou *ALL.
- *EOR
- Fin d'enregistrement.
- *ALL
- Première combinaison d'un ou de deux caractères de retour ligne et saut de ligne.
- *CRLF
- Retour ligne suivi d'un saut de ligne.
- *LF
- Saut de ligne.
- *CR
- Retour ligne.
- *LFCR
- Saut de ligne suivi d'un retour ligne.
- valeur-alphanumérique
- Spécifiez le caractère indiquant la fin d'un enregistrement unique.
Format enr fichier importation (DTAFMT)
Indique le format des données du fichier d'origine.
- *DLM
- Les données contiennent des caractères de délimitation. Pour plus de détails sur les caractères de délimitation de chaîne, de zone et d'enregistrement, reportez-vous aux descriptions de paramètres des commandes STRDLM, FLDDLM et RCDDLM.
- *FIXED
- Format de données fixe. Les données figurent dans des colonnes de données fixes dans chaque enregistrement. La description du format des données est contenue dans le membre de fichier identifié par le paramètre FLDDFNFILE. Reportez-vous à la description du paramètre RCDDLM pour en savoir plus sur le délimiteur d'enregistrement.
Délimiteur de chaîne (STRDLM)
Indique le délimiteur de chaîne utilisé pour les données des zones faisant l'objet d'une opération de copie. Le caractère spécifié permet d'indiquer le début et la fin des chaînes alphanumériques, de date, d'heure et d'horodatage dans le fichier d'origine. Suivant le programme utilisé pour créer le fichier d'origine, il est possible que certains types de chaînes ne comportent aucun délimiteur dans le fichier d'origine.
Le caractère délimiteur indiqué sera converti du CCSID du travail au CCSID du fichier d'origine.
- *DBLQUOTE
- Un guillemet est utilisé comme délimiteur de chaîne.
- *NONE
- Aucun caractère n'est défini comme délimiteur de chaîne. La valeur *NONE représente un blanc ( ).
- valeur-alphanumérique
- Indiquez la valeur alphanumérique utilisée comme délimiteur de chaîne.
Caractère d'échap de chaîne (STRESCCHR)
Indique le caractère à rechercher dans les zones de chaîne du fichier d'origine. Les zones alphanumériques dans le fichier d'origine peuvent contenir des caractères ayant une signification particulière pour CPYFRMIMPF. Ces caractères sont le délimiteur de chaîne de caractères et le caractère d'échappement de chaîne lui-même. Par conséquent, il se peut que CPYFRMIMPF interprète de façon erronée les données et génère des résultats inattendus.
Le caractère d'échappement de chaîne précède ces caractères dans les données et révoque leur signification particulière. CPYFRMIMPF peut alors déterminer si le caractère est une donnée ou un délimiteur de chaîne de caractères. Les caractères d'échappement ne sont pas importés dans le fichier de destination.
Ce paramètre décrit la méthode utilisée par l'utilitaire d'exportation pour les zones alphanumériques qui contenaient le caractère d'échappement de chaîne ou le délimiteur de chaîne.
Le caractère d'échappement de chaîne spécifié sera converti du CCSID du travail au CCSID du fichier d'origine. Si le CCSID du fichier d'origine est 1200, 1208 ou 13488, le caractère d'échappement de chaîne est converti au CCSID du travail ou au CCSID par défaut du travail lorsque le CCSID du travail est 65535.
- *STRDLM
- Le délimiteur de chaîne de caractères est utilisé comme caractère d'échappement. Si une zone de données alphanumériques contient deux caractères délimiteur de chaîne adjacents, ceux-ci sont interprétés comme des caractères de données simples.
- *NONE
- Aucun caractère d'échappement de chaîne ne figure dans les données. Si des caractères délimiteur de chaîne sont présents dans les données, ils sont traités comme des délimiteurs de chaîne.
- valeur-alphanumérique
- Indiquez le caractère à utiliser comme caractère d'échappement.
Retrait des blancs (RMVBLANK)
Indique si les blancs doivent être enlevés ou conservés.
- *LEADING
- Les blancs à gauche sont enlevés.
- *TRAILING
- Les blancs de fin sont enlevés.
- *BOTH
- Les blancs à gauche et les blancs de fin sont enlevés.
- *NONE
- Tous les blancs à gauche et les blancs de fin sont conservés.
Délimiteur de zone (FLDDLM)
Indique le délimiteur de zone utilisé dans l'enregistrement faisant l'objet d'une opération de copie. La valeur spécifiée permet de déterminer la fin d'une zone donnée et le début de la suivante.
- ','
- La virgule est le délimiteur de zone par défaut.
- *TAB
- Le caractère de tabulation horizontale est utilisé comme délimiteur de zone.
- valeur-alphanumérique
- Indiquez la valeur alphanumérique utilisée comme délimiteur de zone.
Fichier de définition de zone (FLDDFNFILE)
Indique le fichier de définition de zone qui définit le format des données lorsque la valeur *FIXED est spécifiée au paramètre DTAFMT (Format enr fichier importation). Si DTAFMT(*FIXED) est spécifié, ce paramètre est requis.
Les différents types de fichier de définition de zone possibles sont les suivants :
- fichier physique source,
- fichier DDM,
- fichier physique réparti,
- fichier physique décrit dans les programmes,
- fichier physique à description externe comportant une zone.
Elément 1 : Fichier
-
Qualificatif 1 : Fichier
- nom
- Indiquez le nom du fichier contenant la définition de zone fixe.
-
Qualificatif 2 : Biblio
- *LIBL
- La recherche porte sur toutes les bibliothèques de la liste des bibliothèques de l'unité d'exécution en cours jusqu'à ce que la première occurrence soit trouvée.
- *CURLIB
- La recherche porte sur la bibliothèque en cours de l'unité d'exécution. Si aucune bibliothèque n'est définie comme bibliothèque en cours pour l'unité d'exécution, la recherche porte sur la bibliothèque QGPL.
- nom
- Indiquez le nom de la bibliothèque dans laquelle doit s'effectuer la recherche.
Elément 2 : Membre
- *FIRST
- Le premier membre (par ordre de date de création) du fichier de définition de zone est utilisé.
- nom
- Indiquez le nom du membre de fichier de définition de zone à utiliser.
Symbole décimal (DECPNT)
Indique le caractère à utiliser comme symbole décimal lors de la copie de données numériques à partir du fichier d'origine.
- *PERIOD
- Un point (.) est utilisé comme symbole décimal.
- *COMMA
- Une virgule (,) est utilisée comme symbole décimal.
Mode arrondi virg flot décimal (DECFLTRND)
Indique le mode utilisé pour arrondir les données décimales en virgule flottante.
- *HALFEVEN
- Arrondit au plus près ; si les données sont équidistantes, arrondit de sorte que le chiffre final soit pair. Si les chiffres négligés représentent plus de la moitié (0,5) de la valeur de un dans la position de gauche suivante, le coefficient du résultat doit être incrémenté de un (arrondi par excès). S'ils représentent moins de la moitié, le coefficient du résultat n'est pas ajusté (les chiffres négligés sont ignorés). Dans les autres cas (ils représentent exactement la moitié), le coefficient du résultat reste inchangé si son chiffre de poids faible est pair, ou incrémenté de un (arrondi par excès) si son chiffre de poids faible est impair (l'objectif étant de créer un chiffre pair). Il s'agit de la valeur par défaut du paramètre.
- *HALFDOWN
- Arrondit au plus près ; si les données sont équidistantes, arrondit par défaut. Si les chiffres négligés représentent plus de la moitié (0,5) de la valeur de un dans la position de gauche suivante, le coefficient du résultat doit être incrémenté de un (arrondi par excès). Si les chiffres négligés sont inférieurs ou égaux à 0,5, ils sont ignorés.
- *HALFUP
- Arrondit au plus près ; si les données sont équidistantes, arrondit par excès. Si les chiffres négligés sont supérieurs ou égaux à la moitié (0,5) de la valeur de un dans la position de gauche suivante, le coefficient du résultat doit être incrémenté de un (arrondi par excès). Sinon, les chiffres négligés sont ignorés.
- *UP
- Arrondit en enlevant les 0. Si tous les chiffres négligés sont des zéros, le résultat est inchangé sauf que les chiffres négligés sont supprimés. Dans le cas contraire, le coefficient du résultat doit être incrémenté de 1 (arrondi par excès).
- *CEILING
- Arrondit vers +infinité. Si tous les chiffres négligés sont des zéros ou si le signe est négatif, le résultat est inchangé sauf que les chiffres négligés sont supprimés. Sinon, le coefficient du résultat doit être incrémenté de 1 (arrondi par excès).
- *DOWN
- Arrondit vers 0. Les chiffres négligés sont ignorés. Cette fonction est équivalente à la troncature et, sur un plan conceptuel, est similaire à la fonction "Arrondir à zéro".
- *FLOOR
- Arrondit vers -infinité. Si tous les chiffres négligés sont des zéros ou si le signe est positif, le résultat est inchangé sauf que les chiffres négligés sont supprimés. Sinon, le signe est négatif et le coefficient du résultat doit être incrémenté de 1.
Format de date (DATFMT)
Indique le format de date à utiliser lors de la copie de zones de date à partir du fichier d'origine.
- *ISO
- Le format de date ISO (aaaa-mm-jj) est utilisé.
- *USA
- Le format de date américain (mm/jj/aaaa) est utilisé.
- *EUR
- Le format de date européen (jj.mm.aaaa) est utilisé.
- *JIS
- Le format de date JIS (aaaa-mm-jj) est utilisé.
- *MDY
- Le format de date mm/jj/aa est utilisé.
- *DMY
- Le format de date jj/mm/aa est utilisé.
- *YMD
- Le format de date aa/mm/jj est utilisé.
- *JUL
- Le format de date julien (aa/jjj) est utilisé.
- *YYMD
- Le format de date aaaammjj est utilisé.
Séparateur de date (DATSEP)
Indique le séparateur utilisé dans le format de date. Ce séparateur est ignoré pour les formats *ISO, *USA, *EUR et *JIS car ces derniers utilisent un séparateur de date fixe.
- '/'
- Une barre oblique est utilisée comme séparateur de date.
- '-'
- Un tiret est utilisé comme séparateur de date.
- '.'
- Un point est utilisé comme séparateur de date.
- ','
- Une virgule est utilisée comme séparateur de date.
- *BLANK
- Un blanc est utilisé comme séparateur de date.
Format d'heure (TIMFMT)
Indique le format d'heure à utiliser lors de la copie de zones d'heure à partir du fichier d'origine.
- *ISO
- Le format d'heure ISO (hh-mm-ss) est utilisé.
- *USA
- Le format d'heure américain (hh:mm xx, où xx représente AM ou PM) est utilisé.
- *EUR
- Le format d'heure européen (hh.mm.ss) est utilisé.
- *JIS
- Le format d'heure JIS (hh:mm:ss) est utilisé.
- *HMS
- Le format d'heure hh:mm:ss est utilisé.
Séparateur d'heure (TIMSEP)
Indique le séparateur utilisé dans le format d'heure. Ce paramètre est ignoré si *ISO, *USA, *EUR ou *JIS est indiqué pour l'invite Format d'heure (paramètre TIMFMT) car ces formats utilisent déjà leur propre séparateur d'heure.
- ':'
- Un signe deux-points est utilisé comme séparateur d'heure.
- '.'
- Un point est utilisé comme séparateur d'heure.
- *BLANK
- Un blanc est utilisé comme séparateur d'heure.
Copie depuis numéro d'enreg (FROMRCD)
Indique les enregistrements copiés à partir du fichier d'origine.
Elément 1 : Copie depuis numéro d'enreg
- *FIRST
- La copie s'effectue à partir du premier enregistrement du fichier d'origine.
- 1-4294967288
- Indiquez le numéro du premier enregistrement à copier depuis le fichier d'origine.
Elément 2 : Nombre d'enreg à copier
- *END
- Les enregistrements sont copiés jusqu'à détection d'une condition de fin de fichier.
- 1-4294967288
- Indiquez le nombre d'enregistrements à copier depuis le fichier d'origine. Si une condition de fin de fichier est détectée avant que le nombre d'enregistrements indiqué ne soit copié, aucun message d'erreur n'est émis et l'opération de copie se déroule normalement.
Nombre d'erreurs admises (ERRLVL)
Indique le nombre maximal d'erreurs de lecture ou d'écriture remédiables tolérées dans le fichier de destination durant l'opération de copie.
- *NOMAX
- Aucun nombre maximal d'erreurs n'est indiqué. Toutes les erreurs remédiables sont tolérées. L'opération de copie se poursuit quel que soit le nombre d'erreurs détectées.
- nombre-erreurs
- Indiquez le nombre maximal d'erreurs remédiables admises. Si un nombre d'erreurs supérieur se produit, l'opération de copie s'interrompt.
Fichier enreg d'erreurs (ERRRCDFILE)
Indique le fichier base de données dans lequel doivent être écrits les enregistrements en erreur.
Les différents types de fichier d'enregistrement d'erreurs possibles sont les suivants :
- fichier physique source,
- fichier DDM,
- fichier physique réparti,
- fichier physique décrit dans les programmes,
- fichier physique à description externe.
Valeurs particulières
- *NONE
- Aucun fichier d'enregistrement d'erreurs n'est fourni.
Elément 1 : Fichier
-
Qualificatif 1 : Fichier
- nom
- Indiquez le nom du fichier d'enregistrement d'erreurs.
-
Qualificatif 2 : Biblio
- *LIBL
- La recherche porte sur toutes les bibliothèques de la liste des bibliothèques de l'unité d'exécution en cours jusqu'à ce que la première occurrence soit trouvée.
- *CURLIB
- La recherche porte sur la bibliothèque en cours de l'unité d'exécution. Si aucune bibliothèque n'est définie comme bibliothèque en cours pour l'unité d'exécution, la recherche porte sur la bibliothèque QGPL.
- nom
- Indiquez le nom de la bibliothèque dans laquelle doit s'effectuer la recherche.
Elément 2 : Membre
- *FIRST
- Le premier membre (par ordre de date de création) du fichier d'erreur est utilisé.
- nom
- Indiquez le membre du fichier d'erreur destiné à recevoir les enregistrements du fichier d'origine contenant des erreurs.
Remplacement ou ajout enreg. (ERRRCDOPT)
Indique comment les enregistrements d'erreurs sont ajoutés dans le fichier d'enregistrement d'erreurs.
- *ADD
- Le système ajoute les nouveaux enregistrements à la suite de ceux déjà existants.
- *REPLACE
- Le système supprime les enregistrements existants et ajoute les nouveaux.
Remplacement valeurs indéf (RPLNULLVAL)
Indique si les valeurs indéfinies doivent être remplacées ou non lors de la copie des enregistrements de fichier d'importation.
- *NO
- Si une zone du fichier de destination admet des valeurs indéfinies, une valeur indéfinie sera utilisée. Sinon, une erreur sera envoyée.
- *FLDDFT
- Si une valeur indéfinie est détectée lors de l'analyse syntaxique d'un enregistrement de fichier d'importation, une valeur par défaut est attribuée à la zone correspondante de l'enregistrement de fichier en fonction du type de zone ou de la valeur DDS (spécification de description de données) par défaut.
Colonne d'identité (IDCOL)
Indique si le fichier de destination est une table SQL contenant une colonne avec l'attribut IDENTITY ou une colonne avec le type de données ROWID, que la valeur de la colonne soit générée par le système ou qu'une valeur par défaut soit utilisée.
- *GEN
- Une valeur générée par le système est insérée dans la Colonne d'identité de la colonne ROWID.
- *FROMFLD
- Si une valeur figure dans la Colonne d'identité de la colonne ROWID de la zone du fichier d'origine, cette valeur sera insérée dans la Colonne d'identité du fichier de destination.
Suppression de noms de colonne (RMVCOLNAM)
Indique si les noms de colonne doivent être retirés du fichier d'origine.
- *NO
- La copie commence à partir du premier enregistrement du fichier d'origine.
- *YES
- La copie commence à partir du deuxième enregistrement du fichier d'origine car le premier enregistrement contient les noms de colonne.
Exemples
Exemple 1 : copie d'un fichier physique depuis un fichier d'importation
CHGQRYA DEGREE(*NBRTASKS 3)
:
CPYFRMIMPF FROMFILE(IMPFILE) TOFILE(DB2FILE)
FLDDLM(';') RCDDLM(X'07')
DATFMT(*JIS) TIMFMT(*JIS)
La commande CHGQRYA (Modifier les attributs de requête) est exécutée avant CPYFRMIMPF pour permettre la réalisation du traitement de la copie par trois tâches s'exécutant en parallèle.
Tous les enregistrements du fichier IMPFILE seront copiés dans le fichier physique à description externe DB2FILE. Les zones du fichier d'origine sont délimitées par des points-virgules (;). Les enregistrements du fichier d'origine sont délimités par un caractère hexadécimal '07'. Les zones de date en entrée sont au format aaaa-mm-jj. Les zones d'heure en entrée sont au format hh:mm:ss.
Exemple 2 : copie d'un fichier bande depuis un fichier d'importation
OVRTAPF FILE(QTAPE) DEV(TAP02) SEQNBR(3) : CPYFRMIMPF FROMFILE(QTAPE) TOFILE(DB2WHS) ERRFILE(IMPERR)
La commande OVRTAPF (Substituer un fichier bande) est exécutée avant CPYFRMIMPF pour indiquer que l'unité de bande TAP02 doit être utilisée pour la copie. Le fichier d'origine doit être le troisième fichier de la bande installée sur TAP02.
Tous les enregistrements du fichier d'origine seront copiés dans le fichier physique à description externe DB2WHS. Les zones du fichier d'origine sont délimitées par des virgules (,). Les zones de date en entrée sont au format (ISO) aaaa-mm-jj. Les zones d'heure en entrée sont au format (ISO) hh.mm.ss. Les enregistrements du fichier d'origine pour lesquels des erreurs sont détectées et qui ne peuvent pas être ajoutés au fichier DB2WHS sont ajoutés au fichier d'erreur IMPERR.
© Copyright IBM Corp. Texte d'aide reproduit à des fins de formation.