Aller au contenu

CRTEDTD

Créer description d'édition

En bref

La commande CRTEDTD (Créer une description d'édition) permet de définir un masque d'édition pour la description d'édition indiquée et de le stocker dans la bibliothèque QSYS.

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

Syntaxe minimale

CRTEDTD EDTD(…)

Paramètres

  • EDTD Description d'édition obligatoire
  • INTMASK Masque de l'entier
  • DECPNT Symbole décimal
  • FRACMASK Masque de fraction
  • FILLCHAR Caractère de remplissage
  • CURSYM Symbole monétaire
  • ZEROBAL Edition valeurs 0
  • NEGSTS Caractères d'état négatif
  • POSSTS Caractères d'état positif
  • LFTCNS Caractères constants à gauche
  • RGTCNS Caractères constants à droite
  • TEXT Texte 'descriptif'
  • AUT Droits

Astuce : dans une session 5250, tapez CRTEDTD 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 CRTEDTD (Créer une description d'édition) permet de définir un masque d'édition pour la description d'édition indiquée et de le stocker dans la bibliothèque QSYS. L'utilisateur peut définir jusqu'à cinq descriptions d'édition. Une version fournie par IBM existe dans QSYS pour chaque description. Pour plus de détails sur les versions fournies par IBM, consultez le manuel Application Display Programming book, SC41-5715. Avant de créer une nouvelle version, vous devez d'abord supprimer celle fournie par IBM au moyen de la commande DLTEDTD (Supprimer une description d'édition).

Vous pouvez utiliser des descriptions d'édition dans des spécifications de description de données et dans des programmes évolués pour éditer des zones numériques.

Paramètres

Mot-clé Description Valeurs possibles Remarques
EDTD Description d'édition 5, 6, 7, 8, 9 Obligatoire, positionnel 1
INTMASK Masque de l'entier Valeur caractère, *NONE Facultatif
DECPNT Symbole décimal Valeur caractère, '.', *NONE Facultatif
FRACMASK Masque de fraction Valeur caractère, *NONE Facultatif
FILLCHAR Caractère de remplissage Valeur caractère, *BLANK Facultatif
CURSYM Symbole monétaire Valeur caractère, *NONE Facultatif
ZEROBAL Edition valeurs 0 *YES, *NO Facultatif
NEGSTS Caractères d'état négatif Valeur caractère, *NONE Facultatif
POSSTS Caractères d'état positif Valeur caractère, *NONE Facultatif
LFTCNS Caractères constants à gauche Valeur caractère, *NONE Facultatif
RGTCNS Caractères constants à droite Valeur caractère, *NONE Facultatif
TEXT Texte 'descriptif' Valeur caractère, *BLANK Facultatif
AUT Droits Nom, *LIBCRTAUT, *CHANGE, *ALL, *USE, *EXCLUDE Facultatif

Description d'édition (EDTD)

Indique un code à un chiffre (5, 6, 7, 8 ou 9) qui identifie la description d'édition (définie par l'utilisateur) en cours de création. Le nom réel de l'objet créé (stocké dans la bibliothèque QSYS) est QEDITn, où n correspond au code d'édition à un chiffre indiqué dans ce paramètre.

Ce paramètre est obligatoire.

Masque de l'entier (INTMASK)

Indique une chaîne de caractères (ou masque) qui décrit l'édition de la partie entière d'une zone décimale. Les caractères différents des blancs, zéros ou perluètes (&) sont traités en tant que constantes lors de l'édition. La signification des caractères blanc, zéro, et perluète est la suivante :

  • Blanc : Chaque blanc est remplacé par un caractère de remplissage ou par un des chiffres du nombre édité après suppression des zéros.
  • Zéro (0) : Le zéro à l'extrême gauche est un chiffre de remplacement qui termine également la suppression de zéros. Tous les autres zéros contenus dans le masque d'édition sont traités en tant que constantes.
  • Perluète (&) : Les blancs sont remplacés.

Remarque :INTMASK(*NONE) et FRACMASK(*NONE) ne peuvent pas être indiqués simultanément pour la commande CRTEDTD. Indiquez des blancs pour INTMASK et FRACMASK, et indiquez GENLVL(30) pour la commande CRTPRTF ou pour la commande CRTDSPF afin de permettre la création du fichier sans que le mot-clé du code d'édition soit pris en compte.

Les valeurs possibles sont les suivantes :

*NONE
Aucun masque d'édition n'est utilisé dans la partie entière des zones décimales.
'masque-nombre entier'
Indiquez la chaîne de caractères utilisée comme masque d'édition pour la partie entière d'une zone décimale. Vous pouvez préciser entre apostrophes jusqu'à 31 caractères.

Symbole décimal (DECPNT)

Indique, pour les zones décimales, le caractère utilisé comme symbole décimal permettant de séparer les parties entière (INTMASK) et fractionnaire (FRACMASK) du résultat édité. Ce caractère n'est pas utilisé, ni pris en considération pour la longueur des résultats édités si la zone ne contient aucune position décimale.

