Aller au contenu

CRTDTAARA

Créer une zone de données

En bref

La commande CRTDTAARA (Créer une zone de données) permet à l'utilisateur de créer une zone de données et de la stocker dans une bibliothèque indiquée.

CRTDTAARA se lit CRT (Créer) + DTAARA. Sur IBM i, le nom d'une commande associe presque toujours un verbe et un objet.

Syntaxe minimale

CRTDTAARA DTAARA(…) TYPE(…)

Paramètres

Astuce : dans une session 5250, tapez CRTDTAARA 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 : Sous conditions

La commande CRTDTAARA (Créer une zone de données) permet à l'utilisateur de créer une zone de données et de la stocker dans une bibliothèque indiquée. Elle permet également d'indiquer les attributs des données. Il est possible d'initialiser la zone de données à une valeur donnée.

Les zones de données sont utilisées pour communiquer et stocker les données utilisées par différents programmes à l'intérieur d'un travail ou entre les travaux. Un programme peut utiliser la valeur d'une zone de données à l'aide de la commande RTVDTAARA (Extraire une zone de données).

Si la zone de données n'est pas utilisée simultanément par plusieurs travaux, elle peut être explicitement allouée au travail approprié. Si elle est utilisée simultanément par deux ou plusieurs travaux, elle est protégée des modifications simultanées provenant des différents travaux. La commande CHGDTAARA (Modifier une zone de données) permet de modifier une zone de données. Le système ne permet pas à deux commandes de modifier simultanément une même zone de données.

Une zone de données est mise à jour dans la mémoire secondaire à chaque modification. Ainsi, les modifications ne sont pas perdues en cas d'incident système ou programme.

La commande CRTDTAARA permet de créer, facultativement, une zone de données de gestion de fichiers éloignés (DDM). Pour ce faire, indiquez *DDM au paramètre TYPE. Les programmes utilisent les zones de données DDM comme zone de référence pour accéder aux zones de données d'un système éloigné (cible) du réseau DDM. Les programmes du système local (source) font référence à une zone de données éloignée par le nom de la zone DDM et non par celui de la zone de données éloignée.

La zone de données DDM du système source contient le nom de la zone de données éloignée ainsi que le nom du système éloigné (cible) sur lequel elle réside.

La zone de données DDM peut être utilisée avec les commandes RTVDTAARA et CHGDTAARA pour extraire et mettre à jour des zones de données sur des systèmes éloignés.

La zone de données peut être journalisée à la création. Pour plus d'informations, reportez-vous à la commande (STRJRNLIB)

Restrictions :

  1. Pour utiliser cette commande, l'utilisateur doit disposer de droits d'opération sur l'objet et du droit d'ajout sur la bibliothèque de stockage des données.
  2. Cette commande est à unités d'exécution protégées sous certaines conditions. Les restrictions suivantes s'appliquent :
    1. La création de zones de données DDM dans un travail qui admet les unités d'exécution multiples n'est pas à unités d'exécution protégées.
    2. La création de zones de données DDM échoue lorsque plusieurs unités d'exécution sont actives dans un travail.

Paramètres

Mot-clé Description Valeurs possibles Remarques
DTAARA Zone de données Nom d'objet qualifié Obligatoire, positionnel 1
Qualificatif 1: Zone de données Nom
Qualificatif 2: Biblio Nom, *CURLIB
TYPE Type *DEC, *CHAR, *LGL, *DDM Obligatoire, positionnel 2
LEN Longueur Liste d'éléments Facultatif, positionnel 3
Élément 1: Longueur 1-2000
Élément 2: Nombre de positions décimales 0-9
VALUE Valeur initiale Sans restriction Facultatif, positionnel 4
RMTDTAARA Zone de données éloignée Nom d'objet qualifié Facultatif
Qualificatif 1: Zone de données éloignée Nom
Qualificatif 2: Biblio Nom, *LIBL, *CURLIB
RMTLOCNAME Lieu éloigné Nom de communication, *RDB Facultatif
RDB Base de données relationnelle Nom Facultatif
DEV Description d'unité APPC Nom, *LOC Facultatif
LCLLOCNAME Lieu local Nom de communication, *LOC, *NETATR Facultatif
MODE Mode Nom de communication, *NETATR Facultatif
RMTNETID ID éloigné réseau Nom de communication, *LOC, *NETATR, *NONE Facultatif
TEXT Texte 'descriptif' Valeur caractère, *BLANK Facultatif
AUT Droits Nom, *LIBCRTAUT, *CHANGE, *ALL, *USE, *EXCLUDE Facultatif

Zone de données (DTAARA)

Indique le nom et la bibliothèque de la zone de données à créer.

