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
Microsoft 365 Tenant Resilience
Face aux failles de résilience des tenants M365 (configurations, privilèges, sauvegarde). Découvrez 5 piliers pour durcir, segmenter et surveiller vos environnements afin de limiter l’impact des attaques. Prioriser vos chantiers cyber et améliorer la résilience de vos tenants Microsoft 365.
Les articles les plus consultés
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
- Activer la mise en veille prolongée dans Windows 10
- Afficher les icônes cachées dans la barre de notification
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
- Les 6 étapes vers un diagnostic réussi
Les plus consultés sur iTPro.fr
- Les coûts cachés des merge requests générées par l’IA
- WatchGuard lance Rai, une IA agentique taillée pour les MSP
- Mythos révèle les limites d’un Zero Trust centré sur le réseau
- Faire évoluer la souveraineté des données du statut d’ambition politique à son application opérationnelle
Articles les + lus
Analyse Patch Tuesday Mai 2026
Les coûts cachés des merge requests générées par l’IA
Femmes et métiers de la tech : une attractivité réelle freinée par des stéréotypes persistants
Moderniser le développement logiciel : de la fragmentation à l’intégration
Analyse Patch Tuesday Avril 2026
À la une de la chaîne Tech
- Analyse Patch Tuesday Mai 2026
- Les coûts cachés des merge requests générées par l’IA
- Femmes et métiers de la tech : une attractivité réelle freinée par des stéréotypes persistants
- Moderniser le développement logiciel : de la fragmentation à l’intégration
- Analyse Patch Tuesday Avril 2026
