Insertion par rapport aux traitements de niveau hiérarchique 05 dans un Composant Applicatif

Vous pouvez insérer des traitements spécifiques ou remplacer des traitements standard dans les blocs générés. Ces blocs ont un niveau hiérarchique 05. Il s’agit des blocs de début et de fin de Composant Applicatif, du bloc des déclarations SQL et des blocs Vue Logique (disponible dans une Macro uniquement). Le bloc et le type d’action que vous sélectionnez indiquent le positionnement du traitement spécifique.

Vous pouvez déclarer ou remplacer un traitement spécifique au niveau Composant Applicatif. Si le traitement spécifique concerne le bloc Vue Logique (disponible dans une Macro uniquement), vous devez identifier la Vue Logique impactée. Les instructions doivent être écrites sur des niveaux hiérarchiquement inférieurs.

Dans le code d'une Macro, toutes ces insertions sont identifiées par ACTION=*C.

Blocs
Les blocs suivants sont générés avec un niveau hiérarchique 05 :
  • Début Composant Applicatif : Ce bloc récupère les informations contenues dans la zone de communication et effectue des initialisations. Il correspond au bloc FSERVER dans le code.

    Dans le code d'une Macro, l’insertion par rapport à ce type de bloc est indiquée sous la forme REF=BS.

  • Vue Logique : Ce choix est disponible dans une Macro uniquement.

    Si plusieurs Vues Logiques sont déclarées dans le Composant Applicatif, il y a autant de blocs que de Vues Logiques. Si vous sélectionnez ce type de bloc, la zone Code Segment devient disponible. Vous devez saisir ou sélectionner le Segment de type Vue Logique dans lequel vous voulez insérer ou remplacer un traitement. Le code Segment identifie l'emplacement du traitement spécifique par rapport au traitement standard.

    Dans le code d'une Macro, l’insertion par rapport à ce type de bloc est indiquée sous la forme REF=vulo (où vulo est la Vue Logique).

  • Fin Composant Applicatif : Ce bloc renvoie les informations au client. Il correspond au bloc FSERVER-END dans le code.

    Dans le code d'une Macro, l’insertion par rapport à ce type de bloc est indiquée sous la forme REF=ES.

  • Déclarations des curseurs SQL : Ce bloc décrit les clauses nécessaires aux déclarations SQL. Il correspond au bloc FSQL dans le code.
    Vous pouvez insérer des traitements spécifiques à deux niveaux :
    • Par rapport au bloc FSQL lui-même, uniquement dans un Composant Applicatif.
    • Par rapport à une fonction spécifique que vous associez au bloc FSQL. Vous décrivez ensuite les instructions dans des sous-fonctions de cette fonction. Dans le code d’un Composant Applicatif, cette 'insertion est indiquée par Fnn=FSQL (où nn est le code de la fonction spécifique).

    Dans le code d'une Macro, l’insertion par rapport à ce type de bloc est indiquée sous la forme REF=SQ.

Type d’action
Les traitements spécifiques sont insérés dans un Composant Applicatif en relatif par rapport aux traitements générés en standard. Vous bénéficiez ainsi des traitements standard générés tout en les adaptant à vos besoins.

Pour ajouter un traitement spécifique, vous positionnez donc votre traitement par rapport à un traitement standard du bloc sélectionné dans la zone Bloc. Vous devez choisir l’une des options suivantes pour insérer le traitement spécifique :

  • Insérer avant un traitement standard. Le traitement spécifique est inséré avant l'étiquette de début du traitement standard.

    Dans le code d'une Macro, le positionnement de ce traitement spécifique est indiqué par la lettre A après le code du bloc (REF=BS A par exemple). Dans le code d’un Composant Applicatif, il est identifié par @BEFORE devant le code du bloc.

  • Insérer après un traitement standard. Le traitement spécifique est inséré avant l'étiquette de fin si le niveau hiérarchique est supérieur au niveau du traitement standard. Il est généré après l'étiquette de fin si le niveau hiérarchique est égal au niveau du traitement standard.

    Dans le code d'une Macro, le positionnement de ce traitement spécifique est indiqué par la lettre P après le code du bloc (REF=BS P par exemple). Dans le code d’un Composant Applicatif, il est identifié par @AFTER devant le code du bloc.

  • Remplacer un traitement standard.

    Dans le code d'une Macro, le positionnement de ce traitement spécifique est indiqué par la lettre R après le code du bloc (REF=BS R par exemple). Dans le code d’un Composant Applicatif, il est identifié par @REPLACE devant le code du bloc.

  • Aucun. Cette option est spécifique à une insertion dans le bloc Vue Logique ou Déclarations des curseurs SQL. Il permet de gérer le positionnement de la fonction en spécifique. Pour les Déclarations des curseurs SQL, il permet d'associer une fonction spécifique à la fonction FSQL standard.

    Dans le code d'une Macro, le positionnement de ce traitement spécifique n’est indiqué par aucune lettre. Dans le code d’un Composant Applicatif, il est identifié par une ligne de commentaire COBOL située au début de la PROCEDURE DIVISION et comprenant la balise @ATTACH (par exemple *@ATTACH F03=FSQL, où F03 est la fonction spécifique associée à la fonction FSQL).


Vos commentaires