Aller au contenu

CPYTODKT

Copier sur une disquette

En bref

La commande CPYTODKT (Copier sur une disquette) permet de copier un fichier base de données ou unité dans un fichier disquette.

CPYTODKT se lit CPY (Copier) + TODKT. Sur IBM i, le nom d'une commande associe presque toujours un verbe et un objet.

Syntaxe minimale

CPYTODKT FROMFILE(…) TOFILE(…)

Paramètres

Astuce : dans une session 5250, tapez CPYTODKT 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 CPYTODKT (Copier sur une disquette) permet de copier un fichier base de données ou unité dans un fichier disquette. Le fichier de destination est obligatoirement un fichier disquette. Le fichier d'origine peut être un fichier physique, logique, DDM, bande ou disquette, ou bien un fichier de données en entrée.

Remarque :Pour plus d'informations sur les fichiers DDM, reportez-vous au manuel Rubriques Programmation d'une base de données répartie de l'IBM i Information Center (http://www.ibm.com/systems/i/infocenter/).

Cette commande met à disposition une partie des paramètres associés à la commande CPYF (Copier un fichier), ainsi que des paramètres s'appliquant plus particulièrement aux disquettes. Cela vous permet d'éviter d'utiliser une commande de substitution séparée. Si des paramètres requis ne sont pas disponibles avec la commande CPYTODKT, vous pouvez procéder à des substitutions de fichier d'origine ou de destination, recourir à la commande CPYF ou utiliser une combinaison des deux.

Vous pouvez copier un label, un ensemble générique de labels ou tous les labels de la bande. 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/ décrit de façon détaillée les combinaisons admises et la manière de les indiquer.

Restriction : Lors de l'opération de copie, le partage du chemin d'ouverture d'un fichier (ODP) avec un autre programme du travail (phase d'activation) est impossible.

Paramètres

