Rational Programming Patterns

Entrée, Sortie, Entrée-Sortie, Fichiers de travail

Ces catégories contiennent les mêmes informations (excepté l'appel des Etats) que l'onglet Lignes -CD et la WORKING STORAGE SECTION du Programme. Elles affichent les caractéristiques des fichiers appelés en tant que ressources externes et internes du Programme. Ces fichiers sont représentés par des Structures de Données.

Si vous faites un clic droit sur les catégories Entrée, Sortie, Entrée-Sortie et Fichiers de travail, vous pouvez ajouter un fichier. Ce choix ouvre une boîte de sélection dans laquelle vous devez sélectionner une Structure de Données non utilisée dans le Programme. Vous devez indiquer son Code généré.

Niveau d'appel de Structure de Données

Le niveau d'appel de Structure de Données (ligne représentant un fichier appelé) affiche le code généré de la Structure dans la première colonne et le nom externe de la Structure dans la seconde colonne.

A partir d'un clic droit sur un appel de Structure de Données, vous pouvez ajouter une Structure de Données à l'appel.

Si vous développez la ligne d'appel de Structure de Données, vous voyez ses Attributs et sa Description, qui contiennent les zones suivantes :

Nom externe
Ce nom est facultatif. La longueur maximum de saisie est de 6 caractères. Son contenu varie selon le type de Structure de Données et l'organisation.

Pour l'organisation Y: Pacbench C/S, cette zone doit contenir le code de la clause COBOL COPY qui représente la zone de communication du Composant Applicatif Pacbench C/S accédant à la Vue Logique.

Pour les organisations SQL, cette zone doit contenir le code du Bloc SQL.

Pour toutes les autres Structures de Données, le contenu de cette zone dépend de la variante indiquée dans l'onglet Définition du Programme.

Tableau 1. Valeurs du nom externe
Variante Contenu de la zone
1: IBM DOS/VSE Vous pouvez indiquer trois types d'information :
  • SYSnnn : nom symbolique d'unité,
  • XXXnnn : unité symbolique SYSnnn et nom externe du fichier XXX,
  • XXXXXX : nom externe. L'unité symbolique est générée avec SYSnnn, nnn étant incrémenté de 1 pour chaque fichier en partant de SYS010.
X: IBM MVS/ESA OS/390 La clause ASSIGN (pour les fichiers séquentiels, organisation S: séquentiel) de nom externe SYSnnn est générée sous forme : SYSnnn-UT-....-S-SYSnnn.

Pour OS/390 : DDNAME

4: BULL GCOS7 INTERNAL-FILE-NAME
5: BULL GCOS8 File-code (2 caractères)
F: TANDEM Nom externe
I: DEC/VAX VMS Nom externe
Mode d'accès
Vous indiquez ici la façon dont la Structure de Données est accédée par le Programme.
Tableau 2. Valeurs du mode d'accès
Valeur Commentaire
S: Séquentiel Accès séquentiel
R: Direct / Aléatoire Fichiers en entrée avec accès aléatoire, la fonction LECTURE n'est pas générée automatiquement.
D: Dynamique Réservé aux fichiers VSAM.
Mode entrée-sortie
Sélectionnez une valeur dans la liste.
Tableau 3. Valeurs du mode entrée-sortie
Valeur Commentaire
I: Entrée Sélectionnable avec les utilisations suivantes : C: Consultation, T: Table stockée en mémoire, X: Table partiellement stockée en mémoire, M: Mouvement à contrôler, N: Mouvement à ne pas contrôler et P: Principal
O: Sortie Sélectionnable avec les utilisations suivantes : D: Fichier en sortie, S: Sélectionné, R: Résultat, E: Mouvement avec détection d'erreurs, I: Impression directe et J: Impression indirecte.
E: Sortie avec la clause OPEN EXTEND Sélectionnable avec les variantes suivantes : 4: BULL GCOS7, 5: BULL GCOS8, 0: IBM MVS/ESA OS/390, U: UNYSIS 2200 Series, F: TANDEM, I: DEC/VAX VMS, K: ICL 2900.
R: Entrée-Sortie Fichiers en accès direct seulement
T: Tri En entrée ou sortie suivant l'utilisation
Type d'unité
La codification de cette zone est importante dans les variantes de COBOL où les clauses ASSIGN, les niveaux FD ou les ordres WRITE dépendent du type d'unité choisi.
Utilisation
Cette zone permet de définir le rôle de la Structure de Données dans le Programme, et de commander la génération des fonctions automatiques.
Tableau 4. Valeurs de l'utilisation de la Structure de Données
Valeur Commentaire
C: Consultation Structure de Données quelconque en entrée
D: Fichier en sortie Structure de Données quelconque en sortie
P: Principal Structure de Données en entrée susceptible d'être mise à jour (par une Structure de Données d'utilisation M: Mouvement à contrôler ou N: Mouvement à ne pas contrôler)
R: Résultat Structure de Données principale après mise à jour en accès séquentiel (si la Structure de Données contient des clauses OCCURS DEPENDING, le résultat doit être déclaré en utilisation D: Fichier en sortie).
S: Sélectionné Structure de Données en sortie extraite d'une autre Structure de Données.

