reuse

http://www-1.ibm.com/support/docview.wss?rs=37&context=SSEP67&uid=swg27005478

Assistant de création

Si la case à cocher Créer une instance dérivée est sélectionnée, vous pouvez utiliser la longueur totale de cette zone de saisie pour indiquer son nom. Ainsi, le nom de l'instance dérivée peut par exemple commencer par le nom de l'instance de référence et finir par la Bibliothèque de génération. Si vous ne saisissez rien dans cette zone, si vous cochez la case Créer une instance dérivée et indiquez une instance de référence dans la zone <Entité> à dériver, le nom sera automatiquement initialisé avec le nom de cette instance de référence.

Projet
Sélectionnez un projet dans la liste ou saisissez le nom d'un projet dans lequel l'instance sera sauvegardée.

Un projet représente la répartition physique de vos instances dans l'espace de travail. Il regroupe des répertoires et des fichiers. Il sert à organiser les ressources qui pourront ensuite être générées, partagées ou versionnées.

Un projet Pacbase contient un sous-ensemble de fichiers qui correspondent aux modèles et sources générés constituant une application.

Package
Un package est un regroupement logique d'informations à l'intérieur d'un projet.

Dans un contexte de maintenance d'applications Pacbase, il est déconseillé de sélectionner un package. La gestion du remplacement des instances est ainsi facilitée car l'instance de remplacement se trouve toujours dans le même package que l'instance à remplacer. Vous n'avez plus à gérer la coexistence des deux instances dans le même package, qui est la condition requise pour que le remplacement s'effectue.

Définition des paramètres de génération
Les paramètres de génération sont définis dans les Bibliothèques. Ces paramètres sont liés à l'adaptation au système d'exploitation utilisé.

Pour sélectionner une Bibliothèque, cliquez sur le bouton Modifier.

Paramètres de génération
Les paramètres de génération sont définis dans les Bibliothèques. Ces paramètres sont liés à l'adaptation au système d'exploitation utilisé.

Cliquez sur Parcourir. Dans l'assistant de sélection qui s'ouvre, sélectionnez une Bibliothèque. Vous pouvez aussi créer une Bibliothèque en cliquant sur Nouvelle Bibliothèque.

Libellé
Saisissez le libellé identifiant l'instance. Il constituera un critère de recherche lors d'une recherche d'instance.
Ouvrir l'éditeur après la création
Cochez cette boîte pour que l'éditeur de l'instance en création s'ouvre automatiquement. L'éditeur s'ouvre sur l'onglet Vue d'ensemble. Depuis cet onglet, vous pouvez accéder aux autres onglets pour indiquer toutes les caractéristiques de l'instance
Créer une entité dérivée
Cochez cette option pour créer une instance d'entité dérivée qui pointera vers une instance de référence. L’instance dérivée ne contiendra qu'un lien vers l'instance de référence et une Bibliothèque contenant les paramètres de génération. Vous pourrez ensuite utiliser cette instance dérivée pour générer l'instance de référence sans dupliquer son design, à partir d'une Bibliothèque différente. Les paramètres de génération de la Bibliothèque indiquée dans l'instance dérivée produiront un source COBOL différent de celui produit à partir de la Bibliothèque de l'instance de référence.

Si vous cochez cette option, la zone <Entité> à dériver s'affiche. Dans l'assistant, <Entité> est remplacée par l'entité (par exemple Programme, Ecran ou Structure de Données). Vous devez sélectionner l'instance de référence qui contient le design nécessaire à l'instance dérivée.

Format interne
Ce format, affiché aussi dans l'onglet Vue d'ensemble, est obligatoire, sauf si la Rubrique est une Propriété.
Ce format est utilisé lorsque la Rubrique est appelée dans un des composants suivants :
  • Un fichier de l'application (fichier permanent, base de données, fichier temporaire)
  • Un écran en entrée de la zone, si aucun format conversationnel n'est indiqué (voir la zone Type de ligne dans l'onglet Lignes -D de l'éditeur de Rubrique)
Ce format est transféré automatiquement vers les Segments où se fait l'appel de Rubrique. Mais vous pouvez finalement choisir le format approprié dans l'onglet Lignes -CD des Programmes qui appellent ces Segments.

Vous devez assurer la compatibilité entre le format interne et le format d'entrée.

Vous devez saisir le format interne comme une "picture" COBOL, sans caractères d'édition.
Notes :
  • Dans la majorité des cas, le format de type numérique d'une Rubrique est entré tel quel. Toutefois, s'il excède 10 caractères, vous devez supprimer le 9 après la virgule. Par exemple, le format S9(10)V9(3) qui occupe 11 caractères sera entré sous la forme S9(10)V(3) qui n'occupe que 10 caractères, mais il sera généré sous la forme S9(10)V9(3).
  • Pour les Rubriques de type Unicode (type U), vous devez indiquer N(n) ou un format numérique signé ou non.
La clause INTERNAL USAGE concerne ce format seul.
Remarque : Pour les Rubriques de type Unicode, si le format interne est numérique signé, l'usage interne doit être X ou 1.
Vous pouvez indiquer les formats symboliques suivants pour les Rubriques de type date :
Tableau 1. Formats symboliques pour les dates
Valeur Signification
D Date sans siècle (JJMMAA ou MMJJAA)
I Date sans siècle (AAMMJJ)
E Date sans siècle (JJ/MM/AA ou MM/JJ/AA)
S Date avec siècle (SSAAMMJJ)
C Date avec siècle (JJMMSSAA ou MMJJSSAA)
M Date avec siècle (JJ/MM/SSAA ou MM/JJ/SSAA)
G Format grégorien (SSAA-MM-JJ)
T Format TIME (HH:MM:SS)
TS Format TIMESTAMP
Remarque : Pour les formats incluant un séparateur (E, G, M, T), vous pouvez indiquer, à la suite du caractère représentant le format, un caractère représentant un séparateur différent de celui prévu par défaut dans le format. Par exemple, vous pouvez indiquer G/ dans cette zone pour générer un format grégorien SSAA/MM/JJ au lieu du format grégorien standard SSAA-MM-JJ.

Pour l'utilisation des formats avec les différents types de Blocs Bases de Données, reportez-vous aux tableaux récapitulatifs du chapitre Colonnes : Rubriques dans le manuel DBD relationnelles SQL, disponible depuis le site de la documentation VisualAge Pacbase à l’URL suivante :

http://www-1.ibm.com/support/docview.wss?rs=37&context=SSEP67&uid=swg27005478

Vous pouvez indiquer les formats symboliques suivants pour les Rubriques de type date :
Tableau 2. Formats symboliques pour les dates
Valeur Signification
D Date sans siècle (JJMMAA ou MMJJAA)
I Date sans siècle (AAMMJJ)
E Date sans siècle (JJ/MM/AA ou MM/JJ/AA)
S Date avec siècle (SSAAMMJJ)
C Date avec siècle (JJMMSSAA ou MMJJSSAA)
M Date avec siècle (JJ/MM/SSAA ou MM/JJ/SSAA)
G Format grégorien (SSAA-MM-JJ)
T Format TIME (HH:MM:SS)
TS Format TIMESTAMP
Remarque : Pour les formats incluant un séparateur (E, G, M, T), vous pouvez indiquer, à la suite du caractère représentant le format, un caractère représentant un séparateur différent de celui prévu par défaut dans le format. Par exemple, vous pouvez indiquer G// dans cette zone pour générer un format grégorien SSAA/MM/JJ au lieu du format grégorien standard SSAA-MM-JJ.

Vue d'ensemble

Description de l'onglet

Trois sections ne sont pas des onglets et ne sont affichées que dans l'onglet Vue d'ensemble : Alertes et actions, Informations générales, et Définition des paramètres de génération (sur certaines entités).

Toutes les autres sections contiennent des liens vers les onglets correspondants de l'éditeur.

Si des informations sont affichées dans une section, vous pouvez effectuer l’une des deux actions suivantes :
  • Cliquer sur ces informations si elles apparaissent sous forme de liens. Vous basculez alors automatiquement à l'endroit où l'information a été indiquée.
  • Cliquer sur le bouton Plus d'infos pour afficher l'onglet correspondant.

Si aucune information n'est affichée dans la section, cliquez sur le symbole situé devant le nom de la section. Vous verrez alors s'afficher le bouton Plus d'infos, qui vous permet d'accéder en un clic à l'onglet correspondant.

Les sections de l’onglet

Alertes et actions
Tout problème lié à l'instance courante est affiché dans cette section sous forme d'un lien. Si vous cliquez sur ce lien, vous basculez automatiquement sur la vue Problèmes, où la ligne correspondant à l'erreur est mise en évidence. L'erreur est expliquée afin que vous puissiez la corriger.
Informations générales : cette section affiche les zones suivantes :
Contexte de travail
Le contexte de travail est le projet à partir duquel vous ouvrez l'éditeur de l'instance courante. Ce projet constitue le point de départ pour la résolution des liens dynamiques et des références entre les instances des différents projets. La hiérarchie des projets déclarée dans le chemin de compilation design est explorée de façon ascendante.

Si vous cliquez sur Hiérarchie, vous voyez une vue partielle du chemin de compilation design. Dans cette vue, le projet représentant le contexte de travail est le projet le plus bas de la hiérarchie.

Pour plus d'informations, cliquez sur les liens suivants : Le contexte de travail et Le chemin de compilation design.

Nom
Le nom de l'instance est affiché en consultation. Il est choisi lors de la création de l'instance et ne peut pas être modifié par la suite.
La section Mots-clés affiche les mots-clés déjà définis pour l'instance.
Définition des paramètres de génération
Les paramètres de génération sont définis dans les Bibliothèques. Ces paramètres sont liés à l'adaptation au système d'exploitation utilisé.

Pour changer la Bibliothèque contenant ces paramètres, cliquez sur le bouton Modifier.

Lignes -W

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 3. 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 4. 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.

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.

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

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

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
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)

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.

Définition d'une Rubrique

Nom
Ce nom est un code alphanumérique qui repère la Rubrique indépendamment de toute appartenance à une Structure de Données, à un Etat ou à un Ecran Il est donc inutile d'inclure un code Segment, Etat ou Ecran dans le code Rubrique : ce code sera automatiquement ajouté lors de la génération.

Certains noms de Rubriques ont un emploi réservé dans les Structures de Données, les Etats ou les Ecrans. Leur définition est donc interdite :

Tableau 9. Liste des noms réservés pour les Rubriques
Nom Réservé pour
FILLER Alignement des champs

ENPR

GRPR

ERUT

Contrôle d'erreur sur les fichiers mouvements (options du module Langage Batch) :

Contrôle d'erreurs des Rubriques

Contrôle d'erreurs des Segments

Contrôle d'erreurs définies par l'utilisateur

Usage
Cet usage correspond à la clause COBOL USAGE.

La clause USAGE d'une variable COBOL numérique permet d'indiquer la présentation interne de sa valeur. Il existe plusieurs USAGEs en fonction des variantes COBOL adaptées au matériel.

Vous choisissez l'usage d'une Rubrique en fonction de la :
  • Variante de génération associée à la Bibliothèque dans laquelle vous la définissez
  • Représentation interne que vous désirez.
    Exemple : Si vous générez pour IBM, l'usage C génère la clause USAGE BINARY et F la clause USAGE COMP-1. Pour UNISYS 1100, l'usage H génère la clause USAGE COMP.
Vous pouvez utiliser cette Rubrique dans une Bibliothèque de niveau hiérarchique inférieur et dont la variante de génération est différente de celle de la Bibliothèque supérieure.
Exemple : Vous avez défini la Rubrique CORUB dans la Bibliothèque SUP avec C comme usage et vous l'utilisez dans une bibliothèque INF qui a une variante de génération pour UNISYS 1100.
Lorsque ce cas se produit, l'usage de la Rubrique sera automatiquement remplacé par un équivalent compatible avec la variante de génération. Ainsi, lorsque vous visualisez CORUB dans INF, l'usage qui s'affiche automatiquement est H.
Tableau 10. Valeurs possibles pour l'usage
Valeur Signification
B COMPUTATIONAL-1 ICL 1900 BINARY-1 UNISYS 1100
C COMPUTATIONAL type IBM ou équivalent;

BINARY type IBM et variante COBOL II.

D DISPLAY (option par défaut, sauf pour les Rubriques de type Unicode), tout matériel.

Obligatoire pour les Rubriques représentant des dates.

F COMPUTATIONAL-1 IBM ou équivalent.

COMPUTATIONAL-9 BULL GCOS7. COMPUTATIONAL-11 GCOS8.

DBD Relationnelles : virgule flottante simple précision.

G COMPUTATIONAL SYNCHRONIZED RIGHT ICL 2900

COMPUTATIONAL-5 MICRO FOCUS.

H COMPUTATIONAL UNISYS 2200.

BINARY UNISYS 2200 (COBOL 85)

I DISPLAY-1 UNISYS 2200
J COMPUTATIONAL-6 GCOS8.

REAL UNISYS-A.

N COMPUTATIONAL-4 cadré sur un demi-octet. En cas de longueur impaire, le complément n'est pas généré; vous devez donc l'ajouter.

