Désormais en possession des informa-tions sur les fichiers, nous pouvons créer le programme RPG. J'ai pris comme exemple un programme RPG III qui ne lit des enregistrements dans un fichier maître employés que si l'employé appar-tient au service ventes (sales department). Nous devons indiquer en cartes F du pro-gramme que
Le programme RPG
le fichier maître (EMPLF1) est un fichier avec clé. Nous mettons donc un K en position 31 de la carte F pour indiquer le type d’adressage de l’enregistrement (voir figure 5).
La figure 6 contient le code de la première boucle de lecture. Après avoir déplacé le texte SALES dans la zone
DEPT, j’utilise le code opération SETLL (Set Lower Limits) pour voir s’il existe des enregistrements pour le service ventes (sales department) et, si oui, pour définir le pointeur d’enregistrement pour les instructions de lecture. (*IN80 est à on si les commandes SETLL trouvent un enregistrement dont la valeur de clé est égale à la clé de recherche.) Je compare ensuite le résultat de l’opération SETLL en utilisant *IN80 pour voir s’il est néces-saire ou non de faire une lecture. (Pour-quoi entrer dans une boucle de lecture s’il n’y a pas d’enregistrement à lire ?)
Ligne 4, j’ai ma première opération READE (Read Equal), qui tente de lire un enregistrement dont les zones de clé correspondent à la liste des champs ou des clés en facteur 1. L’opération READE active *IN81 quand elle ne trouve pas un tel enregistrement. A la ligne 5, je crée une boucle DOW en utilisant l’opération DOWEQ (Do While Equal) pour vérifier le résultat de l’opération READE. Si *IN81 est à *OFF (c’est-à -dire si READE a trou-vé un enregistrement), le programme traite le code entre les instructions DOW et ENDDO. Si le READE ne parvient pas à trouver un enregistrement, la condition DOWEQ échoue au premier passage et la boucle DO n’est jamais exécutée.
Si la boucle DO est traitée, je dois avoir un enregistrement en provenance du fichier AS/400, correspondant à ma condi-tion de lecture (c’est-à -dire, un enregis-trement où DEPT = SALES). Le moment est venu d’effectuer les éventuels traite-ments concernant l’enregistrement de l’employé. Ligne 6, j’imprime une ligne détail pour un rapport d’employés.
Il faut à présent lire l’enregistrement de l’employé suivant du service ventes.
Ligne 7, il y a une seconde instruction READE dans la boucle DOWEQ, qui tente de lire un autre enregistrement avec une valeur de zone de clé spécifique. Si un enregistrement est trouvé, *IN81 reste à *OFF et le programme reste dans la boucle DOW. Si *IN81 est à *ON, c’est que le READE n’a pas trouvé d’enregistre-ment avec une ou plusieurs clés corres-pondant à mes critères et le programme quitte la boucle DOW, arrêtant du même coup la lecture.
Téléchargez cette ressource
Guide de Cyber-résilience pour Microsoft 365
La violation de votre tenant M365 va au-delà d’un simple incident de cybersécurité. Elle peut entraîner une interruption opérationnelle généralisée, des perturbations commerciales et une exposition de vos données sensibles. Découvrez les méthodes et technologies pour évaluer, comparer et renforcer votre posture de sécurité Microsoft 365.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Les 3 prédictions 2026 pour Java
- Infrastructures IT : 5 leviers concrets pour éviter les impasses technologiques
- Top 6 des priorités des DSI en 2026
- Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
Articles les + lus
CES 2026 : l’IA physique et la robotique redéfinissent le futur
Les 3 prédictions 2026 pour Java
Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
Face à l’urgence écologique, l’IT doit faire sa révolution
D’ici 2030, jusqu’à 90 % du code pourrait être écrit par l’IA, pour les jeunes développeurs, l’aventure ne fait que commencer
À la une de la chaîne Tech
- CES 2026 : l’IA physique et la robotique redéfinissent le futur
- Les 3 prédictions 2026 pour Java
- Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
- Face à l’urgence écologique, l’IT doit faire sa révolution
- D’ici 2030, jusqu’à 90 % du code pourrait être écrit par l’IA, pour les jeunes développeurs, l’aventure ne fait que commencer