A la différence d'une Structure de Données. D: Fichier en sortie, sa description en zone de sortie n'est pas détaillée. Lorsque la Structure de Données contient des Rubriques dont le nombre de répétitions dépend d'un compteur (OCCURS DEPENDING ON), son utilisation doit être D: Fichier en sortie.

T: Table stockée en mémoire

Structure de Données destinée à être stockée intégralement en mémoire.

La table de stockage est générée en fonction du nombre de répétitions indiqué sur la Définition du Segment. Il n'est pas possible de sélectionner plus de 50 Segments par Structure de Données

X: Table partiellement stockée en mémoire Structure de Données stockée partiellement en mémoire (seules les Rubriques autres que les fillers sont décrites).

Les Rubriques élémentaires autres que les fillers, sont limitées à 10 pour la partie commune (code Structure excepté) et à 29 pour chaque partie spécifique.

M: Mouvement à contrôler Structure de Données en entrée à contrôler pouvant mettre à jour d'autres Structures de Données (fonctions générées : 30 à 76).
Remarque : Il n'est pas possible de déclarer plus d'une Structure de Données d'utilisation M: Mouvement à contrôler ou N: Mouvement à ne pas contrôler par Programme.
N: Mouvement à ne pas contrôler Structure de Données en entrée pouvant mettre à jour d'autres Structure de Données (fonctions générées : 30, 33, 39, 70 à 76).
Remarque : Il n'est pas possible de déclarer plus d'une Structure de Données d'utilisation M: Mouvement à contrôler ou N: Mouvement à ne pas contrôler par Programme.
E: Mouvement avec détection d'erreurs Rapport de contrôle: Structure de Données mouvement en sortie.

La description comporte ou non les Rubriques facultatives. Dans le cas où il n'y a pas de sélection de celles-ci, la description sera précédée des Rubriques ENPR et GRPR calculées lors de la génération et reprenant les vecteurs EN-PRR et GR-PRR.

I: Impression directe Impression directe (ou par SYSOUT en OS IBM)

La Structure commune éventuellement présente dans la description de l'Etat ne sera pas prise en compte.

J: Impression indirecte Impression indirecte à traiter par un programme de spool.

Cette valeur suppose l'utilisation de la Structure 00 pour définir une partie commune à toutes les lignes.

Y: Table de codification interne Pas de commentaire
Emplacement COBOL
Cette zone ne concerne que la description principale de la Structure de Données. (DDSS), et non les descriptions précédées d'un radical (1-DDSS ou 2-DDSS).

Elle permet d'obtenir une description de Structure de Données dans une zone particulière (zone de communication avec les Gestionnaires de Bases de Données, LINKAGE SECTION) ou en tête de la WORKING-STORAGE SECTION.

Cette zone est réservée aux Structures de Données en organisation L: Working avec placement ou W: Description de fichier en Working.