NATIONAL (option par défaut) pour les Rubriques de type Unicode (type U)

O COMPUTATIONAL-4 UNISYS 2200
P COMPUTATIONAL-1GCOS8.
Q COMPUTATIONAL GCOS8.
R COMPUTATIONAL SYNCHRONIZED RIGHT, IBM ou équivalent. Cet usage est recommandé, de préférence à l'usage C, lorsque les données binaires sont cadrées sur des adresses paires, car les instructions COBOL les concernant sont plus performantes.
T COMPUTATIONAL-3 PACKED SYNC. GCOS8.
U COMPUTATIONAL-1 UNISYS 2200.
W COMPUTATIONAL-2 UNISYS 2200.

COMPUTATIONAL-12 GCOS8.

Bases de Données Relationnelles : virgule flottante double précision.
X DISPLAY SIGN IS TRAILING SEPARATE CHARACTER.

ou NATIONAL SIGN IS TRAILING SEPARATE CHARACTER pour les Rubriques de type Unicode (type U).

Y DB-KEY GCOS8. POINTER IBM and MICRO FOCUS
Z Option réservée au batch : permet de faire générer une clause BLANK WHEN ZERO, cette option n'étant utilisable qu'avec un format d'édition.
0 COMPUTATIONAL-7 GCOS8
1 DISPLAY SIGN LEADING SEPARATE - UNISYS 2200, GCOS8, IBM, TANDEM, GCOS7.

or NATIONAL SIGN IS LEADING SEPARATE CHARACTER pour les Rubriques de type Unicode (type U).

2 DISPLAY-2 GCOS8 = DISPLAY, la comparaison de zones de ce type se fait suivant la "commercial collating sequence" et non suivant la séquence standard.
3 COMPUTATIONAL-3 IBM ou équivalent.

COMPUTATIONAL GCOS7

PACKED-DECIMAL UNISYS 2200 (COBOL 85)

5 COMPUTATIONAL-1 GCOS7 GCOS8
6 COMPUTATIONAL-2 GCOS7 GCOS8
7 COMPUTATIONAL-5 ICL 2900.
8 COMPUTATIONAL BULL 66 GCOS8.
9 COMPUTATIONAL-3 GCOS7 and GCOS8.

Variante de COBOL à générer

Remarque : Certaines variantes ne sont pas supportées ou sont obsolètes.

Appel d'un Segment

Indicateur de tri
Vous devez entrer dans cette zone un caractère alphanumérique qui identifie une Rubrique ou un Segment utilisé comme indicatif dans un fichier. Cela permet de repérer les Rubriques susceptibles d'appartenir à un indicatif (ou argument) de tri ou d'être utilisées comme clé d'accès à un fichier, une base de données ou à une Table Pactables.
Remarque : Il est vivement recommandé de dédier un Segment à un seul type d'utilisation. Toute Rubrique susceptible d'appartenir à un indicatif de tri doit être repérée par un caractère (chiffre ou lettre). Un même caractère ne peut être utilisé qu'une seule fois dans la description du Segment. Il est recommandé d'utiliser des suites (1, 2, 3 ...). L'ordre réel de tri du fichier sera indiqué au niveau du Programme, en listant les caractères repères dans l'ordre souhaité sur l'appel des Structures de données (-CD).
Rappel : S'il s'agit d'un groupe, son format doit être indiqué explicitement au niveau du référentiel ou du Segment. Les indicatifs sont interdits pour une Rubrique qui redéfinit une autre Rubrique.
Tableau 11. Valeurs possibles de l'indicatif de tri pour Pactables
Valeurs Commentaires
U Clé d'accès de la Table. Cette valeur doit être indiquée sur la Rubrique groupe si la clé est sous-définie.
S Rubrique définissant l'appartenance à un sous-système
Tableau 12. Valeurs possibles de l'indicatif de tri pour les bases de données DL/1
Valeurs Commentaires
U Clé unique pour bases de données DL/1.
M Clé multiple pour bases de données DL/1.
1 à 9 Index secondaire. Toute autre valeur désigne un champ de recherche.
Tableau 13. Valeurs possibles de l'indicatif de tri pour AS400 et les bases relationnelles
Valeurs Commentaires
0 à 9 Clé fichier physique AS400. Bases de données relationnelles.
V Colonne de format variable.
Blanc Colonne de format fixe.
W Pour DB2 SQL, SQL/DS et ORACLE, génération d'une VARCHAR, quelle que soit sa longueur.
L Pour DB2 SQL, SQL/DS et ORACLE, génération d'une LONG VARCHAR.
Remarque : les indicatifs sont interdits pour une Rubrique qui redéfinit une autre Rubrique.
Redéfinition
La redéfinition est possible pour un Segment. Elle regénère la clause COBOL REDEFINES. La Rubrique qui porte cette option redéfinit la Rubrique de même niveau COBOL qui la précède dans la composition du Segment. Si une Rubrique qui redéfinit une autre Rubrique fait partie d'un groupe, elle est considérée comme une Rubrique élémentaire. Elle doit être prise en compte dans le calcul du nombre de Rubriques contenues dans un groupe (excepté pour les Segments de base D/L1).
Remarque : Lorsque les Rubriques sont redéfinies, leurs longueurs respectives n'étant pas prises en compte, vous devez vous en charger.
La longueur de la Rubrique redéfinie est utilisée pour le calcul de l'adresse. Les Rubriques redéfinies sont ignorées lors de la génération avec le module de Description de Base de Données.
Répétitions
Les restrictions COBOL portant sur la clause OCCURS s'appliquent ici. Vous pouvez indiquer un nombre de répétitions au niveau d'une Rubrique élémentaire, d'un groupe ou d'un filler. Le nombre de répétitions est limité à 99.

Onglet Lignes -G

Colonne Erreur

Erreur
Cette colonne affiche un point pour toute ligne de description existante non vide.

De plus, si la ligne n'est pas correcte, cette colonne affiche aussi le symbole d'une erreur ou d'un avertissement, selon la gravité de l'erreur. Une infobulle vous informe de l'origine de l'erreur.

Ces lignes sont utilisées à des fins documentaires. Elles vous permettent d'écrire et d'éditer un texte en relation avec l'instance sélectionnée. Vous pouvez écrire, modifier, déplacer ou supprimer des lignes de texte en utilisant les fonctions standard de traitement de texte.

Vous pouvez ajouter une ligne de deux façons :
  • Cliquez sur Ajouter ou sélectionnez cette action dans le menu contextuel pour insérer une ligne de commentaire ou un alias pour un Segment. Cliquez ensuite dans la colonne Type pour sélectionner le type de ligne à insérer puis indiquez le commentaire ou l’alias dans la zone Description.
  • Cliquez sur Ajouter un appel de Format Guide ou sélectionnez cette action dans le menu contextuel pour insérer l’appel d’un Format Guide. Une boîte de sélection s’ouvre. Elle affiche les Formats Guides disponibles de type C : Commentaires. Sélectionnez l’un d’eux et cliquez sur OK.

    Les libellés variables et les valeurs symboliques indiqués dans l’onglet Lignes -D du Format Guide sélectionné s’affichent alors dans la colonne Description, en consultation. Le nom du Format Guide s’affiche dans la colonne Format Guide.

    Si vous cliquez sur le nom du Format Guide dans la colonne Format Guide, un bouton s’affiche. Cliquez dessus pour faire apparaître toutes les lignes de description du Format Guide dans une fenêtre de détail. Dans cette fenêtre, vous pouvez modifier les libellés variables et les valeurs symboliques.
    Remarque : La longueur d’un libellé variable ne doit pas excéder la longueur définie dans l’onglet Lignes -D du Format Guide.
Erreur
Cette colonne affiche un point pour toute ligne de description existante non vide.

De plus, si la ligne n'est pas correcte, cette colonne affiche aussi le symbole d'une erreur ou d'un avertissement, selon la gravité de l'erreur. Une infobulle vous informe de l'origine de l'erreur.

Type
Vous pouvez sélectionner une des valeurs suivantes
  • Aucune valeur ou * pour insérer une ligne de documentation standard,
  • A sur un Segment uniquement, pour indiquer un alias pour le nom du Segment.

Cette colonne affiche la valeur I sur toutes les insertions de Format Guide. Cette valeur ne peut pas être sélectionnée directement.

Description
Cette colonne est saisissable ou non en fonction du type de ligne insérée :
  • Si vous avez inséré une ligne de commentaire ou d’alias, vous devez positionner votre curseur dans cette colonne et saisir les informations nécessaires
    • Sur une ligne sans type de ligne ou avec un type de ligne *, entrez un commentaire libre. Vous pouvez utiliser les raccourcis de traitement de texte standard pour copier, coller et supprimer du contenu dans les lignes de commentaires. Un double clic entraîne la sélection du mot.
    • Sur une ligne de type A, entrez le nom COBOL du Segment.
  • Si vous avez inséré une ligne d’appel de Format Guide, les libellés variables et les valeurs symboliques indiqués dans l’onglet Lignes -D du Format Guide sélectionné s’affichent.
Format Guide
Cette colonne contient le nom d’un Format Guide appelé. Le bouton qui s’affiche quand vous cliquez dans cette colonne vous permet de voir la description du Format Guide dans une fenêtre de détail. Dans cette fenêtre, vous pouvez modifier les libellés variables et les valeurs symboliques.

Section -GE

Lien
Vous utilisez cette zone lorsque vous appelez un Texte (ligne de type T). Cliquez sur l'icone située dans cette colonne pour afficher une fenêtre de sélection d'instances.

L'instance sélectionnée s'affiche alors dans la zone Description.

La zone Description est modifiable pour un appel de Texte pour indiquer par exemple des codes génériques.

Notes :
  • Traitement de texte

    Les Textes appelés sont alignés sur une maquette d'édition standard.

    Les Textes appelés sont justifiés s'ils contiennent une commande de le forme $n. S'ils ne comportent pas de commande de justification, ils s'affichent tel quel. Attention, si un Texte non justifié suit un Texte contenant un $n, il sera également justifié sauf s'il contient une commande de la forme $$n en en-tête.

    Toutes les possibilités de traitement de texte seront exploitées (soulignement, indentation négative par exemple).

    Les sauts de lignes sont ceux du Texte, mais limités à un saut de 3 maximum (les sauts plus grands sont ramenés à 3); les sauts de page sont ramenés à un saut de 3.

Assistant de sélection

Sélectionner les instances à ajouter
Vous voyez dans cette liste les noms et libellés des instances sélectionnables.

Si la liste est volumineuse, vous pouvez la réduire en saisissant une chaîne de caractères qui sert de filtre. Le filtre se fait sur le code ou sur le libellé de l'instance. N'apparaîtront alors dans la liste que les instances dont le libellé ou le code contiennent la chaîne de caractères saisie.

Sélectionnez l'instance à ajouter et cliquez sur OK pour l'insérer.
Si vous faites un clic droit n'importe où dans la liste, un menu contextuel apparaît. Il contient les choix suivants :
  • Trier pour indiquer un nouveau critère de tri.
  • Afficher pour afficher des informations supplémentaires sur la ligne de chaque instance dans la liste : package ou libellé. Les informations peuvent être combinées Pour supprimer l'affichage de l'une des informations sélectionnées, sélectionnez-la à nouveau dans le menu.
Ce nouveau paramétrage sera automatiquement sauvegardé et associé à l'assistant, jusqu'à ce que vous le changiez.
Nouvelle instance
Vous devez cliquer sur ce bouton pour créer une instance. Une fois créée, cette instance sera affichée dans la liste. Vous pourrez alors la sélectionner, comme n'importe quelle autre instance.
Aucune Entité Sélectionnée
Sélectionnez cette option pour supprimer le lien avec une instance.
Dans le cas où le lien est obligatoire pour que la ligne dans le tableau soit valide, ce bouton radio n'apparaît pas dans l'assistant.

Paramètres fichiers lignes -CD

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 14. 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
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 15. 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).
Mode d'accès
Vous indiquez ici la façon dont la Structure de Données est accédée par le Programme.
Tableau 16. 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 de blocage
Cette zone génère la clause RECORDING MODE IS, qui indique la nature des enregistrements logiques du fichier.
Tableau 17. 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.
Mode entrée-sortie
Sélectionnez une valeur dans la liste.
Tableau 18. 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.
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.
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 19. 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
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
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 20. 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.

Suffixe dans le Programme
Ce suffixe est facultatif. Si l'Etat n'est appelé qu'une seule fois dans le Programme, il est inutile d'indiquer un suffixe. En revanche, s'il est appelé plusieurs fois, vous pouvez différencier ces appels en indiquant un suffixe pour chaque appel.

Appel de Macro

