Rational Programming Patterns

Définition d'une ligne de -CD (Etat)

Pour afficher le contenu de cette section, vous devez sélectionner une ligne -CD d'Etat, c'est-à-dire le premier niveau de l'appel d'un Etat dans le tableau, ou cliquer sur le bouton Ajouter Etat. Cette section vous permet d'indiquer le code généré de l'Etat, son nom externe, emplacement COBOL, ainsi que des caractéristiques physiques. Le bouton Plus d'infos... vous permet d'accéder à une fenêtre dont le contenu complète les informations physiques déjà saisies ici.

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.

Nom externe
Ce nom est facultatif. La longueur maximum de saisie est de 6 caractères.
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 1. 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).

Définition de l'Organisation

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 2. 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, seront générées en WORKING-STORAGE SECTION 3 zones :
  • 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
Mode d'accès
Vous indiquez ici la façon dont la Structure de Données est accédée par le Programme.
Tableau 3. 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 4. 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 clause ASSIGN, les niveaux FD ou les ordres WRITE dépendent du type d'unité choisi.

Définition de l'utilisation

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 5. 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  

Autres

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 6. 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 7. 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 8. 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.


Conditions d'utilisation | Commentaires en retour

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