Pour effectuer une description de Structure de Données en WORKING-STORAGE SECTION, il est préférable de l'indiquer directement dans le code COBOL avec un micro-pattern.

Tableau 5. Valeurs de l'emplacement COBOL
Valeur Signification
00 La description de la Structure de Données est insérée après toutes les lignes de travail (valeur par défaut).
Caractères alphabétiques La description de la Structure de Données est insérée après toutes les lignes de travail dont le numéro de ligne à 5 positions commence par cette valeur.

Les lignes de travail et la description se trouvent, dans le programme généré, en tête de WORKING-STORAGE SECTION, avant les descriptions des Structures de Données d'organisation W: Description de fichier en Working et dont le code généré est supérieur à cette valeur.

Remarque : Ne choisissez pas un emplacement COBOL identique au code généré d'une Structure de Données d'organisation W: Description de fichier en Working.
Caractères alphanumériques La description de la Structure de Données est insérée après toutes les lignes de travail dont le numéro de ligne à 5 positions commence par cette valeur.

Les lignes de travail et la description se trouvent, dans le programme généré, en fin de WORKING-STORAGE SECTION parmi les zones-utilisateur.

Remarque : Pour ORACLE, vous devez utiliser des valeurs numériques pour que la DECLARE SECTION soit générée correctement (avec les zones données et indicateurs).
Niveau de rupture
Pour les fichiers triés, en accès séquentiel, vous devez indiquer le nombre de Rubriques (élémentaires ou groupes) sur lesquelles un traitement de contrôle des ruptures sera effectué pour la Structure de Données.

L'argument (ou indicatif) d'une Structure de Données se compose, au niveau d'un Programme, de 9 Rubriques au maximum. Ces 9 Rubriques définissent 9 niveaux de rupture de séquence au maximum. Le niveau indiqué est le niveau mineur sur lequel on désire déceler ces ruptures. L'option par défaut est O. Ces Rubriques sont indiquées dans la zone Argument de tri.

Les ruptures sur les niveaux majeurs seront automatiquement décelées. Le tout sera disponible sous forme de deux jeux de variables :
  • dd-PEn : premier Segment sur la Structure de Données dd au niveau n (valeur 1 = oui, 0 = non),
  • dd-DEn : dernier Segment sur la Structure de Données dd au niveau n (valeur 1 = oui, 0 = non),
Lorsque la Structure de Données est synchronisée avec d'autres, les ruptures sont automatiquement calculées sur l'ensemble des Structures de Données et disponibles sous forme de deux jeux de variables indiquant le changement de l'indicatif de niveau n (ou rupture de niveau n):
  • RTPn pour la rupture entre l'itération précédente du Programme et celle en cours.
  • RTDn pour la rupture entre l'itération en cours du Programme et la prochaine.
Ces variables sont également disponibles lorsqu'il n'y a pas de Structure de Données synchronisées dans le Programme. Pour une Structure de Données d'utilisation D: Fichier en sortie, affecter un nombre de niveaux de rupture différent de zéro permet d'obtenir au niveau du Programme généré une zone de réserve en WORKING-STORAGE SECTION affectée du radical 1- qui sera utilisée pour les traitements sur le fichier. Cependant, il est préférable de faire cela directement dans la WORKING-STORAGE SECTION du code COBOL en utilisant des micro-patterns.
Niveau de synchronisation
Les Structures de Données en accès séquentiel en entrée lues simultanément doivent être synchronisées. Le niveau indiqué est le niveau mineur de l'argument sur lequel les Structures de Données sont rapprochées. La valeur par défaut est 0 et le niveau peut aller jusqu'à 9.

Lorsque la synchronisation se limite à deux Structures de Données, les niveaux doivent être égaux (non contrôlé).

Lorsqu'il y a plus de deux Structures de Données, certaines peuvent être synchronisées à un niveau majeur par rapport aux autres.

