par Jef Sutherland
Voici deux techniques de lecture en boucle que vous pourrez utiliser au quotidien dans vos programmes RPG.Cet article explique comment utiliser deux structures logiques de lecture en boucle dans une application RPG pour lire des enregistrements particuliers dans un fichier avec clé. Concrètement, dans une application RPG, on peut vouloir lire en boucle tous les enregistrements des ventes d'une certaine date, ou tous les articles appartenant à une certaine catégorie de produits. Avant de passer au RPG, voyons les fichiers avec clé, et comment déterminer si les fichiers physiques et logiques de l'AS/400 en comportent.
Optimisez vos techniques de lecture en boucle
Chaque fichier base de données AS/400 a un chemin d’accès qui détermine comment les enregistrements sont extraits du fichier. Les deux principaux types de chemin d’accès sont à l’arrivée et par clé. L’accès à l’arrivée signifie que les enregistrements sont extraits du fichier dans l’ordre où ils y ont été placés. L’accès par clé signifie qu’une ou plusieurs zones du fichier sont définies comme clé, au moyen de laquelle le système retrouve et trie les enregistrements du fichier.
Les deux types de fichiers, physique et logique, peuvent avoir des clés. Pour savoir si un fichier possède une clé, on peut utiliser la commande DSPFD (Display File Description) et afficher les chemins d’accès du fichier. La figure 1 présente les DDS du fichier logique EMPLF1, qui se base sur le fichier physique EMPPF. On voit que les trois dernières lignes de ces DDS contiennent un K en position 17, indiquant que DEPT, LNAME et FNAME sont des zones de clé. La figure 2 montre la commande DSPFD exécutée sur le fichier physique EMPPF. Notons que le paramètre Access path (ACCPTH) indique Arrival, signifiant que le fichier n’a pas de clé.
Pour vérifier les fichiers logiques construits par dessus un fichier physique, on utilise la commande DSPDBR (Dis-play Database Relations), qui donne la liste des fichiers dépendants. Cette liste de fichiers logiques une fois obtenue, on peut utiliser la commande DSPFD pour rechercher des zones de clé dans cha-cun d’eux. Dans la commande DSPDBR sur le fichier physique EMPPF (figure 3), deux fichiers logiques apparaissent sous Files Dependent On Specified File :
EMPLF1 et EMPLF2. Quand on applique la commande DSPFD à EMPLF1 (figure 4), les clés nécessaires pour notre pro-gramme RPG (DEPT, LNAME et FNAME) apparaissent (en bleu).
Téléchargez cette ressource
Mac en entreprise : le levier d’un poste de travail moderne
Ce livre blanc répond aux 9 questions clés des entreprises sur l’intégration du Mac : sécurité, compatibilité, gestion, productivité, coûts, attractivité talents, RSE et IA, et l’accompagnement sur mesure proposé par inmac wstore.
Les articles les plus consultés
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
- Et si les clients n’avaient plus le choix ?
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
- Cybersécurité Active Directory et les attaques de nouvelle génération
- Chiffrements symétrique vs asymétrique
Les plus consultés sur iTPro.fr
- Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
- L’anxiété liée à l’IA, un risque sous-estimé pour la sécurité
- IA générative en Europe : une adoption massive, mais une gouvernance toujours en retard
- Golden records : le socle oublié des projets IA
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