Mot-clé Description Valeurs possibles Remarques
FROMFILE Fichier d'origine Nom d'objet qualifié Obligatoire, positionnel 1
Qualificatif 1: Fichier d'origine Nom
Qualificatif 2: Biblio Nom, *LIBL, *CURLIB
TOFILE Fichier disquette Nom d'objet qualifié Obligatoire, positionnel 2
Qualificatif 1: Fichier disquette Nom
Qualificatif 2: Biblio Nom, *LIBL, *CURLIB
FROMMBR Membre d'origine Nom générique, nom, *FIRST, *ALL Facultatif, positionnel 3
TOLABEL Label disquette Valeur caractère, *FROMMBR, *DKTF Facultatif, positionnel 4
TODEV Unité disquette Nom, *DKTF Facultatif
TOVOL Identificateur de volume Valeurs uniques: *DKTF, *NONE
Autres valeurs (jusqu'à 50 répétitions): Valeur caractère
Facultatif
TOEXCHTYPE Type d'échange de la copie *DKTF, *STD, *BASIC, *H, *I Facultatif
TOEXPDATE Date d'expiration du fichier Date, *DKTF, *PERM Facultatif
NBRRCDS Nombre d'enreg à copier Entier non signé, *END Facultatif

Fichier d'origine (FROMFILE)

Indique le nom et la bibliothèque du fichier à copier. Il peut s'agir d'un fichier physique, logique, disquette, bande ou spoule en entrée.

Ce paramètre est obligatoire.

Pour la bibliothèque, les valeurs possibles sont les suivantes :

*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
Le fichier physique, logique, disquette ou bande est recherché dans la bibliothèque en cours du travail. Si celle-ci n'est pas précisée, QGPL est prise par défaut.
nom-bibliothèque
Indiquez le nom de la bibliothèque contenant le fichier physique, logique, disquette ou bande.

Fichier disquette (TOFILE)

Indique le nom du fichier qui reçoit les enregistrements copiés.

Ce paramètre est obligatoire.

Pour la bibliothèque, les valeurs possibles sont les suivantes :

*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
Le fichier disquette est recherché dans la bibliothèque en cours du travail. Si celle-ci n'est pas précisée, QGPL est prise par défaut.
nom-bibliothèque
Indiquez le nom de la bibliothèque contenant le fichier disquette.

Membre d'origine (FROMMBR)

Indique les membres base de données, les identificateurs de fichier de données disquette ou bande à copier à partir du fichier d'origine. Si ce dernier est un fichier spoule en entrée, vous devez spécifier *FIRST.

*FIRST
Le premier membre du fichier indiqué est utilisé.
*ALL
Tous les membres d'un fichier base de données d'origine ou tous les identificateurs de label d'un fichier disquette d'origine sont copiés. FROMMBR(*ALL) n'est pas admis pour un fichier bande ou un fichier de données en entrée.
nom-membre-origine
Indiquez le nom du membre du fichier base de données, ou bien l'ID label de fichier de données bande ou disquette, à copier. Si l'ID label de la bande comporte des caractères spéciaux ou plus de 10 caractères, vous devez l'indiquer à l'aide d'une commande CRTTAPF (Créer un fichier de bande), CHGTAPF (Modifier un fichier de bande) ou OVRTAPF (Substituer un fichier de bande).
nom-membre-générique*
Indiquez le nom générique du membre.

Label disquette (TOLABEL)

Indique les identificateurs de label des fichiers de données disquette devant recevoir les enregistrements copiés. Les identificateurs de label ne doivent pas comporter plus de huit caractères.

*FROMMBR
Tous les membres ou identificateurs de label indiqués en regard de l'invite Membre d'origine (paramètre FROMMBR) sont copiés dans les fichiers de données dont les noms correspondent sur la disquette de destination.

Si le fichier d'origine est un fichier bande sans label, un ID label est créé pour le fichier de destination disquette au format CPYnnnnn, "nnnnn" désignant le numéro de séquence bande du fichier de données.

*DKTF
La valeur figurant dans le fichier disquette permet d'identifier le fichier de destination.
ID-fichier-données
Indiquez le label identificateur du fichier de données sur la disquette de destination.

Unité disquette (TODEV)

Indique le nom de l'unité de disquette à utiliser pour copier les enregistrements dans le fichier disquette de destination.

*DKTF
L'unité indiquée dans le fichier disquette est utilisée.
nom-unité
Indiquez le nom de l'unité de disquette à utiliser pour copier les enregistrements.

Identificateur de volume (TOVOL)

Indique les disquettes à utiliser pour copier les enregistrements dans le fichier disquette de destination.

*DKTF
Les identificateurs volume indiqués dans le fichier disquette sont utilisés.
*NONE
Aucun contrôle d'identificateur de volume n'est effectué.
identificateur-volume
Indiquez les identificateurs volume (50 au maximum) à utiliser pour identifier les disquettes de destination. Chaque identificateur ne peut pas comporter plus de 6 caractères alphanumériques.

Type d'échange de la copie (TOEXCHTYPE)

Indique le type d'échange à utiliser pour l'écriture du fichier de destination.

*DKTF
La valeur figurant dans le fichier disquette est utilisée pour déterminer le type d'échange.
*STD
Le format d'échange BASIC est utilisé pour une disquette de type 1 ou 2. Le format d'échange H est utilisé pour une disquette de type 2D .
*BASIC
le type d'échange BASIC est utilisé.
*H
Le fichier de destination est écrit en format d'échange H.
*I
Le fichier de destination est écrit en format d'échange I. Cette valeur est admise pour les types de disquette 1, 2 et 2D et pour toutes les tailles de secteurs possibles (128, 256, 512 et 1024 octets).

Date d'expiration du fichier (TOEXPDATE)

Indique la date de péremption du fichier de destination. Le fichier est protégé en écriture jusqu'au lendemain de cette date.

*DKTF
La date de péremption indiquée dans le fichier disquette est utilisée.
*PERM
Le fichier de destination est protégé définitivement.
date-péremption-fichier
Indiquez la date du dernier jour de protection de la disquette. La date doit figurer au format défini par les valeurs système QDATFMT et (si des séparateurs sont utilisés) QDATSEP. Cette date est incluse dans le label de la disquette au format AAMMJJ.

Nombre d'enreg à copier (NBRRCDS)

Indique le nombre d'enregistrements copiés dans le fichier de destination.

Les valeurs possibles sont les suivantes :

*END
Les enregistrements sont copiés jusqu'à détection d'une condition de fin de fichier.
nombre-enregistrements
Indiquez le nombre d'enregistrements à copier dans le fichier de destination. Le nombre doit être compris entre 1 et 4294967288. La copie prend fin si une condition EOF (fin de fichier) est rencontrée avant que le nombre d'enregistrements indiqué soit atteint.

Exemples

Exemple 1 : copie de 50 enregistrements

CPYTODKT   FROMFILE(PGMSRC)  TOFILE(QDKT)  FROMMBR(PGMA)
           TOLABEL(A)  TOEXCHTYPE(*I)  NBRRCDS(50)

Cette commande permet de copier 50 enregistrements sur disquette à l'aide du fichier unité QDKT. L'unité de disquette indiquée dans la description du fichier QDKTF est utilisée. Le membre PGMA du fichier source base de données PGMSRC est copié. Etant donné qu'aucun qualificatif de bibliothèque n'est indiqué, *LIBL est utilisé pour la localisation du fichier d'origine. Les enregistrements sont copiés vers le label A et écrits au format d'échange I.

Exemple 2 : copie de tous les membres

CPYTODKT   FROMFILE(QGPL/QCLSRC)  TOFILE(QDKT)  TODEV(DKT2)
           FROMMBR(*ALL)  TOEXPDATE(*PERM)

Cette commande permet de copier tous les membres du fichier source base de données QCLSRC de la bibliothèque QGPL sur disquette. Le fichier disquette QDTK, défini par FILETYPE(*DATA), est utilisé bien que les enregistrements source soient copiées sur disquette. Ceci est dû au fait que les zones sont toujours tronquées lors d'une copie vers une unité et ajoutées lors d'une copie vers la base de données. Par ailleurs, il est plus efficace d'utiliser un fichier unité de type *DATA qu'un fichier unité de type *SRC. L'unité de disquette DKT2 est utilisée. Les membres sont copiés vers les labels portant le même nom sur la disquette car la valeur par défaut TOLABEL(*FROMMBR) est utilisée. Les dates d'expiration du volume et du fichier sont indiquées dans la commande, ce qui évite d'exécuter une commande de substitution distincte.

Messages d'erreur

Messages *ESCAPE

CPF2816
Fichier &1 de &2 non copié à la suite d'une erreur.
CPF2817
Commande de copie interrompue à la suite d'une erreur.
CPF2857
Copie de plusieurs membres ou labels incompatible avec substitution.
CPF2859
Partage d'un chemin d'ouverture non admis.
CPF2864
Non autorisé au fichier &1 de &2.
CPF2875
Le membre ou label ouvert n'est pas celui prévu.
CPF2904
Labels de disquette incorrects pour copie de plusieurs labels.
CPF2949
Erreur à la fermeture du membre &3 de &1 dans &2.
CPF2952
Erreur lors de l'ouverture du fichier &1 de &2.
CPF2968
Erreur de positionnement lors de la copie du fichier &1 de &2.
CPF2971
Erreur de lecture du membre &3 du fichier &1.
CPF2972
Erreur d'écriture dans le membre &3 du fichier &1.
CPF9212
Impossible de charger ou décharger le fichier DDM &2 de &3.

© Copyright IBM Corp. Texte d'aide reproduit à des fins de formation.