> Tech > Le programme de service SEU002

Le programme de service SEU002

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

Le programme de service SEU002 (figure 3) valide les commandes entrées par l'utilisateur et effectue les actions dictées par deux d'entre elles : appliquer une couleur et remplacer des caractères par des espaces. Pour simplifier la distribution du code, les commandes valides sont décrites, non pas dans un fichier, mais

Le programme de service SEU002

dans un tableau généré lors de la compilation (N) et baptisé ironiquement, File (défini en A). Le tableau contient le code des instructions valides (COM), un code indiquant si la commande concerne une ligne ou un bloc de lignes (TYPE), un code indiquant si une extension numérique peut être ajoutée à  la commande (LENG), et un code indiquant si l’utilisation de la commande est limitée aux sessions de mise à  jour (UPDATE).
La procédure CheckCmd de SEU002 commence par utiliser la procédure RmvNum pour récupérer l’extension numérique de la commande, s’il en existe une et ensuite elle analyse le tableau (I). J’ai limité la valeur de l’extension numérique à  98 (J). Lorsqu’une valeur numérique n’est pas autorisée, la procédure vérifie si une valeur numérique existe (K). Par exemple, COn ou COnn peuvent colorer une ligne ou un bloc de lignes mais pas un nombre de lignes spécifié. La routine vérifie également si une opération de mise à  jour a été demandée dans une session d’analyse (L).
La procédure Action de SEU002 commence par faire correspondre le nombre de lignes de sortie au nombre de lignes reçues moins une (C). (SEU ajoute une ligne aux lignes sauvegardées dans l’espace utilisateur). La procédure examine ensuite toutes les lignes. Elle détermine d’abord les différents blocs (D). Lorsqu’elle rencontre la première occurrence d’une commande, la procédure ouvre un bloc. Toutes les lignes suivantes n’affichant pas de commandes font partie de ce bloc. La deuxième occurrence d’une commande signifie la fin du bloc.
Si l’utilisateur a appuyé sur la touche F7 ou F8, le contrôle est passé à  la procédure appropriée (E) du module SEU007 ou SEU008. Si l’utilisateur a saisi une commande commençant par « CO », SEU002 appelle la procédure Color, et lui passe une chaîne contenant le troisième caractère de la commande saisie par l’utilisateur (F). Ce troisième caractère doit être la première lettre de l’un des six choix de couleur possibles mentionnés précédemment. La procédure Color remplace le premier caractère d’espacement de la ligne par le caractère hexadécimal de contrôle pour la couleur choisie (M). Le chapitre 3 du manuel OS/400 DDS Reference V4R4 (SC41-5712), qui analyse le mot-clé DSPATR, énumère les couleurs possibles. Les valeurs hexadécimales des caractères de contrôle des couleurs sont énumérées en B.
Mes commandes TTLn substituent n espaces situés à  gauche de chaque ligne d’un bloc de lignes et ma commande TTRn fait de même à  droite d’un bloc. Comme nous l’avons vu précédemment, pour remplacer les caractères situés aux positions 1 à  5 d’un bloc de lignes sources RPG par des espaces, l’utilisateur tape la commande TTL5 en début et en fin de bloc. Pour supprimer les commentaires dans les colonnes 81 à  100 (les colonnes situées à  l’extrême droite) d’un bloc source RPGLE, l’utilisateur doit taper TTR20 en début et en fin de bloc. Les sous-routines TTR et TTL traitent ces commandes. En H, les sous-routines prennent soin des enregistrements sources de longueur non standard.
Une fois la commande définie par l’utilisateur exécutée, SEU002 réinitialise la variable de la commande (G).

Téléchargez cette ressource

Guide de Sécurité IA et IoT

Guide de Sécurité IA et IoT

Compte tenu de l'ampleur des changements que l'IA est susceptible d'entraîner, les organisations doivent élaborer une stratégie pour se préparer à adopter et à sécuriser l'IA. Découvrez dans ce Livre blanc Kaspersky quatre stratégies efficaces pour sécuriser l'IA et l'IoT.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010