Rational Programming Patterns for System z

Suite de la Définition de la ligne -CD (Structure de Données)

Cette fenêtre vous permet de saisir la suite des informations physiques de la Définition de la ligne -CD (Structure de Données).

Facteur de Blocage
Cette zone, sur 5 caractères, doit être renseignée pour la génération de la clause BLOCK CONTAINS.

Elle doit contenir une valeur numérique qui correspond à la taille du bloc, c'est à dire la taille de l'enregistrement physique. Le zéro et les espaces sont équivalents.

La taille du bloc peut être zéro pour :
  • IBM OS, sauf pour les Structures de Données indexées.
  • IIBM MVS. La clause BLOCK CONTAINS est générée pour un fichier VSAM seulement si la Bibliothèque est en COBOL II.
La clause BLOCK CONTAINS n'est pas générée dans les cas suivants :
  • Fichier tri,
  • Fichier disque (fichier stocké sur un disque) si aucun nombre n'est indiqué,
  • Fichier dont le Type d'unité est R: Périphérique lent en IBM DOS (variante 1),
  • Bloc 0 pour UNISYS série A (variante 8), AS 400 (variante O),
  • Bloc 0 pour COBOL II IBM VSE et Type de blocage à N: Ignorer la gestion des blancs.
Type de Blocage
Vous indiquez ici si la taille du bloc, saisie dans la zone Facteur de Blocage, représente un nombre d'enregistrements, de caractères ou si elle doit être ignorée dans la gestion des blancs.
Structure de Données Résultat

Si la Structure de Données a une Utilisation àP: Principal, vous devez indiquer le code généré de la Structure de Données résultat en sortie.

Si la Structure de Données a une Utilisation àR: Résultat ou D: Fichier en sortie, vous devez indiquer le code généré de la Structure de Données principale en entrée.

