Identifiants, numéros de ligne et attributs dans les Macros migrées

Cette page explique comment les informations saisies dans les écrans -B, -W et -P des Macros dans Pacbase sont affichées dans l'éditeur Source COBOL des Macros de Rational Programming Patterns. La provenance des identifiants, numéros de ligne et attributs est donc détaillée pour les lignes de modification du début de programme, WORKING-STORAGE SECTION et PROCEDURE DIVISION.

Remarque : Pour des explications sur les numéros de ligne dans les Macros fusionnées référez-vous à Numéros de ligne dans les Macros migrées fusionnées.

Modification du début de programme

Dans Pacbase, les lignes de modification du début de programme sont indiquées dans l'écran -B de la Macro. Leur emplacement est indiqué dans les zones SE (section générée) et PA (paragraphe généré).

Une fois migrée dans Rational Programming Patterns, la Macro contient les lignes suivantes :
  • La première ligne contient uniquement l'identifiant BSEPA, où SE est la section et PA le paragraphe.
  • Les lignes suivantes contiennent les numéros de ligne et la description des instructions tels qu'ils ont été indiqués dans Pacbase.
Exemple : Dans l'exemple suivant, des instructions sont indiquées, dans Pacbase, dans l'écran -B de la Macro MACB01, dans la section 01 et le paragraphe A2. Dans l'éditeur Source COBOL, la première ligne contient l'identifiant B01A2. Les lignes suivantes reprennent les numéros et les contenus des lignes Pacbase.
Figure 1. Lignes de modification de début de programme dans une Macro
Cet exemple montre l'écran Pacbase d'une Macro et le contenu correspondant de la Macro dans l'éditeur Source COBOL. Leur contenu est décrit dans les explications qui précédent

WORKING-STORAGE SECTION

Identifiant et numéro de ligne
Dans Pacbase, l'emplacement des lignes de travail est indiqué par un code sur 2 caractères dans la zone Début du numéro de ligne de l'écran -W de la Macro.
Une fois migrée dans Rational Programming Patterns, la Macro contient les lignes suivantes :
  • Une ligne contenant uniquement l'identifiant de l'emplacement de la description : WXXXX représente les 2 caractères du début du numéro de ligne dans Pacbase.
  • Les lignes suivantes contiennent les numéros de ligne et la description des instructions tels qu'ils ont été indiqués dans Pacbase.

Dans la WORKING-STORAGE SECTION, les numéros de ligne de Pacbase sont conservés. Ils sont donc sur 3 caractères.

Exemple : Dans l'exemple suivant, la valeur XW est indiquée, dans Pacbase, dans la zone Début du numéro de ligne de l'écran -W de la Macro AAER09. Dans l'éditeur Source COBOL, la première ligne contient uniquement l'identifiant WXW. Les lignes suivantes reprennent les numéros et les contenus des lignes Pacbase.
Figure 2. Lignes de WORKING-STORAGE SECTION dans une Macro
Cet exemple montre l'écran Pacbase d'une Macro et le contenu correspondant de la Macro dans l'éditeur Source COBOL. Leur contenu est décrit dans les explications qui précédent
Indice de dimension d'une table
Dans Pacbase, un indice de dimension d'une table est généré automatiquement si la zone Table de l'écran -W de la Macro contient une valeur.
Une fois migrée dans Rational Programming Patterns, la Macro contient les lignes suivantes :
  • Une ligne contenant uniquement l'identifiant de l'indice IXXNNL, où XXNN représente 2 codes de 2 caractères (Structure de Données et Segment par exemple).
  • Les 3 indices générés automatiquement à partir de la déclaration de la table : IXXNNL pour le nombre d’enregistrements stockés dans la table, IXXNNR pour la recherche dans la table et IXXNNM pour le nombre maximum d’enregistrements. Le numéro de ligne de ces 3 lignes correspond au numéro de la ligne de déclaration de la table dans Pacbase.
Exemple : Dans l'exemple suivant, la valeur 9 est indiquée, dans Pacbase, dans la zone Table de l'écran -W de la Macro AADOCP. Le numéro de ligne de cette déclaration est 300. Dans l'éditeur Source COBOL, la première ligne contient uniquement l'identifiant IWP20, où WP20 est le Segment représentant la table. Les 3 autres lignes correspondent aux 3 indices générés automatiquement, avec le numéro de ligne 300.
Figure 3. Lignes d'indice de dimension d'une table dans une Macro
Cet exemple montre l'écran Pacbase d'une Macro et le contenu correspondant de la Macro dans l'éditeur Source COBOL. Leur contenu est décrit dans les explications qui précédent
Indice de gestion d'une boucle
Dans Pacbase, un indice de gestion d'une boucle DO est généré automatiquement si la zone NVTY (niveau et type de structure ou de condition) de l'écran -P de la Macro contient une sous-fonction dont la condition est DO (10DO par exemple).
Une fois migrée dans Rational Programming Patterns, la Macro contient les lignes suivantes :
  • La première ligne contient uniquement l'identifiant JFFSS, où FFSS est le code de la fonction et sous-fonction.
  • La ligne suivante contient l'identifiant SSR, où SS est le code de la sous-fonction.