Remarque :Lorsque le caractère de séparation indiqué pour DECPNT est également utilisé pour le paramètre INTMASK, il n'a aucune signification particulière dans le masque d'édition. Il y est alors traité uniquement comme une constante ou comme un chiffre de remplacement.

Les valeurs possibles sont les suivantes :

' . ' (point)
Le point (ou symbole décimal) constitue le caractère de séparation. Il doit être mis entre apostrophes.
*NONE
Aucun caractère de séparation n'est indiqué, car le résultat édité ne nécessite pas de symbole décimal.
'caractère-séparation'
Indiquez le caractère de séparation utilisé comme symbole décimal, par exemple la virgule (,). Vous pouvez utiliser n'importe quel caractère alphanumérique ou spécial. Cependant, un caractère spécial doit être mis entre apostrophes.

Masque de fraction (FRACMASK)

Indique une chaîne de caractères (ou masque) qui décrit l'édition de la partie fractionnaire d'une zone décimale (à droite du symbole décimal). Les caractères ont la même signification que ceux correspondant à l'invite Masque de l'entier (paramètre INTMASK), à deux exceptions près : tous les zéros sont traités en tant que constantes et les blancs ne sont pas remplacés par des caractères de remplissage.

Les valeurs possibles sont les suivantes :

*NONE
Aucun masque d'édition n'est utilisé dans la partie fractionnaire des zones décimales.
'masque-fraction'
Indiquez la chaîne de caractères utilisée comme masque d'édition pour la partie fractionnaire d'une zone décimale. Vous pouvez préciser entre apostrophes jusqu'à 31 caractères.

Caractère de remplissage (FILLCHAR)

Indique le caractère utilisé dans toutes les positions d'un résultat dont les zéros ont été supprimés. Ce caractère remplace chaque zéro situé à gauche du premier chiffre significatif figurant dans le masque d'édition (ou zéro forcé).

Les valeurs possibles sont les suivantes :

*BLANK
Le caractère de remplissage est un blanc.
'caractère-remplissage'
Indiquez le caractère utilisé comme caractère de remplissage. Vous pouvez utiliser n'importe quel caractère alphanumérique ou spécial. Cependant, un caractère spécial doit être mis entre apostrophes.

Symbole monétaire (CURSYM)

Indique la chaîne de caractères utilisée comme symbole monétaire flottant. La chaîne indiquée apparaît immédiatement à gauche du premier chiffre significatif (ou constante). Si ce dernier est un zéro situé dans la position qui met fin à la suppression de zéros, la chaîne se termine sur cette position.

Les valeurs possibles sont les suivantes :

*NONE
Aucun symbole monétaire flottant n'est indiqué, car le résultat édité n'en nécessite pas.
'symbole-monétaire-flottant'
Indiquez la chaîne de caractères utilisée comme symbole monétaire flottant pour les zones de valeurs monétaires. Vous pouvez préciser entre apostrophes jusqu'à 15 caractères alphanumériques ou spéciaux.

Edition valeurs 0 (ZEROBAL)

Indique comment les valeurs égales à zéro sont éditées.

Les valeurs possibles sont les suivantes :

*YES
Les règles normales d'édition sont suivies. Pour toutes informations sur ce sujet, reportez-vous à la description de la commande CRTEDTD (Créer une description d'édition) dans le manuel CL Reference.
*NO
Si la zone en cours d'édition a une valeur égale à zéro, chacune de ses positions est remplacée (nombre entier, symbole décimal et fraction) par le caractère de remplissage. Ceci est également valable pour les constantes du masque d'édition.

Caractères d'état négatif (NEGSTS)

Indique la chaîne de caractères qui suit immédiatement le résultat édité lorsque la zone a une valeur négative. S'il s'agit d'une zone positive, tous les caractères de cette chaîne sont remplacés par des blancs, à moins qu'une valeur ne soit également précisée pour l'invite Caractères d'état positif (paramètre POSSTS).

Les valeurs possibles sont les suivantes :

*NONE
Aucune chaîne de caractères n'est indiquée ; des blancs sont utilisés à droite de la zone dans le résultat édité.
'chaîne-caractères-état-négatif'
Indiquez la chaîne de caractères qui suit immédiatement le résultat édité lorsque la zone a une valeur négative. Vous pouvez préciser entre apostrophes jusqu'à 31 caractères.

Caractères d'état positif (POSSTS)

Indique la chaîne de caractères qui suit immédiatement le résultat édité lorsque la zone a une valeur positive ou égale à zéro. S'il s'agit d'une zone négative, tous les caractères de cette chaîne sont remplacés par des blancs, à moins qu'une valeur ne soit également précisée pour l'invite Caractères d'état négatif (paramètre NEGSTS).

Les valeurs possibles sont les suivantes :