Ce paramètre est obligatoire.

Qualificatif 1 : Zone de données

nom
Indiquez le nom de la zone de données à créer.

Qualificatif 2 : Biblio

*CURLIB
La zone de données est créée dans la bibliothèque en cours de l'unité d'exécution. Si celle-ci n'est indiquée, QGPL est prise par défaut.
nom
Indiquez le nom de la bibliothèque dans laquelle est créée la zone de données.

Type (TYPE)

Indique le type de la valeur contenue dans la zone de données à créer. Cette zone peut contenir une valeur alphanumérique, décimale, ou logique (1 ou 0), ou encore constituer une zone de données DDM.

Ce paramètre est obligatoire.

*DEC
Cette zone de données contient une valeur décimale.
*CHAR
Cette zone de données contient une valeur de chaîne de caractères.
*LGL
Cette zone de données contient une valeur logique de un (1) ou de zéro (0) pouvant être utilisée pour représenter deux conditions opposées : EF/HF, vrai/faux ou oui/non.
*DDM
La zone créée est une zone de données DDM. Elle contient le nom de la zone de données éloignée ouverte et le nom du système éloigné (cible) sur lequel elle réside.

Longueur (LEN)

Indique la longueur de la zone de données à créer. Dans le cas d'une zone décimale, l'indication du nombre de chiffres placés à la droite du symbole décimal est facultative. Le type de la zone de données permet de définir la longueur maximale d'une valeur dans cette zone de données et sa longueur par défaut si aucune longueur n'est indiquée. Les longueurs maximales et par défaut correspondant à chacun des trois types sont les suivantes :

  • Décimale
    • Maximum -- 24 chiffres, 9 positions décimales
    • Par défaut -- 15 chiffres, 5 positions décimales
  • Alphanumérique
    • Maximum -- 2000 caractères
    • Par défaut -- 32 caractères
  • Logique -- Maximum et par défaut, 1 caractère

Remarque :Pour les types alphanumériques, la longueur par défaut est identique à celle de la valeur initiale éventuellement indiquée pour le paramètre VALUE (Valeur initiale).

Elément 1 : Longueur

1-2000
Indiquez la longueur à attribuer à la valeur dans cette zone de données. La longueur de la valeur dans la zone de données comprend son nombre de positions décimales. La longueur maximale de la valeur décimale est de 24 chiffres dont 9 seulement peuvent être placés à la droite du symbole décimal. Pour qu'une zone de données soit utilisable dans un programme CL, sa longueur totale ne doit pas dépasser 15 chiffres.

Elément 2 : Nombre de positions décimales

0-9
Indiquez le nombre de chiffres placés à la droite du symbole décimal des zones de données décimales (*DEC). Si *DEC n'est pas indiqué, la valeur 0 est prise par défaut.

Valeur initiale (VALUE)

Indique la valeur à attribuer à la zone de données lors de sa création. Cette valeur doit correspondre au type indiqué pour le paramètre TYPE (Type) de cette commande. Si aucune valeur n'est indiquée, une zone de données de type alphanumérique est initialisée par des blancs, une zone de type décimal à la valeur 0 et une zone de type logique à 0.

valeur-non-restreinte
Indiquez la valeur initiale de la zone de données.

Zone de données éloignée (RMTDTAARA)

Indique le nom de la zone de données éloignée sur le système cible. La création de la zone de données DDM n'est pas soumise à l'existence de cette dernière.

Qualificatif 1 : Zone de données éloignée

nom
Indiquez la valeur de la zone de données éloignée.

Qualificatif 2 : Biblio

*LIBL
La zone de données est recherchée dans la liste des bibliothèques de l'unité d'exécution appelée sur le système cible.
*CURLIB
a zone de données est recherchée dans la bibliothèque en cours de l'unité d'exécution appelée sur le système cible. Si aucune bibliothèque en cours n'est définie pour l'unité d'exécution appelée, la bibliothèque QGPL est utilisée.
nom
Indiquez le nom de la bibliothèque dans laquelle est créée la zone de données éloignée.

Lieu éloigné (RMTLOCNAME)

Indique le nom du lieu éloigné utilisé avec cet objet.

Remarque :Plusieurs zones de données DDM peuvent utiliser le même lieu éloigné comme système cible. Les lieux éloignés doivent correspondre à des systèmes dotés d'une édition du système d'exploitation prenant en charge les zones de données éloignées.

*RDB
Les informations concernant le lieu éloigné du poste de la base de données relationnelle indiqué pour le paramètre RDB (Base de données relationnelle) sont utilisées afin de déterminer le système éloigné.
nom-communications
Indiquez le nom du lieu éloigné associé au système cible. Il n'est pas obligatoire que le lieu éloigné utilisé lors de l'accès au système cible soit défini pour la création de la zone de données DDM ; en revanche, il doit l'être pour l'accès à cette dernière.

