Quand on utilise un tableau noir, il faut y définir les valeurs par défaut pour chaque article, de sorte qu'une application puisse supposer les valeurs par défaut sans être obligé de les définir à chaque fois qu'elle appelle le trigger. Vos valeurs par défaut doivent refléter ce que vous souhaitez
Utilisation de valeurs par défaut dans un tableau noir
voir se produire lorsque
les modifications de fichiers proviennent de programmes écrits par autrui. Que
veut-on par exemple qu’un trigger fasselors
de l’exécution d’une commande CpyF (Copy File) ou d’une procédure DFU (Data File
Utility) ? Pour cet exemple de tableau noir, l’action par défaut consiste à faire
effectuer la mise à jour du fichier croisé au trigger.
Il existe une autre raison d’utiliser des valeurs par défaut : en règle générale,
un programme trigger doit rendre la main sans se désactiver (c’est-à -dire sans
activer LR dans un programme RPG) pour éviter des problèmes de performances. Par
conséquent, un trigger pourrait fort bien rester actif même quand on a fini de
l’utiliser (surtout dans une session interactive). En utilisant des valeurs par
défaut dans le tableau noir, on empêche d’autres applications s’exécutant ultérieurement
dans la session interactive, de faire des suppositions erronées quant aux valeurs
initiales du tableau noir.
La figure 4 présente des extraits du programme trigger concernant des valeurs
par défaut dans le tableau noir. La directive /Copy fait apparaître les deux structures
de données (A sur la figure 2) dans le programme trigger : la structure de données
tableau noir(BlkBoard) et la structure de données d’initialisation (BoardInz).
Comme BoardInz ne sert qu’à fournir les valeurs initiales, je n’ai pas jugé utile
de donner des noms à chacune de ses zones.
BoardInz contient le même nombre de zones que BlkBoard. De plus, chaque zone dans
BoardInz présente le même type, longueur et valeur initiale que la zone correspondante
dans BlkBoard. Juste avant de se terminer, le programme trigger rétablit (via
l’instruction Eval) les valeurs initiales des structures de données de BlkBoard.
Les deux flags de mise à jour (UpdCustFlg et UpdItemFlg) sont toujours réinitialisés
à *On. Cette position signifie que le trigger doit, par défaut, mettre à jour
les fichiers croisés.
J’aurais pu utiliser le code opération RPG Reset pour simplifier le positionnement
des valeurs par défaut. Mais, j’ai préféré la technique Eval parce qu’elle fonctionne
quel que soit le langage sous-jacent du trigger : RPG ou un autre langage ILE.
Téléchargez cette ressource
Guide de Threat Intelligence contextuelle
Ce guide facilitera l’adoption d’une Threat Intelligence - renseignement sur les cybermenaces, cyberintelligence - adaptée au "contexte", il fournit des indicateurs de performance clés (KPI) pour progresser d' une posture défensive vers une approche centrée sur l’anticipation stratégique
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- 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
- Mythos et modèles-frontières : quel avenir pour la cybersécurité en France et en Europe face à l’IA ?
- IA agentique : des investissements massifs freinés par des données insuffisamment préparées
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
