On peut remplacer les fichiers de messages, y compris les fichiers de messages système, pour en tirer d'intéressants avantages et permettre un peu de personnalisation. J'ai créé, par exemple, un fichier de messages TOOLMSG dans ma bibliothèque en utilisant la commande CRTMSGF (Create Message File) et écrit un programme qui
Des fichiers de messages plus … frivoles
fait ceci :
OVRMSGF MSGF(QCPFMSG) TOMSGF(ROBIN/TOOLMSG) SECURE(*YES) OVRMSGF MSGF(QUOMSGF) TOMSGF(ROBIN/TOOLMSG) SECURE(*YES)< CALL QCMD
Les remplacements des fichiers de messages fonctionnent davantage comme une liste de bibliothèques qu'un remplacement de base de données. Si le système peut trouver le message dans le fichier de messages TOOLMSG, il l'utilisera ; sinon, il émettra le message système standard.
Ecran de message CPX2313 : Message identifier . . . . . . . MSGID > CPX2313 |
A l'intérieur de TOOLMSG, j'ai de nombreux messages. Le plus utile d'entre eux (et probablement le seul qui soit utile) est CPX2313 (encadré ci-dessus). Ce message contient les commandes exécutées par le menu de requêtes du système. J'ai modifié le message CPX2313 afin qu'il effectue un WRKJOB plutôt qu'un DSPJOB sur l'option 3, et donc l'option 7 appellera une entrée de commande plutôt que d'afficher l'utilisateur de la station de travail.
Comme la position de début de chaque commande dans ce message est importante (parce que le système utilise une sous-chaîne pour extraire chaque commande), j'ai utilisé la commande MRG MSGF (Merge Message File) pour déplacer le message système dans mon fichier de messages plutôt que de le taper à partir de zéro. J'ai ensuite surfrappé mes modifications avec beaucoup de soins, afin de ne pas dépasser les points de départ de chaque commande. Une fois le message fusionné, il se trouve dans le fichier jusqu'à ce qu'on le supprime. En cas d'erreur, on peut toujours supprimer le message du fichier de messages et répéter le processus en utilisant MRGMSGF.
J'ai écrit la commande CMDENT qui transfère le contrôle à QCMD, qui accepte un paramètre de 10 caractères.
Voici quelques-uns des messages que j'ai ajoutés :
CPC2191 : Object &2/&1 type &3 a zappé dans ses molécules de composants. CPD0030 : La commande &3/&2 est partie dans l'hyperspace. Retaper correctement ou ajouter la bibliothèque à la liste de bibliothèques. CPD6A6 : Cette fois, Bernard, tu es allé trop loin. CPF0001 : J'me marre ! raté à nouveau. CPF1907 : La dernière requête au niveau &1 est en train de manger les pissenlits par la racine. CPF6801 : Quand bon vous semble. CPX2423 : Le texte de second niveau est l'en-tête d'entrée de commande. CPX2D03 : Le dernier il y en a encore. CPX6AB1 : Le dernier. CPX6AB2 : Il y en a encore. PDM0067 : Pitié ! PDM0099 : &1 je suis en train de compiler . . . . PDM0557 : En train d'examiner le membre &1 PDX0015 : Il y en a encore.. Le dernier
J'ai trouvé la plupart de ces messages en appuyant sur Help quand le message était affiché ou en regardant dans le fichier de messages de base et en procédant par essais successifs (trial-and-error). On utilise MRGMSGF pour transférer le message dans le fichier de messages, tout en conservant les informations variables, puis on tape par dessus le texte.
Dans la mesure où l'on ne modifie que les messages présents dans le fichier de messages, et pas ceux du système, les modifications n'affectent que les jobs qui ont été remplacés. Rappelons que le niveau d'appel ou le groupe d'activation peut affecter le remplacement (override).
Robin Coles, programmeur freelance
Ringbase Computing, Ltd.
Huddersfield, Angleterre
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
Les plus consultés sur iTPro.fr
- Les marchés publics peuvent-ils encore faire émerger des champions numériques français ?
- ESET accélère en France et mise sur l’IA face à la montée des cybermenaces
- Souveraineté des données : cessons de traiter le symptôme, attaquons-nous aux causes
- Asys accélère sur la planification intelligente avec l’acquisition de m-work
Articles les + lus
Computex 2026 : 5 signaux forts à retenir
La chaîne d’approvisionnement, point de rupture récurent du SI
Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
Rhea1 : SiPearl allume le CPU européen le plus ambitieux pour le HPC et l’IA souveraine
Analyse Patch Tuesday Mai 2026
À la une de la chaîne Tech
- Computex 2026 : 5 signaux forts à retenir
- La chaîne d’approvisionnement, point de rupture récurent du SI
- Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
- Rhea1 : SiPearl allume le CPU européen le plus ambitieux pour le HPC et l’IA souveraine
- Analyse Patch Tuesday Mai 2026
