Rational Programming Patterns

Données de travail - Structure de Données

Ce niveau contient les Structures de Données appelées dans la WORKING STORAGE SECTION de l'instance.

Niveau d'appel de Structure de Données

La première colonne affiche le code généré de la Structure et la seconde colonne affiche son Emplacement COBOL et son Numéro de ligne, suivis de son nom externe.

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 :

Emplacement COBOL
Dans cette zone, vous indiquez l'emplacement et la séquence selon lesquels les lignes décrites dans cet onglet seront générées. Le numéro de séquence (5 caractères) d'une ligne de description des données est formé par la concaténation du contenu de cette ligne (2 premiers caractères) et du Numéro de ligne (3 derniers caractères).

La valeur que vous saisissez ici est variable, selon qu'il s'agisse de l'emplacement COBOL pour un programme batch ou un programme transactionnel.

Tableau 1. Valeurs de l'emplacement COBOL pour un programme batch
Valeur Signification
AA à ZZ et 0A à 0Z Les lignes indiquées dans cet onglet seront générées au début de la WORKING-STORAGE SECTION.
Par rapport aux Structures de Données appelées dans l'onglet Lignes -CD, ces lignes seront générées :
  • Avant la description des Structures de Données d'organisation W: Description de fichier en Working et ayant un code généré supérieur ou égal au contenu de cette zone.
  • Avant la description des Structures de Données d'organisation L: Working avec placement, et ayant un emplacement COBOL supérieur ou égal au contenu de cette zone.
00 à 09, 1A à 19... 9A à 99 Les lignes indiquées dans cet onglet seront générées dans la WORKING-STORAGE SECTION, après toutes les Structures de Données ayant un emplacement COBOL inférieur au contenu de cette zone
Tableau 2. Valeurs de l'emplacement COBOL pour un programme transactionnel
Valeur Signification
AA à 0Z Les données seront générées en WORKING-STORAGE SECTION.
00 à 99 Les données seront générées en LINKAGE SECTION.
AA et 00 Ces valeurs sont utilisées par le système pour des données générées automatiquement.
99 Avec un Numéro de ligne égal à 999, cette valeur est utilisée par le système pour l'instruction PROCEDURE DIVISION. Vous pouvez l'utiliser afin de créer une ligne de numéro de séquence 99999, qui remplacera la ligne PROCEDURE DIVISION générée automatiquement.
$n Dans une Macro paramétrée, vous pouvez paramétrer le contenu de cette zone.
Numéro de ligne
Ce numéro, constitué de trois caractères, sera concaténé avec l'emplacement COBOL indiqué. Le numéro de ligne peut prendre les valeurs suivantes :
  • 0 à 999 : Il est recommandé de numéroter les lignes de 10 en 10 pour permettre d'en insérer de nouvelles par la suite.
  • $n0 à $n9 : Dans une Macro, vous pouvez paramétrer les deux premiers caractères de cette zone.
Répétitions
Vous devez renseigner cette zone lorsque le nom de données (indiqué dans la zone Commentaire si vous affichez l'appel d'un commentaire, ou dans la zone Texte avant si vous affichez l'appel d'une Rubrique) se répète, c'est à dire quand il est considéré comme une table. Vous devez alors indiquer ici le nombre maximum de répétitions, sur cinq caractères numériques maximum.
Une valeur dans cette zone déclenche la génération des trois indices suivants (DDSS = Segment) :
  • IDDSSM initialisé à la valeur saisie
  • IDDSSL initialisé à zéro. Cet indice peut être utilisé pour le remplissage de la table. Il donne le nombre de postes effectivement chargés
  • IDDSSR initialisé à zéro. Cet index peut être utilisé pour la recherche en table

Dans une Macro, la dimension de la table peut être paramétrée avec la valeur $n.

Regroupement des Segments
Si sa valeur est vraie, tous les Segments de la même Structure de Données seront regroupés dans le code généré.
Sélection native
Cette zone correspond à la sélection paramétrée des Segments dans la WORKING STORAGE SECTION.
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 3. 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 4. 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 5. 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 6. 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.

Si vous développez le niveau d'appel de Structure de Données, vous voyez le niveau Structure de Données, avec ses Segments.

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)