Numéro de ligne
Cette zone contient le numéro de ligne, constitué de deux caractères numériques. Lorsque la Macro est paramétrée, ce numéro de ligne permet de l'appeler plusieurs fois dans le même programme, avec des valeurs différentes pour les paramètres.
Paramètres $A à $J
Initialement, seuls les dix premiers paramètres ($n, avec n= 1,2,...,9,0) sont affichés. Vous pouvez alors utiliser le bouton Ajouter pour ajouter dix autres paramètres.
Paramètres
Ce tableau contient les valeurs de remplacement des paramètres qui peuvent être :
  • Une simple chaîne de caractères (ou un blanc) dans la colonne Valeur. Le nombre de caractères utilisés pour la valeur du paramètre doit correspondre à la longueur appropriée de la zone pour l'élément paramétré. Par exemple, si $1 est utilisé comme code fonction, la valeur doit avoir une longueur de deux caractères.
  • Une Rubrique, une Structure de Données ou un Segment. Dans ce cas, l'instance est sélectionnée dans la colonne Entité liée. Elle est précédée, dans la colonne Valeur, par E=CORUB, D=DD ou S=SEGT (où CORUB, DD et SEGT représentent le code de l'instance. Lors de la transformation, le paramètre sera remplacé par CORUB, DD ou SEGT et les références croisées seront créées automatiquement.

Appel de Rubrique

Type de la ligne
Vous sélectionnez ici le format qui sera pris en compte lors de l'appel de la Rubrique :
  • E : Format d'entrée
  • I : Format interne
  • S : Format d'édition
Texte avant
Cette zone est constituée de deux parties :
  • Le niveau de la déclaration, sur les 17 premiers caractères de la zone. Dans cette partie, vous indiquez le nombre niveau COBOL (01, 05 par exemple) ou le nom de Section (LINKAGE SECTION par exemple) dans lequel la ligne sera générée.
  • La déclaration des données de travail, à partir du dix-huitième caractère et jusqu'à la fin de la zone. Vous devez indiquer les noms-données en respectant le format suivant : W-DDSS-, où :
    • W = code zone de travail (chiffre ou lettre)
    • DD = S.D. dont la zone est extraite
    • SS = Segment
    Une fois concaténé avec le code Rubrique, le nom de données sera : w-ddss-eeeeee (où eeeeee est le code Rubrique).
    Remarque : Lors de l'appel d'une Rubrique dans une zone de travail et de lien, et dans le cas où le code Rubrique existe au Dictionnaire, il est obligatoire de saisir le nom de données dans cette zone. Dans le cas contraire, le généré obtenu sera de la forme :03 DDSS-CORUB PICTURE X.
Texte après
Dans cette zone, vous devez saisir les caractères qui seront insérés dans le code généré après le nom de données. La plupart du temps, vous saisissez simplement un point mais vous pouvez aussi saisir d'autres valeurs (ex : VALUE SPACE).

COBOL Pacbase dans PDP

Pour voir le contenu de cette vue, vous devez avoir généré une instance de Programme, d'Ecran ou de Serveur. Dans la vue Explorateur de designs, vous devez alors faire un clic droit sur le fichier .cbl correspondant (ce fichier contient le COBOL généré) et sélectionner Ouvrir avec > Editeur COBOL PDP dans le menu contextuel. L'éditeur de COBOL doit rester ouvert et sélectionné.
Conseil : Vous devez connaître les concepts expliqués dans Les étapes pour générer le COBOL d'un Programme, Ecran ou Serveur.

Dialogues et Ecrans

Il existe quatre libellés possibles :
  • Le libellé (36 positions), indiqué dans l'onglet Définition de la Rubrique
  • Le libellé court (18 positions), indiqué dans l'onglet Lignes -D de la Rubrique
  • Le libellé relationnel (18 positions), indiqué dans l'onglet Lignes -D de la Rubrique
  • Le libellé colonne, indiqué dans l'onglet Lignes -D de la Rubrique

Les différentes valeurs de cette zone sont une association entre la Rubrique et la manière de présenter ces libellés.

Vous devez sélectionner une des valeurs suivantes :
Tableau 21. Valeurs pour l'affichage du libellé de la Rubrique
Valeur Commentaire
Valeur par défaut La valeur par défaut est indiquée au niveau Dialogue.
F: Rubrique seule Rubrique affichée sans libellé.
L: Libellé long cadré à gauche et Rubrique Rubrique précédée du libellé long cadré à gauche sur 36 positions.
M: Libellé long cadré à droite et Rubrique Rubrique précédée du libellé long cadré à droite sur 36 positions.
N: Libellé long utile et Rubrique Rubrique précédée du libellé long utile (suppression des blancs à droite).
R: Libellé relationnel cadré à gauche et Rubrique Rubrique précédée du libellé relationnel cadré à gauche sur 18 positions.
S: Libellé court cadré à gauche et Rubrique Rubrique précédée du libellé court cadré à gauche sur 18 positions.
T: Libellé court cadré à droite et Rubrique Rubrique précédée du libellé court cadré à droite sur 18 positions.
U: Libellé court utile et Rubrique Rubrique précédée du libellé court utile (suppression des blancs à droite).
1: Libellé colonne 1 ligne et Rubrique Rubrique surmontée de l'en-tête de colonne sur une seule ligne.
2: Libellé colonne 2 lignes et Rubrique Rubrique surmontée de l'en-tête de colonne sur deux lignes.
3: Libellé colonne 3 lignes et Rubrique Rubrique surmontée de l'en-tête de colonne sur trois lignes.
Remarque : Un point (.) est généré pour les Rubriques précédées par un libellé court, long ou relationnel. Pour les Rubriques surmontées par un libellé colonne, la longueur prise en compte pour les positionnements relatifs est la plus grande des longueurs du contenu des libellés.

Position