Exemple : L'exemple suivant illustre la déclaration d'un indice d'une boucle DO dans la sous-fonction 31GB. Dans Pacbase, la valeur 20DO est indiquée dans la zone NVTY de l'écran -P de la Macro MAOPGN. Dans l'éditeur Source COBOL, la première ligne contient l'identifiant J31GB. La ligne suivante contient l'identifiant GBR.
Figure 4. Indice de gestion d'une boucle DO
Cet exemple montre l'écran Pacbase d'une Macro et le contenu correspondant de la Macro dans l'éditeur Source COBOL. Leur contenu est décrit dans les explications qui précédent

PROCEDURE DIVISION

Identifiants et attributs
Dans Pacbase, les identifiants des fonctions et sous-fonctions sont indiqués dans l'écran -P de la Macro. La fonction est indiquée dans l'en-tête de l'écran, dans la zone Fonction. La sous-fonction est indiquée sur chaque ligne de l'écran, dans la zone SS.

Une fois migrée dans Rational Programming Patterns, la Macro affiche ces identifiants sur la première ligne de l'insertion du code spécifique correspondant à la sous-fonction. sous la forme FFFSS, où FFSS est le code de la fonction et sous-fonction.

Dans Pacbase, les attributs des fonctions et sous-fonctions sont indiqués dans l'écran -P de la Macro. Ils sont constitués des éléments indiqués sur la ligne N de la sous-fonction. Ces éléments comprennent le niveau, le titre et la condition d'exécution de la sous-fonction. Ils peuvent aussi inclure différents éléments selon le modèle (batch, dialogue ou client-serveur).

Une fois migrée dans Rational Programming Patterns, la Macro affiche les attributs en tant que commentaires, précédés d'un astérisque dans la colonne 07 du COBOL, de la façon suivante :
  • La ligne de titre, facultative, est reprise sous la ligne de l'identifiant, sur la ligne 000 de la sous-fonction. La ligne de titre reprend le code sous-fonction précédé de N. Le titre lui-même est précédé de NOTE.
  • La ligne suivante, sans numéro de ligne, affiche les autres éléments de la ligne N.
Exemple : Dans l'exemple suivant, la sous-fonction S2 est insérée dans la fonction 20 dans Pacbase. L'identifiant de la sous-fonction s'affiche sous la forme F20$2 dans l'éditeur Source COBOL. Les 2 lignes suivantes sont les lignes d'attributs. La première ligne contient le titre. La deuxième ligne contient le niveau (LV=15), le placement après la fonction automatique 20 de Dialogue (ACTION=*P) et le paramètre représentant la Rubrique à contrôler (REF=$6).
Figure 5. Identifiant et attributs d'une sous-fonction dans une Macro
Cet exemple montre l'écran Pacbase d'une Macro et le contenu correspondant de la Macro dans l'éditeur Source COBOL. Leur contenu est décrit dans les explications qui précédent
Lignes de condition
Dans Pacbase et Rational Programming Patterns, les numéros des lignes de condition sont sur 3 caractères.

La ligne Pacbase contenant le traitement dans la zone Operandes et la condition dans la zone NVTY (niveau et condition) est scindée en deux lignes dans l'éditeur Source COBOL. La première ligne contient alors uniquement la condition et conserve le numéro de la ligne Pacbase. La deuxième ligne contient le traitement selon la condition. Son numéro de ligne est sur 6 caractères. Les 3 premiers correspondent au numéro de la dernière ligne de condition. Il peut y avoir 2 lignes de condition, par exemple, si une condition IT est suivie d'une condition OR. Les 3 derniers caractères du numéro de ligne correspondent au numéro de ligne du traitement courant.

L'annotation DOT dans la marge droite et en majuscules est utilisée pour générer un point à la fin de la ligne précédente. Elle remplace la notion de niveau 99 des Macros dans Pacbase.
Remarque : Dans le source généré COBOL et le code spécifique d'un Programme, Ecran ou Serveur, vous devez ajouter l'annotation dot en minuscules dans la marge droite pour générer un point sur la ligne précédente.
Exemple : Dans l'exemple suivant, le traitement indiqué sur la ligne 100 de la sous-fonction F60$6 s'exécutera si la condition ICATR > IRR est vérifiée. Le traitement consiste en l'insertion du commentaire END OF LIST. Dans Pacbase, la condition et le traitement sont indiqués sur la même ligne, dont le numéro est 100. En revanche, dans l'éditeur Source COBOL, deux lignes sont affichées. La première, dont le numéro est 100, ne contient que la condition, plus l'annotation DOT. a deuxième ligne contient le traitement. Son numéro de ligne est 120100 car elle suit la deuxième et dernière ligne de condition, qui débute par OR et dont le numéro de ligne est 120.
Figure 6. Numéros de ligne d'une Macro dans la PROCEDURE DIVISION
Cet exemple montre l'écran Pacbase d'une Macro et le contenu correspondant de la Macro dans l'éditeur Source COBOL. Leur contenu est décrit dans les explications qui précédent

Vos commentaires