Pour plus d'informations sur les lieux éloignés, reportez-vous au manuel APPC Programming, SC41-5443.

Base de données relationnelle (RDB)

Indique le poste de base de données relationnelle utilisé pour définir les informations concernant le lieu éloigné de la zone de données DDM.

nom-communications
Tapez le nom de l'entrée de base de données relationnelle identifiant le système cible ou le groupe ASP cible. Le nom de la base de données relationnelle peut faire référence à un système distant ou à un groupe ASP distant qui est configuré et stocké sur un système distant. Il n'est pas obligatoire que le poste de base de données relationnelle soit défini pour la création de la zone de données DDM ; en revanche, il doit l'être pour l'accès à cette dernière. Ce paramètre est obligatoire lorsque *RDB est indiqué pour le paramètre RMTLOCNAME (Lieu éloigné).

Description d'unité APPC (DEV)

Indique le nom de la description d'unité APPC sur le système source qui est utilisée avec cette zone de données DDM. La création de la zone de données DDM n'est pas soumise à l'existence de la description d'unité.

*LOC
L'unité associée au lieu éloigné est utilisée. Si plusieurs unités sont associées au lieu éloigné, c'est le système qui détermine l'unité utilisée.
nom
Indiquez le nom d'une unité de communication associée au lieu éloigné. Si le nom d'unité n'est pas admis, un message est envoyé au moment de l'acquisition du poste d'unité programme. Pour plus d'informations sur les noms d'unité, reportez-vous au manuel APPC Programming, SC41-5443.

Lieu local (LCLLOCNAME)

Indique le nom du lieu local.

*LOC
L'unité associée au lieu éloigné est utilisée. Si plusieurs unités sont associées au lieu éloigné, c'est le système qui détermine l'unité utilisée.
*NETATR
Le paramètre LCLLOCNAME (Nom de lieu local par défaut) indiqué dans les attributs de réseau du système est utilisé.
nom-communications
Indiquez le nom du lieu local associé au lieu éloigné. Vous devez indiquer ce nom uniquement si vous associez un lieu local spécifique au lieu éloigné. Si le nom de lieu local n'est pas admis pour le lieu éloigné, un message d'arrêt programme est envoyé lors de l'accès à la zone de données DDM. Pour plus d'informations sur les noms de lieu local, reportez-vous au manuel APPC Programming, SC41-5443.

Mode (MODE)

Indique le nom de mode utilisé avec le nom du lieu éloigné pour communiquer avec le système cible.

*NETATR
Le paramètre DFTMODE (Mode par défaut) indiqué dans les attributs de réseau du système est utilisé.
nom-communications
Indiquez le nom du mode utilisé. Si le nom de mode n'est pas admis pour une association lieu éloigné/lieu local, un message d'arrêt programme est envoyé lors de l'accès à la zone de données DDM.

Pour plus d'informations sur les noms de mode, reportez-vous au manuel APPC Programming, SC41-5443.

ID éloigné réseau (RMTNETID)

Indique l'ID éloigné du réseau sur lequel réside le lieu éloigné, utilisé pour communiquer avec le système cible.

*LOC
L'ID éloigné de réseau associé au lieu éloigné est utilisé. Si plusieurs ID éloignés de réseau sont associés au lieu éloigné, le système détermine lequel d'entre eux est utilisé.
*NETATR
Le paramètre LCLNETID (ID local du réseau) indiqué dans les attributs de réseau du système est utilisé.
*NONE
Un ID de réseau éloigné n'est pas utilisé.
nom-communications
Indiquez l'ID éloigné de réseau associé au lieu éloigné. Vous devez indiquer cet ID uniquement si vous associez un ID éloigné de réseau spécifique au lieu éloigné. S'il n'est pas admis pour le lieu éloigné, un message d'arrêt programme est envoyé lors de l'accès à la zone de données DDM.

Pour plus d'informations sur les ID éloignés de réseau, reportez-vous au manuel APPC Programming, SC41-5443.

Texte 'descriptif' (TEXT)

Texte décrivant brièvement l'objet.

*BLANK
Aucun texte n'est indiqué.
'descriptif'
Indiquez, entre apostrophes, un texte de 50 caractères au maximum.

Droits (AUT)

Indique les droits que vous accordez aux utilisateurs qui n'ont pas de droits spécifiques sur l'objet, qui ne figurent pas sur une liste d'autorisation ou dont le profil de groupe ou les profils du groupe supplémentaire ne disposent pas de droits spécifiques sur l'objet.