Pour que la synchronisation soit automatique, les conditions suivantes doivent être réalisées :
  • Le niveau de rupture des Structures de Données doit être égal au niveau de synchronisation - 1, sauf pour une Structure de Données Mouvement pour laquelle le niveau de rupture doit être supérieur ou égal au niveau de synchronisation.
  • Les Rubriques composant l'argument de chaque Structure de Données doivent être classées en séquence croissante.
  • Les Rubriques composant l'argument de chaque Structure de Données doivent être de même longueur à niveau égal.
  • Ces Rubriques doivent avoir un format étendu. Si elles sont numériques, elles doivent être entières et non signées.
Si ces conditions ne sont pas réalisées, il faut modifier la cinématique du Programme avec du code spécifique.
La synchronisation se traduit par deux jeux de variables donnant l'état des Structures de Données :
  • dd-CFn : configuration de la Structure de Données dd au niveau n indique la participation de la Structure de Données en entrée au traitement pour ce niveau d'indicatif. (Valeur 1 : l'argument à ce niveau est égal au minimum en cours de traitement, valeur 0 sinon).
  • dd-OCn : occurrence de la Structure de Données dd au niveau n, indique, pour les Structures de Données principales, que l'on est en cours de mise à jour d'un Segment ou d'une séquence de Segments de la Structure de Données dd.
Argument de tri
C'est la suite des Rubriques composant l'argument (ou indicatif) de la Structure de Données, repérées par leur rang, tel qu'il est défini dans la description du Segment.

Ces Rubriques sont identifiées dans la zone Clés de tri de l'onglet Lignes -CE du Segment.

Si cette zone n'est pas utilisée, l'indicatif principal (Rubriques de rang 1 à 9) sera repris par défaut.

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
Mode de blocage
Cette zone génère la clause RECORDING MODE IS, qui indique la nature des enregistrements logiques du fichier.
Tableau 6. Valeurs du mode de blocage
Valeur Commentaire
F: Fixe Lors de la génération, les longueurs des différents enregistrements seront alignées sur la longueur du plus grand.
V: Variable Pas de commentaire
U: Non défini Pas de commentaire
S: Spanned Cette valeur est réservée aux variantes IBM MVS et DOS.
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, rapports 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 7. 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.

Code généré
Ce code établit la séquence de traitement de la Structure de Données/l'Etat. dans le programme.

Le premier caractère doit être alphabétique mais le second peut être numérique ou alphabétique.