*NONE
Aucune chaîne de caractères n'est indiquée ; des blancs sont utilisés à droite de la zone dans le résultat édité.
'chaîne-caractères-état-positif'
Indiquez la chaîne de caractères qui suit immédiatement le résultat édité lorsque la zone a une valeur positive. Vous pouvez préciser entre apostrophes jusqu'à 31 caractères.

Caractères constants à gauche (LFTCNS)

Indique la constante (chaîne de caractères) qui apparaît toujours à l'extrême gauche du résultat édité.

Les valeurs possibles sont les suivantes :

*NONE
Aucune constante n'apparaît à gauche des résultats édités.
'constante-gauche'
Indiquez la chaîne de caractères qui apparaît toujours à gauche du résultat édité. Vous pouvez préciser entre apostrophes jusqu'à 31 caractères.

Caractères constants à droite (RGTCNS)

Indique la constante (chaîne de caractères) qui apparaît toujours à l'extrême droite du résultat édité.

Les valeurs possibles sont les suivantes :

*NONE
Aucune constante n'apparaît à droite des résultats édités.
'constante-droite'
Indiquez la chaîne de caractères qui apparaît toujours à droite du résultat édité. Vous pouvez préciser entre apostrophes jusqu'à 31 caractères.

Texte 'descriptif' (TEXT)

Texte décrivant brièvement l'objet.

Les valeurs possibles sont les suivantes :

*BLANK
Aucun texte n'est indiqué.
'description'
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.

Les valeurs possibles sont les suivantes :

*LIBCRTAUT
Les droits sur l'objet sont identiques aux droits de création pour QSYS. Ces derniers peuvent être affichés à l'aide de la commande DSPLIBD (Afficher une description de bibliothèque). Si vous les modifiez avec la commande CHGLIB (Modifier une bibliothèque), les nouveaux droits n'affecteront aucun des 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-liste-autorisation
Indiquez le nom d'une liste d'autorisation. Les droits sur l'objet définis dans la liste sont accordés aux utilisateurs figurant sur celle-ci. La liste d'autorisation doit exister à la création de l'objet.

Exemples

Les exemples sont basés sur les données suivantes :

FIELDA
six chiffres (quatre entiers et deux décimaux) avec une valeur de 001234
FIELDB
identique à FIELDA mais avec une valeur négative (-001234)
FIELDC
identique à FIELDA mais avec une valeur nulle (000000)
DATE
six chiffres (aucun décimal) avec une valeur de 091878

Le caractère b est utilisé pour représenter les espaces blancs.

Exemple 1 : création de la description d'édition 5

CRTEDTD   EDTD(5)  INTMASK('   ,   ,  0')  FRACMASK('    ')
          NEGSTS('DB    ')  POSSTS('CREDIT')
          LFTCNS('$')  RGTCNS(' **')

FIELDA
Le masque logique d'une valeur négative est "$b,bb0.bbDBbbbb b**", celui d'une valeur positive, "$b,bb0.bb CREDIT b**"

Le résultat édité est $bbb12.34CREDITb**

FIELDB
Masque logique identique

Le résultat édité est $bbb12.34DBbbbbb**

FIELDC
Masque logique identique

Le résultat édité est $bbbbb.00CREDITb** ou $bbbbbbbbCREDITb** si ZEROBAL(*NO) a été indiqué

Exemple 2 : création de la description d'édition 6

CRTEDTD   EDTD(6)  INTMASK('   . 0 ')  DECPNT(',')
          FRACMASK('   ')  CURSYM('DM')  NEGSTS('- **')

FIELDA
Le masque logique est "bbb.b0b,bb-b**" avec un DM flottant

Le résultat édité est bbbDM12,34bbbb

FIELDB
Masque logique identique

Le résultat édité est bbbDM12,34-b**

FIELDC
Masque logique identique

Le résultat édité est bbbbDM0,00bbbb ou bbbbbbbbbbbbbb si ZEROBAL(*NO) a été indiqué

Exemple 3 : création de la description d'édition 7

CRTEDTD   EDTD(7)  INTMASK('0 MONTH  DAY  YEAR')
          LFTCNS('DATE IS ')

DATE
Le masque logique correspond à la valeur du paramètre INTMASK

Le résultat édité est DATEbISbb9MONTH18DAYb78YEAR

Exemple 4 : création de la description d'édition 9

CRTEDTD   EDTD(9)  INTMASK('  ,  0')  DECPNT('.')
          FRACMASK('  ')  FILLCHAR('*')  NEGSTS(' ERROR **')

FIELDA
Le masque logique est "b,bb0.bbbbbbbbbbb" ou "b,bb0.bbbERRORb**" (les deux utilisent le symbole * comme caractère de remplissage)

Le résultat édité est ***12.34bbbbbbbbb

FIELDB
Masque logique identique

Le résultat édité est ***12.34bERRORb**

FIELDC
Masque logique identique

Le résultat édité est *****.00bbbbbbbbb ou ********bbbbbbbbb si ZEROBAL(*NO) a été indiqué

Messages d'erreur

Messages *ESCAPE

CPF9805
Objet &2 dans bibliothèque &3 détruit.

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