*LIBCRTAUT
Le droit sur l'objet provient de la valeur indiquée pour le paramètre CRTAUT (Droits pour objets créés) de la bibliothèque dans laquelle l'objet est créé. Si la valeur indiquée pour le paramètre CRTAUT est modifiée, la nouvelle valeur n'affecte pas les objets existants.
*CHANGE
L'utilisateur peut effectuer toutes les opérations sur l'objet, à l'exception de celles réservées au propriétaire ou contrôlées par les droits d'existence de l'objet (*OBJEXIST) et de gestion de l'objet (*OBJMGT). L'utilisateur peut réaliser des fonctions de base sur l'objet et le modifier. Le droit *CHANGE fournit le droit d'opération sur l'objet (*OBJOPR) ainsi que les droits sur toutes les données. Si l'objet est une liste d'autorisation, vous pouvez ajouter, modifier ou supprimer des utilisateurs dans cette liste.
*ALL
L'utilisateur peut effectuer toutes les opérations, à l'exception de celles réservées au propriétaire ou soumises au droit de gestion de la liste d'autorisation (*AUTLMGT). L'utilisateur a un droit d'existence sur l'objet Il peut également effectuer des fonctions de base sur ce dernier, le modifier, définir son niveau de protection et en transférer la propriété.
*USE
L'utilisateur peut effectuer des opérations de base sur l'objet, telles que l'exécution d'un programme ou la lecture d'un fichier. Il ne peut pas le modifier. Le droit d'utilisation (*USE) fournit le droit d'opération sur l'objet (*OBJOPR) ainsi que le droit d'exécution (*EXECUTE).
*EXCLUDE
L'utilisateur n'a pas accès à l'objet.
nom
Indiquez le nom d'une liste d'autorisation permettant de déterminer les droits sur l'objet. Les droits sur l'objet précisés dans la liste sont accordés aux utilisateurs qui figurent sur cette liste. La liste d'autorisation doit exister à la création de l'objet.

Exemples

Exemple 1 : création d'une zone de données de valeur zéro

CRTDTAARA   DTAARA(TOTSALES)  TYPE(*DEC)  LEN(15 2)
            VALUE(0)  TEXT('Total sales accumulator')

Cette commande permet de créer une zone de données TOTSALES et de la stocker dans la bibliothèque en cours spécifiée pour l'unité d'exécution. TOTSALES dispose des attributs de données suivants : une zone de données de type numérique à 15 positions avec deux positions décimales et dont la valeur initiale est 0.

Exemple 2 : création d'une zone de données initialisée par des blancs

CRTDTAARA   DTAARA(CUSTOMER)  TYPE(*CHAR)  LEN(148)
            TEXT('zone nom du client')

Cette commande permet de créer la zone de données CUSTOMER. La chaîne de caractères de cette zone peut contenir un maximum de 148 caractères. Etant donné qu'aucune valeur initiale n'est spécifiée, la zone de données est initialisée par des blancs.

Exemple 3: Création d'une zone de données DDM pour accéder à une zone de données située sur un autre système

CRTDTAARA   DTAARA(SOURCE/SALES)  TYPE(*DDM)
            RMTDTAARA(REMOTE/SALES)  RMTLOCNAME(NEWYORK)

Cette commande permet de créer une zone de données DDM SALES et de la stocker dans la bibliothèque SOURCE du système source. Cette zone de données DDM utilise le nom de lieu éloigné NEWYORK pour accéder à une zone de données éloignée appelée SALES stockée dans la bibliothèque REMOTE d'un système situé à New York.

Messages d'erreur

Messages *ESCAPE

CPF1008
Zone de données &2 non créée.
CPF1015
Zone de données &1 non trouvée dans &2.
CPF1021
Bibliothèque &1 non trouvée pour zone de données &2.
CPF1022
Non autorisé à bibliothèque &1 pour zone de données &2.
CPF1023
La zone de données &1 existe déjà dans &2.
CPF1024
Paramètres TYPE et VALUE incompatibles.
CPF1025
Paramètres LEN et VALUE incompatibles.
CPF1026
Le paramètre VALUE doit être égal à '0' ou à '1'.
CPF1047
Longueur incorrecte pour zone de données &1 de &2.
CPF1062
Chaîne vide incorrecte comme valeur caractère.
CPF1092
Impossible de créer la zone de données &2 dans &1.
CPF180B
Fonction &1 non admise.
CPF4ACF
Echec de l'opération pour l'objet &1 dans &2 type *&3 en raison d'erreurs de réplication.
CPF9802
Non autorisé à l'objet &2 de &3.

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