Rational Programming Patterns for System z

Editeur PDP de Macro

Cet éditeur permet de modifier les Macros reprises de différents modèles (batch, dialogue, écran client, moniteur client, moniteur serveur ou modèle serveur). Il contient un éditeur de code COBOL de la Macro et une vue Arbre des tags de la Macro qui affiche une liste triée des tags de la Macro et qui offre des menus permettant de modifier les tags. Les mises à jour s'affichent instantanément dans l'éditeur de Macros. Vous pouvez insérer des fonctions, des sous fonctions, des commentaires formatés correspondant à des micro-patterns sous les lignes fonctions. Vous pouvez également compléter les traitements standard.

L'éditeur de Macro PDP s'affiche à l'ouverture d'un fichier de type MacroName.cblmsp. Ce fichier est sauvegardé soit dans la vue Explorateur de Designs, si la Macro a été créée localement, soit dans la vue Explorateur de packages si la Macro a été générée sous Pacbase et importée dans la perspective Programmation pilotée par pattern. Pour ouvrir un éditeur de Macro PDP, faites un clic-droit sur le fichier MacroName.cblmsp et sélectionnez une des options disponibles, comme par exemple : Ouvrir avec > Editeur PDP de Macro - modèle batch. Dans l'éditeur PDP de Macro qui s'ouvre, vous pouvez voir une vue Editeur accompagnée d'une vue contenant un arbre des tags.

Vue éditeur de Macro

L'éditeur de Macro permet de saisir, modifier et supprimer des lignes dans un fichier de Macro généré. L'éditeur offre les fonctionnalités standard et les caractéristiques de l'éditeur COBOL (analyse de programme, filtrage de la vue...). Grâce à un système de couleurs, il permet d'identifier clairement les lignes et les balises (tags) dans la Macro. La vue éditeur de Macro est présentée dans la Figure 1
Figure 1. Vue éditeur de Macro
La vue d'édition de la Macro.
Les lignes de code de la Macro sont identifiées par des couleurs différentes :

Toutes ces couleurs peuvent être modifiées dans les préférences en utilisant les menus de l'espace de travail : Fenêtre > Préférences > COBOL > Editeur > Styles analyseur syntaxique.

Un menu contextuel vous permet d'afficher ou de cacher les balises (tags), il vous suffit de faire un clic droit sur la fenêtre de l'éditeur et de sélectionner Macro > Filtrer la vue > Avec tags ou Sans tags.

L'éditeur affiche les mises à jour effectuées sous l'Arbre des tags de la Macro. Lorsque vous sélectionnez une balise dans l'arbre des tags, l'élément sélectionné apparaît en surbrillance dans la vue de l'éditeur.

A faire : Vous pouvez insérer des lignes de commentaires formatés correspondant à des micro-patterns. Lors de la génération de l'instance appelant la Macro, ces lignes seront reconnues et automatiquement complétées. Vous pouvez ainsi facilement gérer les itérations dans un Programme, Ecran ou Serveur.

Arbre des tags de la Macro

Cette vue vous permet de modifier le code de la Macro. Les menus contextuels sont fonction du modèle choisi à l'ouverture de la Macro (modèle batch, dialogue, serveur...) et du type de vue affiché (avec ou sans édition de squelette de programme). La vue arbre des tags de la Macro est présentée dans la Figure 2
Figure 2. Vue arbre des tags de la Macro
L'arbre des tags.

Dans L'arbre des tags, vous pouvez afficher le code de la Macro dans un squelette de programme propre au modèle (batch, dialogue, serveur, ..) choisi lors de l'ouverture de la Macro dans l'éditeur PDP de Macro. Pour ce faire, cliquez sur Editer le squelette dans la barre d'outils associée à la vue. Les lignes appartenant au programme de reprise sont en vert par défaut.

Dans notre exemple, la Macro est affichée dans un squelette de programme Pacbase sous un modèle batch. Vous pouvez retrouver une vue standard en cliquant à nouveau sur l'icone Editer le squeletteEditer le squelette dans la barre d'outils de la vue Arbre des tags de la Macro.

Cette vue permet de voir l'insertion des tags spécifiques dans un programme. Les tags de couleur verte peuvent être mis à jour. Vous pouvez effectuer cette mise à jour directement dans cette vue en sélectionnant les noeuds dans l'arbre. Les choix du menu contextuel s'affichent en fonction de l'élément sélectionné. Par exemple, le choix Création d'une sous-fonction spécifique dialogue n'est actif que si la fonction sélectionnée dans l'arbre est bien une fonction dialogue dans l'éditeur PDP modèle dialogue.

Avec l'aide de la barre d'outils, vous pouvez déplier ou replier les branches de l'arbre en cliquant sur les boutons ou . Vous pouvez aussi filtrer la liste des tags avec la zone de saisie au-dessus de la vue de l'arbre. Il est très utile lorsque le nombre de tags dans l'arbre est important.

Vous pouvez faire une recherche des noeuds dans la liste des tags et appliquer un filtre de façon à afficher uniquement les noeuds recherchés en utilisant, par exemple, les caractères '*' et '?'. Lorsque vous commencez à saisir dans la zone dédiée aux filtres, un bouton s'affiche à droite. Il permet d'effacer le texte saisi et de revenir à l'affichage précédent.

L'éditeur de Macro situé juste au-dessus de la vue de l'arbre, donne une vue dynamique des mises à jour effectuées dans l'arbre.

A partir du menu contextuel de l'arbre des tags, vous pouvez effectuer un certain nombre d'actions génériques ou spécifiques à l'élément sélectionné :
  • Les options communes à tous les modèles :
    • Supprimer le tag,
    • Ecraser le tag,
    • Renommer le tag,
    • Créer un tag fils,
    • Regrouper les tags,
    • Créer la linkage section,
    • Créer une working ou une linkage,
    • Création d'une fonction ou sous-fonction,
    • Créer une ligne de détail en procédure division,
    • Génération/pas de génération,
    • Mise à jour du niveau.
  • Options spécifiques au modèle sélectionné à l'ouverture de l'éditeur (dialogue, écran client, ou serveur) :
    • Mise à jour des paramètres (spécifique dialogue ou client et spécifique serveur),
    • Insertion au niveau d'un traitement général (spécifique serveur),
    • Insertion au niveau d'une Vue Logique (spécifique serveur),
    • Insertion au niveau d'un accès logique (spécifique serveur),
    • Insertion au niveau d'un accès physique (spécifique serveur).