Il est conseillé, lorsqu'une Structure de Données ou un Etat n'est utilisé qu'une fois dans un programme, de prendre comme code généré le nom de l'instance (choisi lors de la création de l'instance). Cependant si la même instance est appelée plusieurs fois dans un programme, vous pouvez différencier ces appels.

Vous pouvez paramétrer le code de l'instance dans une Macro avec la valeur $n.

Organisation
Sélectionnez une valeur dans la liste déroulante.

Vous pouvez indiquer si la Structure de Données doit être générée dans la WORKING-STORAGE SECTION, ou sous la forme de description d'une Table Pactables.

Vous pouvez aussi utiliser cette zone pour indiquer des descriptions base de données lorsque le module Description Bases de Données n'est pas utilisé. Les valeurs sont prises en compte par les Programmes de l'application.

Tableau 8. Valeurs possibles pour l'organisation
Valeur Commentaire
S: Séquentiel Ceci est la seule valeur autorisée pour un Etat, un Fichier Séquentiel ou de Tri.
V: VSAM, UFAS Ceci est l'une des deux valeurs possibles (avec I: Indexé) pour une Structure de Données de type Séquentiel Indexé.

Cette valeur fait générer la clause FILE STATUS et la zone correspondante, à condition que celle-ci soit déclarée dans la zone Zone complémentaire de la section Définition d'une ligne de -CD de l'onglet Lignes -CD (la fenêtre qui s'ouvre quand vous appuyez sur le bouton Plus d'infos).

I: Indexé Ceci est l'une des deux valeurs possibles (avec V: VSAM, UFAS) pour une Structure de Données de type Séquentiel Indexé.
Pour un fichier ISP de code LE, les trois zones suivantes seront générées en WORKING-STORAGE SECTION :
  • LE-FICHIER.
  • LE-DATA.
  • INVKEY.
La VALUE de LE-DATA sera le nom externe qui devra être le FILE CODE de la ligne $ DATA précédant, dans le flot des lignes contrôle d'exécution, les lignes ISP donnant les caractéristiques physiques du fichier.
G: Description de table Cette valeur provoque la génération de la zone de communication avec le module Pactables.
L: Working avec placement Les descriptions de fichiers sont générées dans la WORKING-STORAGE SECTION, à l'emplacement que vous indiquez dans la zone Emplacement COBOL
W: Description de fichier en Working Les descriptions de fichiers sont générées dans la WORKING-STORAGE SECTION, avant la constante DEBUT-WSS.

Une Structure de Données ainsi décrite sera utilisée comme zone de travail ou traitée à travers une fonction d'un système de gestion généralisé (Bases de Données par exemple).

Y: Pacbench C/S Appel de la clause COPY qui correspond à la zone de communication entre le client et le serveur (Composants Applicatifs Pacbench C/S uniquement).
X: Commentaire Structure de Données mentionnée à titre de commentaire, ne donne lieu à aucune génération.
2: Segments DB2 ou VAX/SQL Génération-Description d'un Segment DB2 ou VAX/SQL. Seuls les accès physiques ne sont pas générés. La structure des indicateurs variables correspondant aux colonnes de la table DB2 ou VAX/SQL est toujours générée.
Q: DB2 ou ALLBASE/SQL (IBM) Description de Bases de Données SQL/DS, DB2/2 ou DB2/6000.

(HP 3000) Description de Bases de Données ALLBASE/SQL

(MICRO FOCUS) Description de Bases de Données DB2/2 ou DB2/6000.

D: DL/1, IDS I et II

Réservé à la Description des Segments ou records de différentes Bases de Données, DL/1, IDS II, (suivant la variante du Programme), dans la génération de DBD, SYSGEN, schémas ou Programmes d'application (suivant la nature du Programme).

B: IDMS IDMS
A: ADABAS ADABAS
T: Fichiers TOTAL Fichiers TOTAL
O: ORACLE (< V6) ORACLE (< V6)
C: INTEREL RDBC ou RFM INTEREL RDBC ou RFM
R: RDMS RDMS
4: DB2/400 DB2/400
M: DATACOM DB DATACOM DB
N: NONSTOP SQL NONSTOP SQL
P: ORACLE V6 et V7 ORACLE V6 et V7
9: INFORMIX, SYBASE, INGRES/SQL, ou SQL SERVER INFORMIX, SYBASE, INGRES/SQL, ou SQL SERVER
Z: Structures de Données pour SOCRATE/CLIO Structures de Données pour SOCRATE/CLIO
F: FORMAL pour SOCRATE/CLIO FORMAL pour SOCRATE/CLIO
Type de format
Vous sélectionnez ici le format des Rubriques appelées dans les Segments de la Structure de Données.
Vous devez sélectionner le format en fonction de l' utilisation de la Structure de Données indiquée dans l'onglet Lignes -CD. Cette zone ne concerne pas les Structures de Données dont l'utilisation est I : Impression directe et J : Impression indirecte.
Remarque : Les Rubriques constituant les Segments ne doivent pas dépasser 999 caractères.
Tableau 9. Types de format des Rubriques
Valeur Commentaire
E : Entrée Valeur par défaut pour les fichiers d'utilisation M: Mouvement à contrôler, N: Mouvement à ne pas contrôler, E: Mouvement avec détection d'erreurs
I: Interne Valeur par défaut pour les fichiers d'utilisation autre que M: Mouvement à contrôler, N: Mouvement à ne pas contrôler, E: Mouvement avec détection d'erreurs
S: Edition  
Sous-schéma
Un sous-schéma est un groupe de Rubriques présentes dans la composition du Segment.

Cette zone est utilisée avec le module Pactables pour indiquer le sous-schéma qui va être décrit. Le sous-schéma est numérique, de 0 à 9 (0 correspond au sous-schéma 10)

Type de description
Sélectionnez ici le type de description de l'enregistrement qui va être utilisé dans le programme COBOL. Ceci permet d'obtenir plusieurs modes d'agencement des enregistrements d'une Structure de Données à partir des mêmes descriptions en Bibliothèque.
Tableau 10. Valeurs du type de description
Valeur Signification
Enregistrements redéfinis Pas de clause VALUE générée
1: Enregistrements sans valeurs initiales Enregistrements à la suite (partie commune suivie des différentes parties spécifiques), sans valeur initiale ni répétition d'enregistrements.

Si la description de la Structure de Données apparaît en FILE SECTION COBOL, la zone Nombre de niveaux du Segment doit avoir la valeur 2: niveaux COBOL 01 pour SD et 02 pour Segments.

2: Enregistrements avec valeurs initiales Enregistrements à la suite avec prise en compte des valeurs initiales spécifiées sur les lignes d'appel des Rubriques dans les Segments (onglet Lignes -CE), ou à défaut initialisation à blanc ou zéro selon le format.

Les valeurs initiales seront aussi générées pour les zones répétées, si le Langage généré de la Bibliothèque est D: COBOL II, 85, LE.

3: Enregistrements avec occurs (avec niveau 2) Enregistrements à la suite avec prise en compte du nombre de répétitions indiqué dans la zone Nombre de postes de l'onglet Définition du Segment, sans valeurs initiales.

Aucune clause VALUE ne sera générée.

Si la description de la Structure de Données apparaît en FILE SECTION COBOL, la zone Nombre de niveaux du Segment doit avoir la valeur 2: niveaux COBOL 01 pour SD et 02 pour Segments.

Ce type de description ne peut être employé pour une Structure de Données ayant un nombre de répétitions sur la partie commune (indiquez dans ce cas une Organisation W: Description de fichier en working et une Utilisation T: Table stockée en mémoire).

4: Enregistrements avec occurs (avec niveau 3) Enregistrements à la suite avec prise en compte du nombre de répétitions indiqué dans la zone Nombre de postes de l'onglet Définition du Segment.

La zone Nombre de niveaux du Segment doit avoir la valeur 3: niveau COBOL pour SD et Segments dépendant du type de description.

Remarque spécifique au module Dialogue : L'indice n'est pas généré si le type de description est 4: Enregistrements avec occurs (avec niveau 3) et le Nombre de niveaux du Segment est 3: niveau COBOL pour SD et Segments dépendant du type de description,

Le niveau 02 permet d'accéder à la table constituée par la répétition d'un même enregistrement (ddssT).

Le niveau 01 regroupe l'ensemble des informations de la Structure de Données (partie commune et parties spécifiques répétées ou non).

Ce type de description ne peut être employé pour une Structure de Données ayant un nombre de répétitions sur la partie commune (indiquez dans ce cas une Organisation W: Description de fichier en working et une Utilisation T: Table stockée en mémoire).

Nombre de niveaux du Segment
Utilisée conjointement avec la zone Type de description, cette zone définit le nombre niveau COBOL des descriptions des Structures de Données, Segments et Rubriques. Dans les descriptions ci-après on entend par "niveau S.D", le niveau COBOL de la zone DD00 (éventuellement 1-DD00, 2-DD00).
Tableau 11. Valeurs possibles du nombre de niveaux du Segment
Valeur Commentaire
1: niveau COBOL 01 pour SD et Segments Si la description de la S.D. apparaît en FILE SECTION COBOL, les Segments doivent obligatoirement être redéfinis.

Si la Structure de Données est sans partie commune avec une description de type non redéfinie, le niveau de S.D. n'apparaît que lorsque le Type de description est positionné à Enregistrements redéfinis.

2: niveaux COBOL 01 pour SD et 02 pour Segments Si le Type de description est positionné à Enregistrements redéfinis, la S.D. et les Segments seront décrits au niveau 02 (Utilisez de préférence une organisation L: Working avec placement et définissez les nombres de niveaux supérieurs dans les zones de travail).
3: niveau COBOL pour SD et Segments dépendant du type de description Niveau 02 pour S.D. et niveau 03 pour Segments lorsque le Type de description est positionné à 1: Enregistrements sans valeurs initiales, 2: Enregistrements avec valeurs initiales ou 3: Enregistrements avec occurs (avec niveau 2).

Niveau 01 pour S.D. et 03 pour Segments si le Type de description est positionné à 4: Enregistrements avec occurs (avec niveau 3).

Niveau 03 pour S.D. et Segments si le Type de description est Enregistrements redéfinis.

4: niveau COBOL 02 pour Rubriques, absence de niveau SD et Segments Réservé aux S.D. avec une organisation L: Working avec placement et une Utilisation D: Fichier en sortie.

Niveau 02 pour Rubriques groupe ou Rubriques élémentaires n'appartenant pas à un groupe. Les Rubriques élémentaires appartenant à une Rubrique groupe apparaissent mais les niveaux S.D et Segments disparaissent.

Le niveau 01 doit être défini dans la WORKING-STORAGE SECTION.

5: niveau COBOL 01 pour Rubriques, absence de niveau SD et Segments Réservé aux S.D. avec une organisation L: Working avec placement ou W: Description de fichier en working et une Utilisation D: Fichier en sortie.

Niveau 01 pour les Rubriques groupe ou Rubriques élémentaires n'appartenant pas à un groupe. Les Rubriques élémentaires appartenant à un groupe apparaissent mais les niveaux S.D. et Segments disparaissent.

Niveau Structure de Données

Si vous développez le niveau d'appel de la Structure de Données, vous voyez les Structures de Données incluses dans l'appel.

A partir d'un clic droit sur une de ces Structure de Données, vous pouvez lui ajouter des Segments.

Le niveau Structure de Données affiche le nom de la Structure dans la première colonne et le libellé de la Structure dans la seconde colonne.

La zone Nature de la sélection affiche l'une des deux valeurs suivantes :
  • Implicite si aucun Segment n'a été explicitement sélectionné. Tous les Segments de la Structure de Données présents dans le référentiel seront pris en compte. Dans l'onglet Lignes -CD, le bouton radio Tous les Segments est sélectionné.
  • Explicite si vous avez sélectionné quelques Segments avec Ajouter des Segments dans le menu contextuel ou le bouton radio Segments sélectionnés dans l'onglet Lignes -CD. Si de nouveaux Segments ont été créés pour cette Structure de Données dans le référentiel depuis la sélection et si vous voulez les prendre en compte, vous devez les ajouter, un par un.
    Remarque : Après avoir sélectionné explicitement des Segments, vous devez supprimer tous ces Segments pour pouvoir repasser à une sélection implicite.
Si la sélection est implicite mais si vous faites un clic droit pour supprimer un des Segments ou si vous modifiez son code généré, la sélection redeviendra automatiquement explicite.

Niveau Segment

Le niveau Segment est imbriqué dans le niveau Structure de Données. Les deux premiers caractères du Segment représentent la Structure de Données et les deux derniers représentent le code généré du Segment.

Le niveau Segment affiche le nom du Segment dans la première colonne et le libellé du Segment dans la seconde colonne.

Si vous développez ce niveau, vous voyez le code généré du Segment, qui est éditable.

La composition de chaque Segment (équivalente à l'onglet Lignes -CE) est affichée dans le niveau imbriqué, avec une ligne par Rubrique appelée. Si vous développez la première ligne d'une Rubrique appelée, vous pouvez voir et modifier son nom et son libellé. Ses Attributs contiennent les mêmes informations que l'onglet Définition de la Rubrique, excepté l'héritage qui ne peut être indiqué que dans l'onglet.


Conditions d'utilisation | Commentaires en retour

Ce centre de documentation utilise la technologie Eclipse. (http://www.eclipse.org)