Structure de Données Source
Si la Structure de Données a une Utilisation à :
  • M: Mouvement à contrôler ou N: Mouvement à ne pas contrôler, vous devez indiquer le code généré de la Structure de Données compte-rendu de contrôle (Utilisation àE: Mouvement avec détection d'erreurs)
  • E: Mouvement avec détection d'erreurs, vous devez indiquer le code généré de la Structure de Données mouvement (Utilisation àM: Mouvement à contrôler ou N: Mouvement à ne pas contrôler).
  • S: Sélectionné, vous devez indiquer le code généré de la Structure de Données source en entrée ; sur la ligne d'appel de la Structure de Données source, vous devez indiquer le code généré de la Structure de Données sélectionnée.
Niveau de rupture sur mouvement
Dans une Structure de Données mouvement, ce niveau représente le rang de la Rubrique d'indicatif qui permet de faire la distinction entre plusieurs mouvements relatifs à un même Segment de la Structure de Données permanente (ce niveau est donc nécessairement égal ou plus fin que le niveau de synchronisation de la Structure de Données mouvement).

Tant qu'aucune rupture n'est détectée à ce niveau, les enregistrements traités appartiennent au même mouvement.

Une rupture à ce niveau conditionne, par exemple, l'initialisation des variables d'erreurs associées au mouvement et le contrôle de correspondance avec la ou les Structures de Données principales.

Par défaut, il est égal au Niveau de rupture de la Structure de Données; déjà indiqué dans la fenêtre précédente. Sa valeur doit être saisie sur un caractère.
Remarque : Les blancs sont remplacés par des zéros
Type d'unité physique
Le type d'unité possible varie selon la variante COBOL :
  • Variante = 1: IBM DOS/VSE : Indiquez le type de modèle (exemples : 2314, 3330, 2400)
  • Variante = 3: UNIX, WINDOWS :
    • EXT = Génération de la clause EXTERNAL au niveau de la FD du fichier
    • LS = Génération de la clause LINE SEQUENTIAL
    • EXLS = Génération de la clause LINE SEQUENTIAL et EXTERNAL au niveau de la FD du fichier
  • Variante = Q: ACUCOBOL :
    • LS = Génération de la clause LINE SEQUENTIAL
  • Variante = 4: BULL GCOS7 :
    • SSF = Option WITH SSF dans la clause SELECT
    • OUT = Option suffixe -SYSOUT après le nom du fichier de la clause SELECT (WITH SSF est générée).
  • Variante = 5: BULL GCOS8 :
    • PT = Imprimante
    • CR = lecteur de cartes
    • SSF = ORGANISATION IS GFRC SEQUENTIAL SSF CODE SET IS GBCD
    • IBM = ORGANISATION IS IBM-OS SEQUENTIAL
    • xxx = WITH xxx
    Un V dans la quatrième position de cette zone permet de générer la clause VALUE OF ID. La clause générée est : VALUE OF FILE-ID IS 3-XX00-IDENTXX est le code généré de la Structure de Données. La zone 3-XX00-IDENT doit être définie dans la WORKING-STORAGE SECTION par l'utilisateur.
    Remarque : Le V en quatrième position peut être combiné avec une des valeurs d'unité, sur la même ligne.
  • Variante = 8: UNYSIS A Series :
    • DK ou blanc = disque
    • DKS = disque de tri (avec ouverture T)
    • DKM = disque de fusion (avec ouverture T)
    • RD = lecteur
    • PT = imprimante
    • PO = fichier PORT
    • TP = bande
    Pour les codes à 2 caractères le troisième peut préciser un ordre de fermeture particulier :
    • P = PURGE
    • R = RELEASE
    • L = LOCK
    • S = SAVE
    Un V en quatrième position fait générer la clause VALUE OF FILENAME IS 3-FF00-IDENT.
  • Variante = U: UNYSIS 2200 Series :
    • .CR = lecteur de cartes
    • CP = perforateur de cartes
    • .UN = UNISERVO
    • .TP = bande
    • PN = imprimante avec nom externe. Si la zone Complément est renseignée, la clause RECORDING est également générée.
    • PT = imprimante sans nom externe
    • PF = imprimante avec nom externe et
      • VALUE OF PRINTER-FORMS 3-FF00-FORMS
      • LINAGE IS 3-FF00-LINES
      • TOP IS 3-FF00-TOP
      • BOTTOM IS 3-FF00-BOTTOM
      Ces quatre noms-données sont à déclarer dans les zones de travail avec les valeurs appropriés.
  • Variante = O: AS/400 :
    • RD = lecteur
    • CP = perforateur de cartes
    • DB = base de données
    • PT = imprimante
    • TP = bande
    • DK ou blanc = disque
Complément
Cette zone complète la zone Type d'unité physique. Son but varie selon la variante COBOL.
Tableau 1. Valeurs du complément du type d'unité physique
Valeur Variante
R: Lecteur 1: IBM DOS/VSE
P: Perforatrice 1: IBM DOS/VSE
S: Jeu de caractères EBCDIC 5: BULL GCOS8 et U: UNYSIS 2200 Series
C: Jeu de caractères ASCII 5: BULL GCOS8
O: Pas de génération de l'option OPTIONAL 4: BULL GCOS7 et 5: BULL GCOS8
A: Option d'ouverture de fichier ALLOWING ALL et lecture séquentielle option & REGARDLESS I: DEC VAX VMS
Zone complémentaire
Cette zone est facultative.

Si vous la valorisez, il est recommandé d'indiquer une chaîne de caractères, comprenant 10 caractères maximum, en respectant le format suivant :

ddsseeeeee, où :
  • dd = Structure de Données
  • ss = Enregistrement (00 est recommandé)
  • eeeeee = Rubrique
L'utilisation de cette zone varie selon la variante du langage à générer et l'Organisation de l'appel de la Structure de Données :
  • Pour les fichiers non VSAM et tous les types de matériel à l'exception de BULL GCOS8 :
    • Génération de la clé nominale, symbolique ou courante selon la variante,
    • Vous devez définir la zone de travail correspondante, par exemple, 1-ddss-eeeeee. Vous devez aussi préciser, avec du code spécifique, la position de cette clé et demander la lecture de la Structure de Données.
  • Pour les fichiers VSAM :
    • Génération du code retour des opérations d'entrée-sortie
    • Génération de la clause VALUE OF correspondante uniquement si elle est définie comme zone de travail et spécifiée avec du code spécifique.
  • Pour BULL GCOS8 :
    • Identification de la Structure de Données
    • Génération de la clause FILE STATUS IS correspondante, si elle est définie comme zone de travail et spécifiée avec du code spécifique.
Rubrique clé d'accès

Vous saisissez ici la Rubrique clé dans l'enregistrement, qui est obligatoire pour les fichiers en organisation indexée.

Rubrique code d'enregistrement

Vous saisissez ici le code mnémonique de la Rubrique permettant d'identifier par ses valeurs les différents types d'enregistrements du fichier.

Cette Rubrique se trouve obligatoirement dans la partie commune (code enregistrement 00).

Ce code peut également être précisé au niveau de la Définition du Segment partie commune, dans la zone Valeur code structure et sert alors de valeur par défaut au niveau de la génération.