Type de position
Cette zone permet de typer le positionnement de l'élément, parmi les valeurs suivantes .
  • Positionnement relatif :
    Les numéros de ligne et de colonne indiqués correspondent à un déplacement par rapport à la zone précédente dans la liste. Le calcul du déplacement par rapport à la zone précédente est de deux types, en fonction de la nature de cette zone :
    • Rubrique (élémentaire ou répétée, quelle que soit sa présentation) : le déplacement est calculé à partir de la position située en haut et à droite du contenu de la Rubrique précédente (et non du libellé).
    • Appel d'Ecran.: le déplacement est calculé à partir de la position située en bas et à droite du rectangle que forme un Ecran appelé dans l'Ecran appelant.
  • A: Positionnement Absolu :
    Le numéro de ligne et le numéro de colonne correspondent à l'adresse absolue de la Rubrique dans l'Ecran.
    Remarque sur le positionnement : La position définie par le type de positionnement, le numéro de ligne et le numéro de colonne est celle du premier caractère du contenu (si l'option de présentation est la Rubrique seule ou la Rubrique surmontée du libellé en-tête de colonne), ou du premier caractère du libellé pour les autres options de présentation.
Ligne
Indiquez ici, sur deux caractères numériques, le numéro de ligne numérique déterminant la position de l'élément :
  • En positionnement relatif, c'est le nombre d'interlignes entre les deux éléments. Si le type de présentation correspond à un en-tête de colonne, le nombre de lignes de l'en-tête est automatiquement ajouté, en génération, au nombre indiqué dans le numéro de ligne.
  • En positionnement absolu, c'est le numéro de ligne dans l'Ecran.

Le dépassement du nombre de lignes est automatiquement vérifié.

Si le numéro de ligne et le numéro de colonne sont tous les deux égaux à zéro, l'élément est automatiquement positionné sur le prochain point de tabulation libre.

Colonne
Renseignez ici, sur trois caractères numériques, le numéro de colonne déterminant la position de l'élément :
  • En positionnement relatif, c'est le nombre d'espaces qui séparent deux éléments sur une même ligne. Si le numéro de ligne est supérieur à zéro, le numéro de colonne correspond à un positionnement absolu.
  • En positionnement absolu, c'est l'adresse de l'élément dans la ligne. La valeur zéro correspond par défaut à la colonne 2 en génération, le colonne 1 étant réservée à l'attribut . La valeur 1 est possible : dans ce cas, l'attribut est situé sur la ligne précédente.

Le dépassement de longueur pour une ligne et la superposition de zones sont automatiquement détectés. En revanche, la présence d'un espace libre pour l'attribut devant chaque zone n'est pas vérifiée.

Si le numéro de ligne et le numéro de colonne sont tous les deux égaux à zéro, l'élément est automatiquement positionné sur le prochain point de tabulation libre.

Intensité
Sélectionnez ici l'attribut d'intensité, parmi les valeurs suivantes :
  • Valeur par défaut : Reprise de la valeur indiquée au niveau supérieur,
  • N: Normal : valeur par défaut au niveau du Dialogue,
  • B: Surbrillant,
  • D: Caché.
Présentation
Sélectionnez ici l'attribut de présentation, parmi les valeurs suivantes :
  • Valeur par défaut : Reprise de la valeur indiquée au niveau supérieur
  • N: Normal : valeur par défaut au niveau du Dialogue
  • B: Clignotant,
  • R: Inversion,
  • U: Souligné.
Couleur
Sélectionnez ici l'attribut de couleur, parmi les valeurs suivantes :
  • Valeur par défaut : Reprise de la valeur indiquée au niveau supérieur
  • W: Normal : valeur par défaut au niveau du Dialogue
  • B: Bleu,
  • R: Rouge,
  • P: Rose,
  • Y: Jaune,
  • G: Vert,
  • T: Turquoise.

Ecran - lignes CS

identifiant

Catégorie
Vous indiquez ici à quelle catégorie de traitement le Segment appartient. Les catégories, et donc les Segments correspondants, sont traitées dans l'ordre suivant :
  • Catégorie en-tête,

    Segment appartenant à l'en-tête

  • R : catégorie répétitive

    Segment appartenant à la partie répétitive

  • Z : Catégorie bas de l'Ecran/Dialogue

    Segment appartenant au bas d'écran

Code Segment
C'est le code du Segment choisi pour le programme généré associé à l'Ecran. Le code choisi peut être identique au code du Segment dans la base.
Numéro de ligne
Cette zone doit contenir une valeur numérique. Pour un Segment donné, une seule ligne 00 est acceptée (par défaut). Cette ligne zéro est obligatoire pour renseigner les caractéristiques physiques du Segment (nom externe, organisation), le code de la clé d'accès au Segment, le code du Segment dans la base.

Caractéristiques logiques

Limitation de génération
Sélectionnez dans la liste, la limitation de génération des accès logiques aux Segments :
  • Automatique :

    Accès logiques générés automatiquement (en fonction de l'utilisation du Segment)

  • U : Accès laissés à la charge de l'utilisateur

    Accès logiques au Segment laissés à la charge de l'utilisateur, en langage structuré (organisations différentes de X )

  • P : Pas de description du Segment (organisations différentes de X )
Limitation de génération
Sélectionnez dans la liste, la limitation de génération des accès logiques aux Segments :
  • Automatique :

    Accès logiques générés automatiquement (en fonction de l'utilisation du Segment)

  • U : Accès laissés à la charge de l'utilisateur

    Pas de génération des traitements logiques d'accès (organisations différentes de S)

  • P : Pas de description du Segment (organisations différentes de S)
Rupture d'affichage
Cette zone indique qu'une Rubrique, appartenant à une clé dans la partie répétitive de l'Ecran, doit rester constante au cours de l'affichage. Sélectionnez dans la liste la rupture d'affichage. Dans le cas d'un Segment utilisé en mise à jour, cette zone doit être positionnée à la valeur Pas de Rupture d'affichage.
Tableau 22. Valeurs possibles pour la rupture d'affichage
Option Description
Pas de rupture d'affichage. Pour les organisations différentes de X, indique qu'une Rubrique, appartenant à une clé dans la partie répétitive d'un Ecran, doit rester constante au cours de l'affichage.
C : Rupture d'affichage. Pour les organisations différentes de X, indique qu'une Rubrique, appartenant à une clé dans la partie répétitive d'un Ecran, doit rester constante au cours de l'affichage.
E : Rupture d'affichage. (SQL) Pour les organisations SQL, provoque la génération dans la clause WHERE de l'ordre SQL DECLARE CURSOR d'une condition d'égalité (et non >= qui est généré sinon). Permet d'optimiser l'emploi des curseurs en catégorie répétitive.
R Pour les organisations SQL, lecture massive à partir de la racine (application graphique en mode dossier uniquement).
Rupture d'affichage
Cette zone indique qu'une Rubrique, appartenant à une clé dans la partie répétitive de l'Ecran, doit rester constante au cours de l'affichage. Sélectionnez dans la liste la rupture d'affichage. Dans le cas d'un Segment utilisé en mise à jour, cette zone doit être positionnée à la valeur Pas de Rupture d'affichage.
Tableau 23. Valeurs possibles pour la rupture d'affichage
Option Description
Pas de rupture de sélection Pour les organisations différentes de S, indique qu'une Rubrique, appartenant à une clé dans la partie répétitive, doit rester constante au cours de la sélection.
C : Rupture de sélection Pour les organisations différentes de S, indique qu'une Rubrique, appartenant à une clé dans la partie répétitive, doit rester constante au cours de la sélection.
E : Rupture de sélection (SQL) Pour les organisations SQL, provoque la génération dans la clause WHERE de l'ordre SQL DECLARE CURSOR d'une condition d'égalité.
R Organisations H, D ou V : Lecture massive du Dossier. Zone à renseigner pour chaque Segment rattaché à la Vue Logique, cette Vue devant appartenir à un noeud dépendant du Dossier. Valeur à positionner sur chaque Rubrique clé qui correspond à une Rubrique clé de la Vue Logique appartenant au noeud racine du Dossier.
Sous-schéma
Cette zone permet d'indiquer quel sous-schéma doit être décrit. Vous devez sélectionner une valeur dans la liste déroulante parmi Toutes les Rubriques et une sous-description de 0 à 9 (0 correspond à un sous-schéma 10). Un sous-schéma est un groupe de Rubriques présentes dans la composition du Segment.
  • Pour les organisations G ou H, cette zone précise le numéro de la sous-description de la table à laquelle correspond la description de la zone entrée-sortie. Si le Segment appelé correspond à une vue et qu'il n'y a pas de sous-schéma indiqué, on prendra ce qui est indiqué au niveau du -DR du Bloc :
    • Toutes les Rubriques du Segment
    • Sous-description ou sous-schéma numéro 0 à 9
  • Pour les organisations V, elle indique les clés secondaires d'accès aux fichiers indexés :
    • La valeur 2 indique que la clé secondaire est référencée en codant 2 dans le numéro de sous-schéma. La clé primaire doit être indiquée sur la ligne 00 du Segment sans utilisation en affichage ni réception, même si elle n'est pas utilisée, afin de générer la clause RECORD KEY. Si la clé secondaire est une zone groupe, le numéro du sous-schéma doit être indiqué uniquement pour cette zone groupe.
    • La valeur 3 indique que la clé secondaire est DUPLICATE.
      Remarque : Cette spécification n'est pas implémentée dans la variante CICS puisque la déclaration des clés secondaires est effectuée lors de la définition VSAM.
Niveau des traitements générés
Pacbench C/S génère automatiquement dans le Composant Applicatif associé au client les traitements dépendant de l'utilisation en réception et en affichage des Segments utilisés dans cet Ecran. Les valeurs autorisées sont celles comprises entre 06 et 98. Ce niveau hiérarchique est à 10 par défaut. Il peut être modifié pour une Rubrique ou pour un Segment.
Niveau des traitements générés
Non utilisé pour un Composant Applicatif.

Remplissage clé d'accès

Code Segment précédent
Il est possible, dans chacune des catégories de traitement, d'accéder à plusieurs Segments. On peut donc être amené à préciser la hiérarchie des accès aux Segments d'une catégorie. Cette zone contient le code du Segment précédent dans la hiérarchie des accès. Ce Segment doit appartenir à la même catégorie. Si plusieurs Segments ont un même Segment précédent, ils sont traités dans l'ordre alphabétique de leur code.
Chaque Segment doit être chaîné directement ou indirectement à la Vue Logique dont il dépend. Il doit donc comporter le code d'un Segment précédent, ou de sa Vue Logique (organisation S).
Exception : Le Segment dédié au fichier des libellés d'erreur ne doit pas comporter de Segment précédent. De même, une Vue Logique ne peut avoir de Segment précédent.
Réception
Dans cette zone, vous devez préciser de quelle façon le Segment est utilisé dans les traitements de contrôle et mise à jour en choisissant une des valeurs proposées dans la liste déroulante.
Tableau 24. Valeurs de l'utilisation d'un Segment dans les traitements de contrôle et mise à jour
Options Description
Aucune valeur ou N Pour une organisation différente du type X, aucun ordre d'accès n'est généré pour le Segment dans les traitements de contrôle et mise à jour.

Pour une organisation de type X : aucun appel de serveur n'est généré.

L Lu. Un ordre de lecture simple est généré pour le Segment pour une organisation différente de X.

Ou appel d'un serveur pour sélection pour une organisation de type X.

E Pour une organisation différente du type X : contrôle d'existence à effectuer ou ordre de lecture avec positionnement d'un code erreur est généré (s’il n’est pas trouvé).

Pour une organisation de type X : appel d'un serveur pour contrôle.

M Pour une organisation différente du type X : Segment mis à jour (modification uniquement).

Pour une organisation de type X : appel d'un serveur pour contrôle et mise à jour.

X Pour une organisation différente du type X : Segment mis à jour (création et modification uniquement).

Pour une organisation de type X : appel d'un Composant Applicatif pour contrôle et sélection.

S Pour une organisation différente du type X seulement : Segment mis à jour (annulation uniquement).
C Pour une organisation différente du type X seulement : Segment mis à jour (création uniquement).
T Pour une organisation différente du type X : Segment mis à jour (création, modification et annulation). Dans ces trois cas, le contrôle d'existence et les ordres de mise à jour correspondant aux options choisies sont générés. Si le Segment est chaîné à un Segment précédent, quel que soit le code utilisation, seuls sont générés les ordres de mise à jour de modification et création.

Pour une organisation de type X : appel d'un serveur pour contrôle, mise à jour et sélection. Si la Vue Logique est appelée dans la catégorie répétitive, il n'est pas possible d'afficher la suite de l'Ecran. Il est donc impossible d'utiliser de manière automatique le code opérateur S.

U Pour une organisation de type X seulement : Appel d'un service utilisateur.
Réception
Dans cette zone, vous devez préciser de quelle façon le Segment est utilisé dans les traitements de contrôle et mise à jour en choisissant une des valeurs de la liste. Pour une organisation de type S, aucune valeur n’est sélectionnée (valeur par défaut).
Tableau 25. Valeurs de l'utilisation d'un Segment dans les traitements de contrôle et mise à jour
Options Description
Aucune valeur ou N Pour une organisation différente du type X, S ou 2, aucun ordre d'accès n'est généré pour le Segment dans les traitements de contrôle et mise à jour.

Pour une organisation de type X ou 2 : aucun appel de serveur n'est généré.

L Lu. Un ordre de lecture simple est généré pour le Segment pour une organisation différente du type X, S ou 2.

Ou appel d'un serveur pour sélection pour une organisation de type X ou 2.

E Pour une organisation différente du type X, S ou 2' : contrôle d'existence à effectuer ou ordre de lecture avec positionnement d'un code erreur est généré (s’il n’est pas trouvé).

Pour une organisation de type X : appel d'un serveur pour contrôle.

M Pour une organisation différente du type X, S ou 2 : Segment mis à jour (modification uniquement).

Pour une organisation de type X ou 2 : appel d'un serveur pour contrôle et mise à jour.

X Pour une organisation différente du type X, S ou 2 : Segment mis à jour (création et modification uniquement).

Pour une organisation de type ou X ou 2 : appel d'un Composant Applicatif pour contrôle et sélection.

S Pour une organisation différente du type X , S ou 2 seulement : Segment mis à jour (annulation uniquement).
C Pour une organisation différente du type X, S ou 2 seulement : Segment mis à jour (création uniquement).
T Pour une organisation différente du type X, S ou 2 : Segment mis à jour (création, modification et annulation). Dans ces trois cas, le contrôle d'existence et les ordres de mise à jour correspondant aux options choisies sont générés. Si le Segment est chaîné à un précédent, quel que soit le code utilisation, seuls sont générés les ordres de mise à jour de modification et création.

Pour une organisation de type X ou 2 : appel d'un serveur pour contrôle, mise à jour et sélection. Si la Vue Logique est appelée dans la catégorie répétitive, il n'est pas possible d'afficher la suite de l'Ecran. Il est donc impossible d'utiliser de manière automatique le code opérateur S.

U Pour une organisation de type X, S ou 2 seulement : Appel d'un service utilisateur.
Affichage
Pour l'utilisation en affichage, une des valeurs proposées dans la liste doit être sélectionnée.
Tableau 26. Valeurs de l'utilisation d'un Segment en affichage
Options Description
Aucune valeur ou N Pour une organisation différente de X : aucun ordre d'accès n'est généré pour ce Segment dans les traitements d'affichage (option par défaut).

Pour une organisation X : aucun appel de serveur n'est généré.

A Pour une organisation différente de X : les ordres d'accès sont générés pour l' affichage en fonction du type de traitement d'accès logique. Si le code Segment précédent est à blanc et si le Segment est utilisé, la clé est sauvegardée en zone de conversation.

Pour une organisation X : appel d'un serveur pour sélection (incompatible avec la valeur L en réception).

U Pour une organisation de type X seulement : appel d'un service utilisateur.
Affichage
Pour l'utilisation en affichage, vous devez sélectionner une des options proposées dans la liste.

Pour une organisation de type S, aucune valeur n’est sélectionnée (valeur par défaut).

Tableau 27. Valeurs de l'utilisation d'un Segment en affichage
Options Description
Aucune valeur ou N Pour une organisation différente de X, S ou 2 : aucun ordre d'accès n'est généré pour ce Segment dans les traitements d'affichage (option par défaut).

Pour une organisation X ou 2 : Aucun appel de serveur n'est généré.

A Pour une organisation différente de X, S ou 2 : les ordres d'accès sont générés pour l'affichage en fonction du type de traitement d'accès logique. Si le code Segment précédent est à blanc et que le Segment est utilisé, la clé est sauvegardée en zone de conversation.

Pour une organisation X ou 2 : appel d'un serveur pour sélection (incompatible avec la valeur L en réception).

U Pour une organisation de type X ou 2 seulement : appel d'un service utilisateur.
Alimentation de la clé
Cette zone peut être une zone de travail, un littéral ou une zone de l'Ecran. Dans ce dernier cas, les 4 premiers caractères de la zone doivent correspondre au code de l'Ecran dans le Dialogue.
Exemple :
  • 0001-corub pour une zone de l'Ecran
  • 02 pour un littéral
  • ww10-corub pour une zone de travail
Alimentation de la clé
Cette zone peut être une zone de travail, un littéral
Exemple :
  • 02 pour un littéral
  • ww10-corub pour une zone de travail
Remarque : L'alimentation des clés pour les listes doit toujours se faire à partir de la zone 1- dans les serveurs dès lors que la clé se trouve dans la répétitive de la Vue Logique.

Clé primaire

Dans cette section, vous devez sélectionner une Rubrique ou saisir le nom d'une nouvelle Rubrique (non définie) qui servira de clé d'accès au Segment. Elle est utilisée pour générer la clause RECORD KEY. La Rubrique indiquée ici est considérée comme une Rubrique groupe, sauf dans les organisations SQL où elle est considérée comme Rubrique élémentaire.

Rubrique
Cette zone contient le code de la Rubrique utilisée comme clé d'accès au Segment. Vous pouvez changer le choix du code avec le bouton Modifier.
Rubrique non définie
Si la clé d'accès primaire est une Rubrique groupe, vous pouvez saisir dans la zone Rubrique non définie le code des Rubriques élémentaires composant le groupe.

S'il s'agit d'un groupe et que les différentes sous-Rubriques sont alimentées séparément, des lignes suites contiennent alors le code des sous-Rubriques alimentées.

Pour une Table (organisation G), la sélection d'un sous-système s'effectue en indiquant dans cette zone la valeur NUSSY. L'alimentation de la clé associée (G-ddss-NUSSY) est automatiquement générée.

En DL/1, la Rubrique peut appartenir à toutes les SSA qui permettent d'accéder au Segment dans le PCB indiqué dans le nom externe.

Pour les bases de données SQL, une Rubrique clé doit être indiquée pour chaque ligne où un Affichage autre que N est déclaré.

Dans les accès générés, la sélection se fait sur l'égalité en mise à jour ou lecture directe. Pour la lecture séquentielle en catégorie répétitive, la sélection se fait sur les valeurs supérieures ou égales.

Le nombre de Rubriques clés pour un même Segment est limité à 10

Les Rubriques clés ne sont pas mises à jour dans un ordre SQL UPDATE.

-GO

Le tableau 1 montre les options générales, disponibles sur tous les composants. Le tableau 2 montre les options disponibles sur les Serveurs uniquement. Le tableau 3 montre les options disponibles sur les Clients TUI et le tableau 4 montre les options disponibles sur les moniteurs de communications.
Tableau 28. Options générales
Valeurs Signification
ATTRE UNISYS 2200 : Définition des attributs par défaut au niveau de l'Ecran.
ATTRIB UNISYS 2200 : L'affichage des attributs spécifiés dynamiquement (Clignotant et Inversion) est conservé. Cette option agit sur la fonction F7020.

CICS : Prise en compte de la modification dynamique des attributs de présentation. Cette option agit sur la fonction .F7020.

BREAKDATE Décomposition des Rubriques avec un format date.

Les Rubriques au format date seront décomposées en zones élémentaires à la génération.

Vous pouvez aussi demander l'inhibition de l'option en saisissant BREAKDATE=NO si cette option a été positionnée à YES au niveau Bibliothèque.

Cette décomposition sera prise en compte dans les :
  • Programmes : sur les Rubriques élémentaires des Segments présents dans l'Appel de Structures de Données (onglet Lignes -CD) et dans les zones de travail (directement dans le code COBOL),
  • Dialogues/Ecrans : sur les Rubriques élémentaires des Segments présents dans le Complément au Dialogue (onglet Complément), dans l'Appel de Segments (onglet Lignes -CS) et dans les zones de travail (directement dans le code COBOL),
  • Rubriques appelées dans les zones de travail.

    Si vous indiquez l'option BREAKDATE=YES, les Rubriques définies avec un format date seront décomposées en zones élémentaires correspondant au jour, au mois et à l'année avec éventuellement le séparateur (si celui-ci est inclus dans le format).

    Exemple : Date définie avec un format de type M (JJ/MM/SSAA) :

    10   ffnn-date.
       11  ffnn-date-JJX.
        12 ffnn-date-JJ   PICTURE 99.
       11  ffnn-date-S1   PICTURE X.
       11  ffnn-date-MMX.
        12 ffnn-date-MM   PICTURE 99.
       11  ffnn-date-S2   PICTURE X.
       11  ffnn-date-SSX.
        12 ffnn-date-AA   PICTURE 9(4).
Notes :

Une date ne sera décomposée que si le niveau généré correspondant au champ date est inférieur ou égal à 47.

Si une valeur initiale a été indiquée, elle sera générée sur la zone groupe. Toute information supplémentaire (valeur initiale par exemple) doit être saisie sur la même ligne que l'appel de la Rubrique, sur des lignes de type I, E ou S des zones de travail. Si une ligne suite a été indiquée, la date ne sera pas décomposée.

Les Rubriques appelées dans les Segments SQL ne peuvent pas être décomposées, sauf si les Segments sont des Segments DB2 et si l'option DESCR=ALL a été saisie dans les Options de Génération (section Lignes -GO de l'onglet Lignes -G) du Bloc DB2.

Les variables hôtes ne pouvant être des zones groupe, les zones élémentaires seront générées sous un niveau groupe en redéfinition de la façon suivante : ffnn-date-BRK REDEFINES ffnn-date.

CSSA Mémorisation de toutes les SSAs utilisées lors d'un accès généré aux Bases de Données. Cette option allonge la zone de communication et est valide pour tous les Ecrans du Dialogue.

Il est donc nécessaire de recompiler tous les Ecrans du Dialogue lorsqu'on modifie cette option.

CVISION GCOS6 : Permet de descendre les contrôles standard (contrôle de numéricité, contrôle de présence et mise en forme du caractère d'initialisation) au niveau du gestionnaire d'écran CVISION, améliorant ainsi les performances.
DCPROC Pour les tables DB2, NONSTOP SQL et DATACOM, génération des DECLARE CURSEUR en PROCEDURE DIVISION fonction FOC.

Si vous ne sélectionnez pas cette option, les DECLARE CURSEUR seront générés en WORKING-STORAGE SECTION.

DFHAID IBM CICS : Initialisation de la table des touches fonction avec le contenu de DFHAID.
DYNAM Appel des tables Pactables en Call Dynamique.
DYNPRT Prise en compte de la protection des champs variables dans la table EN-AT (poste 5) et traitement automatique de cette protection en F7020.

Pour prendre en compte la protection, vous devez placer un F dans le poste 5 de la table EN-AT pour la Rubrique concernée. Attention, les Rubriques deviennent protégées et transmissibles.

Cette option n'est pas opérationnelle pour les variantes IBM 36 et UNISYS série A format SDF

F10 Traitement de chaque catégorie (en-tête, répétitive, bas de page), à condition qu'elle contienne au moins une zone variable ou un accès à un Segment.
FOR Formatage du COBOL généré. La DATA DIVISION sera générée avec justification à gauche, tandis que la PROCEDURE DIVISION sera générée sans justification et à raison d'un ordre COBOL par ligne.

Cette option peut être déclarée dans l'onglet Définition de la Bibliothèque.

Dans ce cas, le Dialogue est généré avec formatage du COBOL, même si l'option FOR n'est pas indiquée ici.

Avec cette option, jusqu'à 150 lignes sont possibles dans un paragraphe COBOL (entre deux points).
Attention : Cette option existe toujours mais n'est plus maintenue.
FORMAT Calcul du format des Rubriques de la Vue Logique.

Avec la valeur INTERNAL (par défaut), les Rubriques de la Vue Logique sont générées à partir du format interne et prennent en compte l'usage de cette Rubrique.

Avec la valeur EXTENDED, le format des Rubriques est recalculé : l'usage indiqué est ignoré et remplacé par l'usage DISPLAY, et pour les Rubriques numériques signées, par l'usage SIGN IS LEADING.

HEXVAL UNISYS A : Génération des zones à value HEXADECIMAL en PIC XX.
HLPI Génération de l'accès aux fichiers à l'aide de l'interface HLPI.
HLPVAL Envoi dans le fichier libellés d'erreur des valeurs à contrôler indiquées dans les Lignes -D d'une Rubrique, même si ce contrôle a été supprimé au niveau de l'Ecran dans lequel est appelée cette Rubrique.
HPRT Appel de la documentation associée aux champs protégés (nature P et F). Elle comprend la documentation associée à la Rubrique ainsi que les Textes ou commentaires associés. dans les lignes de commentaires de l'Ecran.

Dans le programme souffleur, l'enchaînement des écrans de documentation se fera d'abord sur les Rubriques variables, puis sur les Rubriques protégées dans l'ordre de l'onglet Lignes -CE.

IMSME Génération de la variante multi-écrans pour IMS.
INDEXS DL/1 : Génération automatique des accès aux Segments par index secondaires.

Cette option est incompatible avec l'option NOPSB si le code Segment cible est différent du code Segment source et si ce dernier n'est pas généré dans la zone PSB.

LOGMES Variantes CICS multi-écrans et MICRO FOCUS : génération d'un message logique qui gère l'affichage d'écran et l'envoi de message vers le moniteur de communication sélectionné par l'option MONIT (si elle n'est pas définie par défaut dans la variante).

AS400 et IMS : Cette option est utilisée uniquement pour le Web.

LPAGE or LPA Gestion du LOGICAL PAGING selon les 2 modes possibles : implicite (utilisation de la touche PA1) et explicite (utilisation d'un opérateur de pagination dans les lignes -CE de l'Ecran),

Cette option est disponible avec l'utilisation d'un moniteur, d'un sous-moniteur ou avec MONITOFF.

Avec MONITOFF, la pagination ne peut se faire que sur le même Ecran.

Dans le cas d'utilisation d'un moniteur ou d'un sous-moniteur, la pagination peut se faire sur le même Ecran ou sur des Ecrans différents. Si elle se fait sur des Ecrans différents, il faut indiquer quels sont les Ecrans qui participent à la pagination, au niveau des zones de travail du Dialogue.
Remarque : Avec les sous-moniteurs, tous les Ecrans qui composent un groupe de pagination doivent être dans le même sous-moniteur.

Les options LPAGE et SWAP sont incompatibles. Si elles sont indiquées toutes les deux, l'option SWAP est ignorée.

MONIT UNISYS A Series : Génération avec moniteur.

IBM CICS: Génération avec moniteur.

MONITOFF or MOFF IMS : Obtention d'un code transaction par Ecran du Dialogue et pas de génération de moniteur.

Les options MONITOFF et NOTRAC sont incompatibles. Si les deux sont renseignées, seule l'option MONITOFF est traitée.

NOATTR IMS : Génération des champs protégés dans le MOD sans leurs attributs (ATTR=YES). Cette option est valide pour tous les Ecrans d'un même Dialogue.
NOLOCK AS400 : Lecture des Segments sans mise à jour avec ajout de la clause WITH NO LOCK dans la fonction de lecture lorsque le fichier est ouvert en OPEN I-O.

Cette option est inopérante si on accède à plusieurs Segments du même fichier en réception, seuls certains d'entre eux étant mis à jour, car le READ WITH NO LOCK enlève le verrou précédent.

NOMAP Génération ou non-génération de la mappe, suivant la valeur de l'option dans le Dialogue et l'Ecran.

La valeur NOMAP est équivalente à NOMAP=YES. Elle inhibe la génération de la mappe.

La valeur NOMAP=NO permet de générer la mappe.

La valeur de l'option dans le Dialogue est automatiquement prise en compte dans l'Ecran. Si vous souhaitez conserver cette valeur dans tous les Ecrans du Dialogue, il est donc inutile d'indiquer cette option sur tous ces Ecrans.

En revanche, si vous souhaitez modifier la valeur de l'option indiquée dans le Dialogue sur certains Ecrans, vous devez l'indiquer. Les deux cas suivants sont possibles :
  • Si le Dialogue contient la valeur NOMAP ou NOMAP=YES et si l'Ecran contient la valeur NOMAP=NO, la mappe de l'Ecran est générée.
  • Si le Dialogue contient la valeur NOMAP=NO et si l'Ecran contient la valeur NOMAP ou NOMAP=YES, la mappe de l'Ecran n'est pas générée.
NOOCF A la première entrée dans le programme, OCF ne sera pas positionnée à 1 (suppression de la fonction F0160).
NOOPEN MICRO FOCUS et DEC : Optimisation des ouvertures des fichiers HE (sauvegarde du HELP) et LE, OU, EM (libellés d'erreur) ainsi que le CONNECT à ORACLE.
NOOPENB HP3000, TURBOIMAGE : Interruption de l'ouverture de la base TURBOIMAGE, pas de génération de OPEN dans le programme.
NOPSB Limitation de la génération des Segments :

Dans chaque Ecran, seuls les Segments utilisés et leurs parents hiérarchiques sont générés. Dans le moniteur et les sous-moniteurs, la zone PSB n'est plus générée ni transmise aux Ecrans.

NORPT Pas de traitement automatique des Rubriques répétées (contrôle, transfert et positionnement des attributs).
NOSAV Avec DEC/VAX, GCOS7, MICRO FOCUS, ICL, IBM 36, IBM 38, et BOS/TP : Evite la génération de la description et l'accès physique au fichier HE (HELP).
NOSDERR UNISYS 2200 : Reconnaissance de la Rubrique LIERR dans le message qui n'est donc pas envoyé par la clause SEND ERROR.
NOTRAC IMS : Pas de génération du code transaction dans le MID du premier Ecran de Dialogue.
OCF Positionnement à 1 de OCF dès la première entrée dans le programme.
OFF Les programmes et les mappes du Dialogue seront générés avec l'option MDT-OFF (valeur par défaut pour GCOS7 FORMS).
ON Les programmes et les mappes du Dialogue seront générés avec l'option MDT-ON (valeur par défaut, sauf pour GCOS7 FORMS).
PACSQL Prise en compte des données saisies dans les Lignes -GG du Segment pour les ordres SQL.
PSBINIT Ecran CICS-DL/1 avec option moniteur : Cette option permet d'effectuer la connexion au PSB et sa fermeture (SCHEDULE PSB et TERMINATE) au niveau du sous-moniteur et non plus au niveau de chaque Ecran.
REFER ou REF Génération de la liste de toutes les Rubriques référencées dans le programme Dialogue. Cette liste apparaît en WORKING-STORAGE SECTION en commentaire. Elle comporte les :
  • Rubriques des Segments appelés dans l'Ecran ou le Dialogue sur des lignes -CS,
  • Rubriques des Segments appelés dans des zones de travail de type F,
  • Rubriques appelées directement sur des zones de travail de type I, E ou S,
  • Rubriques appelées dans l'Ecran ou le Dialogue, sur des lignes -CE.
REPET ou RPT Contrôle, transfert et positionnement des attributs des zones variables répétées horizontalement et/ou verticalement.

Si une zone répétée est utilisée pour l'accès à un Segment, il faut indiquer le nombre de répétitions au niveau de l'appel des Segments dans l'Ecran considéré.

SQLALL ou SQA SQL : Enumération de toutes les colonnes de la table dans les ordres d'accès aux Segments :
(SELECT ALL COLCORUBn, ...  
        INTO   :FFNN-CORUBn)
SQLCA ou SQC SQL : Génération de l'ordre INCLUDE SQLCA en WORKING-STORAGE SECTION s'il y a au moins un Segment DB2 ou NonStop SQL appelé dans l'Ecran (Onglet Lignes -CS, Organisation = S, Q ou N).
SQLIND ou SQI Génération d'indicateurs de présence de la Rubrique avant sa mise à jour ou son affichage.
SQLREF ou SQR Génération des indicateurs de la nouvelle structure V-FFnn-CORUB, permettant la gestion automatique de références croisées.
SSMON Indique, pour chaque Ecran, qu'on prend le PSB du sous-moniteur auquel il appartient. Permet de générer un PSB par sous-moniteur et non un PSB général pour tout le Dialogue (voir aussi la section Lignes -GG de l'onglet Lignes -G).
SWAP Avec l'utilisation d'un moniteur ou d'un sous-moniteur permet d'indiquer, dans la mappe MFS, le code Ecran de débranchement à partir d'une touche fonction. Dans les mappes, la zone FUNC est générée sur 10 caractères. Cette zone comporte la valeur de la touche fonction et le nom externe du prochain Ecran à appeler.

En cas de fin de conversation, le nom externe est à blanc.

En cas de débranchement différé ou de traitement de la touche fonction comme alimentation du code opération, le nom externe est celui qui correspond à la mappe générée. Le traitement de cette zone est effectué dans le moniteur ou le sous-moniteur.

Cette option améliore les performances, car il n'est nécessaire de rappeler le programme pour effectuer le débranchement.

TMF TANDEM : Prise en compte du mode transactionnel par génération des ordres BEGIN-TRANSACTION et END-TRANSACTION dans les requesters et des ordres BEGIN-WORK et COMMIT-WORK dans le moniteur transactionnel PacWeb.
TS CICS : Gestion de la zone de communication en dehors de la LINKAGE SECTION. Cette zone est décrite en WORKING-STORAGE SECTION et sauvegardée par défaut en TEMPORARY STORAGE. En cas de MDTOFF et d'appel de la fonction souffleur, l'écran est sauvegardé dans une seule zone.
TZVAR BULL multi-écrans : alimentation des zones de réception et d'affichage en cas d'erreur.
ZNUM GCOS7 (sauf GCOS7 FORMS) et GCOS8 : Alimentation des zones numériques dans le message (F8145) effectuée uniquement si aucune erreur n'a été détectée (GR-EG=0).
Tableau 29. Options sur les serveurs (niveaux Dialogue Serveur et Serveur)
Valeurs Signification
ACCESERR Nombre maximum d'erreurs d'accès Segment pouvant être retournées au Client.

Valeur sur 3 caractères (défaut = 001)

Cette option doit être indiquée dans le Composant Applicatif ou, pour les développements mono-vue, dans le Dialogue Serveur.

CALLTYPE Type d'appel du serveur par le client.

Pour CICS, il y a 2 valeurs possibles : CALL et LINK.

Pour IMS, il y a 2 valeurs possibles : CALL et CHNG (équivalent d'un CALL CHANGE).

Pour GCOS8, il y a 3 valeurs possibles : CALL, LINK (équivalent d'un CALL .ILINK) et NTPR (équivalent d'un NEXT TPR).

Pour TANDEM PATHWAY, la valeur est PATHSEND.

CHANGE Option spécifique à TUXEDO

CHANGE=NO (valeur par défaut) : Appel du Composant Applicatif avec le paramètre TPNOCHANGE

CHANGE=YES : appel du Composant Applicatif avec le paramètre TPCHANGE

CHECKSER Cette option permet de générer ou non le contrôle des données de la Vue Logique par le Composant Applicatif.

CHECKSER=NO (défaut) : Pas de contrôle des données de la Vue Logique par le Composant Applicatif.

CHECKSER=YES : Contrôle des données de la Vue Logique par le Composant Applicatif.

CONNECT Gestion des (dé)connexions aux bases de données SQL

CONNECT=YES (défaut) : (dé)connexions générées dans le moniteur de communication

Pour TUXEDO, ces (dé)connexions sont générées dans les Composants Applicatifs d'Initialisation et Terminaison (type SI ou ST type). Dans ce cas, vous appelez également un des Segments Tables de la base à laquelle vous voulez vous (dé)connecter.

CURSUFF CURSUFF=NO (défaut) : Pas de suffixage des noms de curseurs.

CURSUFF=YES : Nom des curseurs SQL suffixé par le nom de l'Ecran correspondant.

DATAERR Nombre d'erreurs sur les données de la Vue Logique pouvant être détectées par un Serveur.

Cette option doit être indiquée dans le Composant Applicatif ou, pour les développements mono-vue, dans le Dialogue Serveur.

ERRLAB Pour un développement mono-vue : Cette option permet de spécifier sous quelle forme les erreurs doivent être retournées.

ERRLAB=YES (défaut) : le moniteur de communication récupère la clé, la gravité et les libellés d'erreur retournés par un Composant Applicatif avant de retourner la réponse au composant Client.

En revanche, si vous valorisez cette option à NO, seule la clé des erreurs sera retournée. Dans ce cas, l'application cliente est chargée de lire le libellé d'erreur en local.

Cette option doit être indiquée dans le Dossier ou, pour les développements mono-vue, dans le Dialogue Serveur.

ERRSERV Pour un développement mono-vue : Nom du serveur des libellés d'erreur.

Cette option est obligatoire et doit être indiquée dans le Dialogue Serveur.

LGCOMM Longueur de la zone de communication des Composants Elémentaires, des Serveurs I/T, des Serveurs d'erreur.

valeur numérique sur 5 caractères.

LOCATION Pour un développement mono-vue : Cette option est obligatoire.
Elle représente le nom du moniteur de communication (sur 6 caractères) suivi du nom de l'environnement (sur 20 caractères maximum).
Exemple : LOCATION=FMCODE-ENVIRNAME
Le positionnement de cette option entraîne la génération de deux sources COBOL :
  • le premier correspond à la génération du Composant Applicatif sélectionné.
  • le second correspond au source du Gestionnaire de Services (composant purement technique qui génère toutes les facilités générées par le Dossier).
LOCKMODE Pour un développement mono-vue : Option permettant de préciser le type de verrouillage

Le verrouillage permet de bloquer la mise à jour d'un ensemble de données afin d'éviter toute incohérence

La valeur NO (par défaut) n'implémente aucun verrouillage.

La valeur PESSIMIST créé une appropriation exclusive de l'instance verrouillée pour tout autre utilisateur pendant le temps de sa mise à jour.

La valeur OPTIMIST n'opère qu'au moment de la demande de mise à jour en comparant l'image initialement chargée de l'instance avec son image courante sur la base. Si elles sont identiques, la mise à jour est acceptée.

MONSER Nom du moniteur serveur, pour le mode TUI.
NULLMNGT NULLMNGT=NO (valeur par défaut) : pas de gestion de présence des Rubriques des Vues Logiques au niveau de la Proxy
NULLMNGT=YES : Gestion de présence des Rubriques des Vues Logiques au niveau de la Proxy
Remarque : Si NULLMNGT=YES, l'option VECTPRES=YES est systématiquement prise en compte.
NUVERS Gestion des versions des composants client TUI et serveur.

Cette option permet de transférer au Composant Applicatif, à travers le buffer technologique, l'information qui permettra de gérer les différentes versions des composants Client et Serveur.

La valeur par défaut pour un client TUI est le numéro de la session de génération.

PACTABLE Nom du programme d'accès Pactables vers le serveur CICS.

Valeur par défaut : PACTABLE

PAGEMODE Pour un développement mono-vue : Option permettant de préciser le type de pagination.

La valeur NOEXTEND (par défaut) permet de paginer en avant et en arrière sur une population prédéfinie. Chaque pagination demandée par le composant Client exécute une demande de lecture et son résultat écrase celui de la lecture précédente.

La valeur EXTEND permet de paginer en avant sur une population prédéfinie, sachant que le résultat de chaque pagination vient s'additionner à celui de la lecture précédente. La lecture des pages précédentes est donc prise en charge par le client graphique

PROCESS Option spécifique à TANDEM PAHWAY

Nom du Process dans l'appel du Composant Applicatif.

Ce nom doit comporter 15 caractères maximum sans caractère blanc. Les minuscules ne sont pas converties en majuscules.

SEGMBUFF= s1s2s3s4… Disponible uniquement avec spécification d'un Dossier. Option saisissable au niveau du Composant Applicatif.

Cette option est utilisée pour le buffer serveur : elle permet de sélectionner des Segments de la Structure de Données qui définit le buffer serveur.

s1, s2, s3 par exemple représentent les deux derniers caractères du code Segment.

Vous pouvez positionner 10 Segments par option SEGMBUFF.

10 options SEGMBUFF maximum peuvent être appelées au niveau de chaque Composant Applicatif.

Le Segment 00 n'a pas besoin d'être sélectionné, il est systématiquement généré s'il est présent dans la Structure de Données.

Valeur par défaut : tous les Segments de la Structure de Données sont sélectionnés.

SERVBUFF Disponible uniquement avec spécification d'un Dossier. Option saisissable au niveau du Dialogue Serveur ou du Composant Applicatif.

Cette option identifie la Structure de Données qui définit le buffer serveur. SERVBUFF=xx

xx identifie la Structure de Données qui représente le buffer serveur (2 caractères).

Au niveau de chaque Composant Applicatif, vous pouvez sélectionner certains Segments de cette Structure de Données par l'option SEGMBUFF= s1s2s3s4…

TRAN Option spécifique à TUXEDO

TRAN=YES (valeur par défaut) : Utilisation du mode transactionnel pour la variante TUXEDO.

TRAN=NO : Pas d'utilisation du mode transactionnel.

VECTPRES Gestion de présence des Rubriques des Vues Logiques

VECTPRES=NO : Pas de gestion de présence des Rubriques des Vues Logiques

VECTPRES=YES : Gestion de présence des Rubriques des Vues Logiques.
Remarque : Si CHECKSER=YES, alors l'option VECTPRES=YES est systématiquement prise en compte.
Tableau 30. Options sur les Clients (niveaux Dialogue et Ecran)
Valeurs Signification
FORMAT Format des Rubriques de la Vue Logique.

Avec la valeur INTERNAL, les Rubriques de la Vue Logique sont générées à partir du format interne et prennent en compte l'usage de cette Rubrique.

Avec la valeur EXTENDED, le format des Rubriques est recalculé de la manière suivante : l'usage indiqué est ignoré et remplacé par l'usage DISPLAY, et si la Rubrique est une Rubrique numérique signée, l'usage SIGN IS LEADING.

INICHECK Gestion de la présence des Rubriques.

Option réservée à un Dialogue Client TUI.

Un buffer de présence des données est généré et initialisé à P (champ absent). Lors des transferts en vue d'une mise à jour (fonction F30), le poste de chaque champ effectivement transféré sera positionné à N, les transferts en affichage seront aussi conditionnés par la présence du champ.

INITSERV Appel d'un serveur d'Initialisation
LTHENATT Longueur de la zone de sauvegarde de la table EN-ATT (défaut : 2000).
LTHREPET Longueur de la zone de sauvegarde de la répétitive (défaut : 1000).
LTHSCREEN Longueur de la zone de sauvegarde du message écran (défaut : 6000).
NUVERS Gestion des versions des composants client TUI et serveur.

Cette option permet de transférer au Composant Applicatif, à travers le buffer technologique, l'information qui permettra de gérer les différentes versions des composants Client et Serveur.

La valeur par défaut est le numéro de la session de génération.

TERMSERV Appel d'un Serveur de Terminaison.
Tableau 31. Options sur les moniteurs de communications
Valeurs Signification
BASE Nom du Bloc Base de Données Relationnelle obligatoire lorsque tous les composants de l'application accèdent à la même Base.

Dans ce cas, les ordres de connexion sont automatiquement générés dans le moniteur de communication de l'application.

BASELOC Type de localisation de la base de données relationnelle à laquelle vous souhaitez vous connecter.

Cette information est obligatoire en particulier lorsque le nom du Bloc Base de Données de connexion est renseigné.

Valeurs : LOCAL (défaut) ou REMOTE.

CALLSPG Type d'appel utilisé par les moniteurs client ou serveur pour l'appel des composants client ou serveur qui leur sont rattachés.

Dans le cas où il n'y a pas de moniteur client, c'est le type d'appel du composant serveur par le composant client.

Pour GCOS8, l'option CALLSPG et l'option CALLTYPE doivent avoir la même valeur.

CALLTYPE Type d'appel du serveur par le client.

Pour CICS, il y a 2 valeurs possibles : CALL et LINK.

Pour IMS, il y a 2 valeurs possibles : CALL et CHNG (équivalent d'un CALL CHANGE).

Pour GCOS8, il y a 3 valeurs possibles : CALL, LINK (équivalent d'un CALL .ILINK) et NTPR (équivalent d'un NEXT TPR).

Pour TANDEM PATHWAY, la valeur est PATHSEND.

LGCOMZS Longueur de la zone de communication entre les moniteurs Client et Serveur.

La valeur saisie doit être de 5 caractères.

WAITINT Option spécifique à MQ Series et à TCP/IP Socket sous MVS/CICS

Délai d'attente, en secondes, entre le lancement de deux requêtes.

Valeur par défaut pour MQ Series = 0001

valeur par défaut pour TCP/IP Socket sous MVS/CICS = 1800

WAITINT1 Option spécifique à MQ Series

Délai d'attente, en secondes, avant le lancement de la première requête (valeur par défaut = illimitée).

Vous pouvez modifier la valeur par défaut en saisissant un nombre sur quatre caractères.

WORKFILB

Option obligatoire pour un client graphique

Nom du Bloc Base de Données pour un fichier de travail en organisation H ou nom externe du fichier pour une organisation V.

WORKFILS

Option obligatoire pour un client graphique

Segment associé au fichier de travail.

WORKFILO

Option obligatoire pour un client graphique

Organisation du fichier de travail utilisé par le moniteur et le gestionnaire de services associé :
  • V : séquentielle indexée
  • H : relationnelle
  • W : working

-GG

Dans l’onglet Lignes -GG, vous pouvez modifier les lignes de génération associées aux lignes de description du Bloc Base de Données.

Selon le type de la ligne de description, des lignes sont générées automatiquement pour vous guider lorsque vous indiquez les informations physiques du Bloc. Ces lignes sont identifiées par VIRT ou GUID dans la dernière colonne du tableau de l’onglet Lignes -GG.

Communément, ces lignes sont appelées lignes virtuelles. Les lignes identifiées par VIRT sont générées. Pour modifier ces lignes, vous devez les écraser et créer de nouvelles lignes entre les repères de début et fin d'insertion dans le tableau. Lorsque vous cliquez sur Ecraser, les identifiants GUID et VIRT sont changés en FromGUID et FromVIRT. Ces lignes deviennent saisissables. Vous pouvez également les éditer avec la touche F2. Vous pouvez ajouter des lignes où vous le souhaitez, mais elles doivent avoir un type G pour être prises en compte à la génération.

Le tableau contient les colonnes suivantes :
Erreur
Cette colonne affiche un point pour toute ligne de description existante non vide.

De plus, si la ligne n'est pas correcte, cette colonne affiche aussi le symbole d'une erreur ou d'un avertissement, selon la gravité de l'erreur. Une infobulle vous informe de l'origine de l'erreur.

Type
Lorsque vous cliquez sur une ligne dans cette colonne, une liste déroulante apparaît. Vous devez sélectionner une des valeurs suivantes :
  • * : lignes de commentaires à générer,
  • V : lignes générées avant les éléments de génération automatiques,
  • G : lignes générées à la place des éléments de génération automatiques,
  • P : lignes générées entre les éléments de génération automatiques et leurs descriptions,
  • Z : lignes générées après les éléments de génération automatiques.
    Remarque : Les types P et Z sont disponibles uniquement sur les lignes -GG des lignes associées aux Blocs CODASYL (onglets Définition et Lignes -DC).
Description
Cette colonne doit être utilisée pour saisir les éléments de génération ou les commentaires qui doivent être générés. Son contenu varie selon le type de Bloc et le type de ligne sélectionnés.

Définition du Dialogue

Variante du COBOL à générer
Vous indiquez dans cette zone la variante COBOL pour les Ecrans générés.
Remarque : Certaines variantes ne sont pas supportées ou sont obsolètes.
Tableau 32. Valeurs de la variante de COBOL à générer
Valeur Signification
Défaut Valeur de la zone Langage généré de l'onglet Définition de la Bibliothèque.
N Pas de génération
X IBM MVS/ESA OS/390
0 IBM MVS/ESA AS/400
1 IBM DOS/VSE
3 UNIX, WINDOWS
4 COBOL BULL GCOS7
5 COBOL BULL GCOS8
6 COBOL BULL GCOS8, Ecran TP8
8 COBOL UNISYS SERIE A
F COBOL TANDEM
I COBOL DEC/VAX VMS
K COBOL ICL 2900
O COBOL IBM AS/400
Q ACUCOBOL
R COBOL TUXEDO
U COBOL UNISYS SERIE 2200
Z COBOL IBM AIX
Variante du moniteur transactionnel
Vous indiquez dans cette zone la variante du moniteur transactionnel pour les Ecrans générés.
Tableau 33. Valeur de la variante du moniteur transactionnel
Valeur Signification
Défaut Reprise des options par défaut
N Pas de génération
0 Variantes 0, 1, X pour CICS (IBM) (programmes et mappe BMS).

Variante 3 pour PC/MICRO FOCUS (MS/DOS).

Variantes 4, 5, 6 pour QUESTAR.

Variante 8 pour UNISYS Series A SDF format.

Variante I pour DEC/VAX.

Variante Q pour UNIX, Windows (ACUCOBOL).

Variante U pour UNISYS 2200 (programme et mappe FLDP).

Variante O pour AS 400.

Variante Z pour AIX (IBM).

1 Variantes 0, X pour IMS (IBM) (programme et format MFS).

Variante 3 pour PC/MICRO FOCUS (OS2).

Variantes 4, 5, 6 pour VIP.

2 Variantes 0, 1, X pour CICS (IBM), mappe BMS couleur.

Variante 3 pour MICRO FOCUS (UNIX).

3 Variantes 0, X pour IMS (IBM), format MFS couleur.
4 Variantes 0, X pour moniteur IMS (IBM).

Variante 3 pour Programme IBM VisualAge COBOL.

5 Variantes 0, X pour moniteur CICS (IBM).
C Variantes 4, 5, 6, U pour multi-écrans.

Variantes 0, 1, X pour CICS multi-écrans.

Variante K pour ICL.

Variante 8 pour UNISYS Series A écran logique.

F Variante 4 pour TDS FORMS (BULL GCOS7).

Variante R pour un programme de type service d'initialisation ou de terminaison.

R Variante F pour un programme de type REQUESTER ou variante R pour un programme de type CLIENT.
S Variante F pour un programme de type SERVER ou variante R pour un programme de type SERVICE'.
Code programme généré
Le nom contenu dans cette zone représente le nom du fichier généré à partir de l'instance. Le nom du fichier généré peut donc être différent du nom de l'instance.
Nom externe du programme
Le nom contenu dans cette zone représente le nom du fichier généré à partir de l'instance. Le nom du fichier généré peut donc être différent du nom de l'instance.
Code transaction
Cette zone correspond :
  • Dans le cas d'une variante CICS, au code transaction sur quatre caractères. C'est le code transaction du Dialogue par défaut.
  • Dans le cas d'une variante IMS, au code transaction associé au Dialogue. Cette zone est précisée sur tous les Ecrans du Dialogue sauf si l'option MONITOFF (un code transaction par Ecran, pas de moniteur généré) est spécifiée.
Nom externe de la mappe
Cette zone n'est pas disponible dans un Dialogue.

Le nom indiqué dans cette zone représente le nom du fichier mappe (.bms, .mfs ou .map) généré à partir de cette instance. Le nom de la mappe générée peut donc être différent du nom de l'instance.

Si cette zone n'est pas renseignée, le nom de l'instance sera le nom de la mappe.

Pour CICS, vous indiquez ici le nom du Mapset.

Pour CICS, vous indiquez ici le nom du format.

Pour TANDEM, vous indiquez ici le nom du SERVER associé pour un écran de type R (REQUESTER).

Type de Dialogue
Cette zone vous permet d'indiquer que le type du Dialogue ou de l'Ecran est standard ou TUI.
Type de Dialogue
Cette zone vous permet d'initialiser le type du Dialogue Serveur ou du Serveur.
Tableau 34. Valeurs du type du Dialogue Serveur ou du Serveur
Valeurs Commentaires
MS: Moniteur Serveur Pour les applications TUI
S: Composant Applicatif Pour les applications TUI et graphiques
IT: Composant Applicatif d'Initialisation/Terminaison Pour les applications graphiques avec développement d'un Dossier
FM: Moniteur de Communication Pour les applications graphiques
MV: Moniteur de Communication, mode simple Pas de commentaire
E: Serveur de Messages d'erreur Pour les applications TUI et graphiques
SI: Serveur d'Initialisation Pas de commentaire
ST: Serveur de Terminaison Pas de commentaire

Complément du Dialogue

SD pour Zone commune de conversation
Par défaut, aucune zone de conversation n'est indiquée et la zone s'intitule Zone commune de conversation non définie.

Pour indiquer une zone de conversation, cliquez sur le bouton Modifier et sélectionnez une Structure de Données.

Lorsque plusieurs Segments sont décrits pour cette Structure de Données, ils sont redéfinis dans la description générée dans les transactions.

PSB ou code sous-schéma
Cette zone est réservée aux Segments de bases de données DL/1.

Le code du PCB du fichier libellés d'erreur doit appartenir au PSB du Dialogue.

Pour HP3000, vous devez indiquer le code Bloc de la base ALLBASE/SQL, pour générer le moniteur avec une connexion à la Base.

Fichier d'erreur

Vous précisez ici les caractéristiques physiques du fichier des libellés d'erreur, afin que la description de ce fichier et ses accès puissent être générés.

Les accès physiques sont générés en fonction F8098. Si vous désirez les ré-écrire, vous devez écraser cette sous-fonction.

Organisation
Cette zone permet d'indiquer le type d'organisation du fichier des libellés d'erreur :
  • Aucune
  • D: Segment de base DL/1

    La description du fichier des libellés d'erreur et les ordres d'accès à ce fichier sont générés automatiquement. En IMS, la description du fichier libellés d'erreur n'est pas générée automatiquement. Vous devez la décrire dans un Segment appelé par un Bloc hiérarchique.

  • S: Base DB2
  • U: Accès par code spécifique
  • V: Organisation indexée
  • Y : UNYSIS 2200 SFS organisation indexée

    Les Segments sont déclarés en FD et les accès sont générés en fonction F80.

Nom externe
Renseignez ici le nom externe du fichier des libellés d'erreur. Sa valeur varie selon la variante COBOL à générer :
  • IBM CICS - VSAM : DDNAME sur 8 positions,
  • GCOS7 - UFAS : Code fichier sur 2 caractères,
  • GCOS8 - TP8 : Nom externe sur 4 caractères (généré dans la clause SELECT); blocage sur les 4 derniers caractères (généré dans la clause FD).
  • TOUTE AUTRE VARIANTE : Nom logique généré dans la clause SELECT.
Pour DL/1, il s'agit du code du PCB. Le nom du PCB du fichier libellés d'erreur doit appartenir au PSB du Dialogue.

Vue Logique

Redefines
La redéfinition est possible pour un Segment. Cela regénère la clause COBOL REDEFINES. La Rubrique qui porte cette option redéfinit la Rubrique de même niveau COBOL qui la précède dans la composition du Segment. Si une Rubrique qui redéfinit une autre Rubrique fait partie d'un groupe, elle est considérée comme une Rubrique élémentaire. Elle doit être prise en compte dans le calcul du nombre de Rubriques contenues dans un groupe (excepté pour les Segments de la base DL/1).
Remarque : Lorsque les Rubriques sont redéfinies, leurs longueurs respectives ne sont pas prises en charge. Pour le calcul de la longueur d'adresse, la longueur de Rubrique redéfinie est utilisée. Les Rubriques redéfinies sont ignorées lors de la génération avec le module de Description de Base de Données. Si la case Redéfini est cochée, aucune valeur initiale ne peut être saisie.
Pour redéfinir une Rubrique, cochez l'option Redéfinition. Une ligne Ensemble de redéfinitions est créée dans la liste des lignes d'appels ; elle contient la Rubrique redéfinie et la Rubrique de même niveau qui la précède. Vous devez ensuite indiquer le nombre de Répétitions dans la section Ensemble de redéfinitions.
Répétitions
Dans cette zone, vous pouvez indiquer un nombre de répétitions au niveau d'une Rubrique élémentaire, d'un Segment ou d'un groupe sur 3 caractères numériques maximum. Cette zone correspond à la clause OCCURS, au niveau d'une Rubrique élémentaire. Il n'est pas possible d'avoir une zone groupe répétée en dehors de la structure répétée (voir la zone Type de données). Les Rubriques répétées ne sont pas autorisées dans les applications graphiques.

Attributs pour Vue Logique

Type de données
Lorsqu'un programme Client émet une demande de service pour sélection d'informations, il peut y avoir une sélection particulière formulée par le biais d'une méthode d'extraction et de ses paramètres par valeur.

Le Composant Applicatif qui exécute la demande de service doit prendre en compte la méthode d'extraction et ses paramètres pour effectuer correctement la demande de service. Ces informations ne peuvent lui être transmises qu'au travers du message envoyé par le Client. La méthode d'extraction est transmise au Composant Applicatif par la partie technique du message. Les paramètres sont à décrire dans la partie applicative du message, c'est-à-dire la Vue Logique.

Dans la zone Type de données, vous devez indiquer les paramètres par valeur, pour toutes les méthodes d'extraction susceptibles d'être utilisées par la Vue Logique, en appelant des Rubriques. Pour chaque paramètre, vous précisez le type E, qui indique qu'il s'agit d'un paramètre. Toute Rubrique identifiant (type U) est un paramètre implicite. En revanche, les autres Rubriques qui décrivent le contenu de la Vue Logique ne peuvent être utilisées en tant que paramètres. En effet, la Rubrique de type E ne fait pas partie de la description d'une occurrence d'informations de la Vue Logique ; si nécessaire, vous définissez et appelez une Rubrique fille.
Tableau 35. Spécification du type de données
Options Description
Aucun La Rubrique n'est pas utilisée comme paramètre. Pour les Rubriques utilisées pour la description de la Vue Logique.
U : identifiant pour la pagination Identifiant permettant la pagination d'une liste pour le Client. A la sortie du Serveur, il contient les valeurs du critère de sélection de la page suivante.
R : Structure répétée Il ne peut y avoir qu'une structure répétée par Vue Logique. Vous indiquez une structure répétée au niveau d'une Rubrique groupe. Cette Rubrique indique le début des Rubriques répétées. La fin des Rubriques répétées est déduite du nombre des Rubriques dans le groupe. Le nombre d'occurrences doit être indiqué dans la zone Nombre de répétitions.
E : Paramètre d'extraction La Rubrique sert de paramètre à une méthode d'extraction. Les Rubriques de type E doivent être saisies sur les lignes -CE, avant les Rubriques qui décrivent le contenu de la Vue Logique. Toute Rubrique identifiant (type U) est un paramètre d'extraction implicite. En revanche, les autres Rubriques décrivant la Vue Logique ne peuvent pas être utilisées comme paramètres. Si nécessaire, définissez et appelez une Rubrique fille.
Présence de Rubrique
Pour chaque appel de Rubrique, sélectionnez une option dans la liste déroulante :
Tableau 36. Spécification de la présence de la Rubrique
Options Description
O : obligatoire Le contrôle de sa présence est généré dans le Client, et dans le Composant Applicatif si l'option CHECKSER=YES.
Remarque : Cette génération inclut les contrôles par rapport à la Description de la Rubrique.
P : obligatoire Le contrôle de sa présence est généré dans le Composant Applicatif uniquement, si l'option CHECKSER=YES.
Remarque : Cette génération inclut les contrôles par rapport à la Description de la Rubrique.
Aucun Seuls les contrôles par rapport à la Description de la Rubrique sont générés dans le Client, et dans le Composant Applicatif si CHECKSER= YES.
F : Facultatif Rubrique facultative. Les contrôles par rapport à la Description de la Rubrique sont uniquement générés dans le Composant Applicatif, si CHECKSER=YES.
Sens de transfert
Pour chaque Rubrique appelée dans une Vue Logique, vous devez sélectionner le sens de transfert entre le Client et le Serveur.
Tableau 37. Valeurs possibles du sens de transfert
Options Commentaires
Dans les 2 sens Valeur par défaut pour un service de mise à jour ou de sélection. Cette valeur est obligatoire pour les applications graphiques.
C : Client vers le serveur De la Vue Logique vers le Segment pour un service de mise à jour.
S : Serveur vers le client Du Segment vers la Vue Logique pour un service de sélection.

Le sens de transfert doit aussi être indiqué sur les Rubriques groupes. Les Rubriques répétées doivent toutes avoir le même sens de transfert qui peut être indiqué seulement sur la Rubrique délimitant les données répétées (Rubrique avec indicatif R). Vous ne sélectionnez les valeurs C ou S dans cette zone que si la valeur choisie dans la zone Sens du transfert de l'onglet Définition de la Vue Logique est : Dans les 2 sens.

Nom des produits

PDPPacbase Rational Programming Patterns

Remarque : Le numéro de version de Pacbase est inclus dans le fichier .ta2. Si la version incluse dans ce fichier n'est pas compatible avec la version courante de Rational Programming Patterns, l'import n'est pas exécuté et une erreur est générée. Le contrôle ne descend pas jusqu'au niveau sous-version (Y09A par exemple).

Le début de ce fichier rappelle les paramètres saisis lors du lancement des procédures de migration Pacbase.

Projet et package de génération

Localisation de la cible COBOL

Les fichiers COBOL générés sont stockés par défaut avec les fichiers de design, dans un dossier dont le nom par défaut est modifiable. Vous pouvez cependant les séparer des fichiers de design ou même changer le projet et le dossier de génération.

Remarque : Des informations complémentaires sur l'emplacement des fichiers générés sont disponibles.

Dans une Bibliothèque, les valeurs par défaut du Projet COBOL et des Dossier COBOL et Dossier mappe (pour les Ecrans uniquement) sont celles du projet courant.

Si le projet et les dossiers ne sont pas renseignés, les valeurs par défaut dans un Dialogue sont celles de la Bibliothèque, ou sinon du projet courant. Dans un Ecran ou Serveur, les valeurs par défaut sont celles du Dialogue, ou sinon de la Bibliothèque ou du projet courant.

Un dossier COBOL ou mappe (pour les Ecrans) peut être indiqué dans plusieurs entités :
  • Une Bibliothèque : Dans ce cas, il constitue la valeur par défaut pour les Dialogues et les Ecrans ou Serveurs de cette Bibliothèque.
  • Un Dialogue : Dans ce cas, il constitue la valeur par défaut pour les Ecrans ou Serveurs de ce Dialogue.
  • Un Ecran ou un Serveur: Dans ce cas, il n'est valable que pour cette instance.
Projet COBOL
Les fichiers générés à partir de cette instance seront stockés dans le projet affiché dans cette zone.

Le projet du fichier de design correspondant est le projet par défaut. S'il a été conservé, valeur par défaut est affichée entre parenthèses après le projet. S'il a été explicitement changé dans l'instance, seul le projet est affiché ici, sans autre indication.

S'il a été explicitement changé dans le Dialogue, hérité du Dialogue est affiché entre parenthèses après le projet. S'il a été explicitement changé dans la Bibliothèque de génération, hérité de la Bibliothèque est affiché entre parenthèses après le projet. Vous pouvez écraser, dans l'instance, la valeur héritée de la Bibliothèque.

Vous pouvez sélectionner un nouveau projet dans la liste déroulante.

Si vous changez le projet, le dossier COBOL et le dossier mappe (pour les Ecrans), sont automatiquement valorisés à la valeur par défaut (rpp). Le nouveau projet sera pris en compte lors de la génération suivante.

Dossier COBOL
Les fichiers générés à partir de cette instance seront stockés dans le dossier affiché ici, à l'intérieur du projet affiché dans la zone précédente

Le dossier du fichier de design correspondant est le dossier par défaut. S'il a été conservé, valeur par défaut est affichée entre parenthèses après le dossier. S'il a été explicitement changé dans l'instance, seul le dossier est affiché ici, sans autre indication.

S'il a été explicitement changé dans le Dialogue, hérité du Dialogue est affiché entre parenthèses après le dossier. S'il a été explicitement changé dans la Bibliothèque de génération, hérité de la Bibliothèque est affiché entre parenthèses après le dossier. Vous pouvez écraser, dans l'instance, la valeur héritée de la Bibliothèque.

Si le dossier par défaut a été conservé, vous pouvez indiquer un chemin racine pour les fichiers générés dans l'assistant des propriétés du projet (ouvert à partir du bouton Changer les propriétés du projet). Ce chemin s'affichera alors automatiquement dans cette zone, au début du dossier.

Vous pouvez sélectionner un nouveau dossier dans la liste déroulante. Il est impossible de créer un dossier à ce niveau. Les dossiers doivent avoir été créés auparavant dans le projet, par exemple depuis la perspective Ressource.

Si vous changez le dossier COBOL il sera pris en compte lors de la génération suivante.

Changer les propriétés du projet
Ce bouton ouvre l'assistant des propriétés du projet, où vous pouvez effectuer les actions suivantes:
  • Modifier le dossier par défaut. Ce dossier contient les fichiers de design et est l'emplacement par défaut des fichiers générés et des fichiers de métadonnées.
  • Indiquer un chemin racine pour les fichiers générés, si le dossier de génération par défaut a été conservé.
  • Indiquer un chemin racine pour les fichiers de métadonnées, stockés par défaut dans le même dossier que les autres fichiers générés.
Remarque : Une aide détaillée est disponible depuis l'assistant des propriétés du projet.
La génération locale d'un Programme, Ecran ou Serveur produit les fichiers suivants :
  • Un fichier .cbl imbriqué sous l'instance de Programme, Ecran ou Serveur dans la vue Explorateur de designs. Si vous faites un clic droit dessus et sélectionnez Références > Sous-références, les instances ayant participé à sa génération s'affichent dans la vue Références.
  • Un fichier de description de la mappe pour un Ecran, (.map, .bms ou .mfs), imbriqué sous l'instance d'Ecran dans la vue Explorateur de designs.
  • Un fichier de métadonnées du design généré (.cblpdp), et un fichier de métadonnées de la mappe pour les Ecrans (.mappdp, .bmspdp ou .mfspdp). Ces fichiers sont visibles dans la vue Explorateur de packages. Ils ne doivent pas être modifiés mais ils doivent être versionnés en même temps que les autres fichiers générés.

Localisation de la cible COBOL

Les fichiers COBOL générés sont stockés par défaut avec les fichiers de design, dans un dossier dont le nom par défaut est modifiable. Vous pouvez cependant les séparer des fichiers de design ou même changer le projet et le dossier de génération.

Dans une Bibliothèque, les valeurs par défaut du Projet COBOL et du Dossier COBOL sont celles du projet courant.

Projet COBOL
Les fichiers générés à partir de cette instance seront stockés dans le projet affiché dans cette zone.

Le projet du fichier de design correspondant est le projet par défaut. S'il a été conservé, valeur par défaut est affichée entre parenthèses après le projet. S'il a été explicitement changé dans l'instance, seul le projet est affiché ici, sans autre indication. S'il a été explicitement changé dans la Bibliothèque de génération, hérité de la Bibliothèque est affiché entre parenthèses après le dossier. Vous pouvez écraser, dans l'instance, la valeur héritée de la Bibliothèque.

Vous pouvez sélectionner un nouveau projet dans la liste déroulante.

Si vous changez le projet, le dossier COBOL est automatiquement valorisé à la valeur par défaut (rpp). Le nouveau projet sera pris en compte lors de la génération suivante.

Dossier COBOL
Les fichiers générés à partir de cette instance seront stockés dans le dossier affiché dans cette zone, à l'intérieur du projet affiché dans la zone précédente

Le dossier du fichier de design correspondant est le dossier par défaut. S'il a été conservé, valeur par défaut est affichée entre parenthèses après le dossier. S'il a été explicitement changé dans l'instance, seul le dossier est affiché ici, sans autre indication. S'il a été explicitement changé dans la Bibliothèque de génération, hérité de la Bibliothèque est affiché entre parenthèses après le dossier. Vous pouvez écraser, dans l'instance, la valeur héritée de la Bibliothèque.

Si le dossier par défaut a été conservé, vous pouvez indiquer un chemin racine pour les fichiers générés dans l'assistant des propriétés du projet (ouvert à partir du bouton Changer les propriétés du projet). Ce chemin s'affichera alors automatiquement dans cette zone, au début du dossier.

Vous pouvez sélectionner un nouveau dossier dans la liste déroulante. Il est impossible de créer un dossier à ce niveau. Les dossiers doivent avoir été créés auparavant dans le projet, par exemple depuis la perspective Ressource.

Si vous changez le dossier COBOL il sera pris en compte lors de la génération suivante.

Changer les propriétés du projet
Ce bouton ouvre l'assistant des propriétés du projet, où vous pouvez effectuer les actions suivantes:
  • Modifier le dossier par défaut. Ce dossier contient les fichiers de design et est l'emplacement par défaut des fichiers générés et des fichiers de métadonnées.
  • Indiquer un chemin racine pour les fichiers générés, si le dossier de génération par défaut a été conservé.
  • Indiquer un chemin racine pour les fichiers de métadonnées, stockés par défaut dans le même dossier que les autres fichiers générés.
Remarque : Une aide détaillée est disponible depuis l'assistant des propriétés du projet.

Cible de génération

Les fichiers générés sont stockés par défaut avec les fichiers de design, dans un dossier dont le nom par défaut est modifiable. Vous pouvez cependant les séparer des fichiers de design ou même changer le projet et le dossier de génération.

Projet de génération
Les fichiers générés à partir de cette instance seront stockés dans le projet affiché dans cette zone.

Le projet du fichier de design correspondant est le projet par défaut. S'il a été conservé, valeur par défaut est affichée entre parenthèses après le projet. S'il a été explicitement changé dans l'instance, seul le projet est affiché ici, sans autre indication.

Vous pouvez sélectionner un nouveau projet dans la liste déroulante.

Si vous changez le projet, le dossier de génération est automatiquement valorisé à la valeur par défaut (rpp). Le nouveau projet sera pris en compte lors de la génération suivante.

Dossier de génération
Les fichiers générés à partir de cette instance seront stockés dans le dossier affiché dans cette zone, à l'intérieur du projet affiché dans la zone précédente

Le dossier du fichier de design correspondant est le dossier par défaut. S'il a été conservé, valeur par défaut est affichée entre parenthèses après le dossier. S'il a été explicitement changé dans l'instance, seul le dossier est affiché ici, sans autre indication.

Si le dossier par défaut a été conservé, vous pouvez indiquer un chemin racine pour les fichiers générés dans l'assistant des propriétés du projet (ouvert à partir du bouton Changer les propriétés du projet). Ce chemin s'affichera alors automatiquement dans cette zone, au début du dossier.

Vous pouvez sélectionner un nouveau dossier dans la liste déroulante. Il est impossible de créer un dossier à ce niveau. Les dossiers doivent avoir été créés auparavant dans le projet, par exemple depuis la perspective Ressource.

Si vous changez le dossier de génération, il sera pris en compte lors de la génération suivante.

Changer les propriétés du projet
Ce bouton ouvre l'assistant des propriétés du projet, où vous pouvez effectuer les actions suivantes:
  • Modifier le dossier par défaut. Ce dossier contient les fichiers de design et est l'emplacement par défaut des fichiers générés et des fichiers de métadonnées.
  • Indiquer un chemin racine pour les fichiers générés, si le dossier de génération par défaut a été conservé.
  • Indiquer un chemin racine pour les fichiers de métadonnées, stockés par défaut dans le même dossier que les autres fichiers générés.

micro-patterns

  • *! est la balise de début du micro-pattern, obligatoire. Le * doit être saisi en colonne 7, réservée aux commentaires dans le code COBOL, et le ! doit être saisi en colonne 8.
  • " " doit encadrer les opérandes.
  • xxxx constituent les opérandes du micro-pattern.

Table

Remarque : Les actions possibles avec les différents boutons sont également disponibles dans le menu contextuel du tableau.

imbrication de Segments

Un Segment appelé peut en appeler un autre ; au maximum 4 niveaux d'imbrications sont autorisés.


Vos commentaires