Au cours de ces dernières années, le traitement des matrices RPG a beaucoup changé. Les nouveautés affectent surtout la manière de les définir et de les traiter. Il existe beaucoup de variantes de l’ancienne matrice d’exécution. Outre les simples matrices de champs, on peut définir des matrices de structures de données, des matrices qualifiées, des matrices superposées, des matrices multidimensionnelles, des matrices allouées dynamiquement, et des structures de données à occurrences multiples. Chaque genre de matrice a ses forces et ses faiblesses : quelque-unes peuvent être grandes, d’autres ne peuvent être que petites. Certaines ont besoin d’une initialisation explicite, d’autres pas. Telles peuvent être triées, telles autres ne le peuvent pas.Cet article donne du sens aux matrices d’exécution. J’explique comment définir et initialiser chaque type de matrice, accéder aux éléments, trier des matrices et consulter les éléments. Pour approfondir certaines techniques de coding spécifiques, voir l’encadré « 7 conseils principaux sur les matrices »). Mais, commençons par revoir quelques principes de base sur les matrices.
Donner du sens aux matrices d’éxécution en RPG

Une matrice est un ensemble d’éléments.
Ces derniers partagent une définition de données commune, mais chaque élément a une valeur discrète. Une matrice peut contenir jusqu’à 32 767 éléments, chacun d’une longueur maximale de 65 535 octets. Les matrices sont codées dans les D-specs comme des champs autonomes ou comme des sous-champs de structures de données. Le mot-clé DIM définit le nombre d’éléments présents dans une matrice. Les matrices autonomes sont limitées par l’allocation de stockage d’un programme de 16 776 704 octets. Les matrices de sous-champs sont limitées par l’allocation de stockage d’une structure de données : 9 999 999 octets pour une structure de données non nommée ou 65 535 octets pour une structure de données nommée.
Vous traitez les matrices dans les specs en format libre de vos programmes. Pour accéder à un élément de matrice, utilisez un entier comme index. Pour accéder à tous les éléments dans la matrice, spécifiez un astérisque comme index. Vous pouvez utiliser les fonctions intégrées et les codes opérations suivants avec les matrices :
• %ELEM renvoie le nombre d’éléments présents dans une matrice.
• %LEN renvoie la longueur d’un élément de matrice.
• %SIZE renvoie la taille d’un élément de matrice.
• %LOOKUP, %LOOKUPLT, %LOOKUPLE, %LOOKUPPGT et %LOOKUPGE recherchent un élément correspondant dans une matrice.
• %SUBARY extrait un sous-ensemble d’une matrice (disponible avec V5R3).
• %XFOOT additionne une matrice numérique.
• SORTA trie une matrice.
Plus loin, nous verrons des exemples des différents types de matrices en utilisant les définitions suivantes :
d idx s 101 0
d item ds qualified
d id 101 0
d desc 30
IDX définit un index de matrice comme un entier à 10 chiffres. La structure de données ITEM définit un ID et une description d’item sur lesquels s’appuieront les définitions de matrices.
Téléchargez cette ressource

Prédictions 2025 des menaces persistantes avancées
L'analyse et l'évolution du paysage des menaces persistantes avancées (APT) et des conséquences sur vos infrastructures IT. Découvrez la synthèse des prédictions, tendances et recommandations pour 2025 avec les experts Kaspersky.
Les articles les plus consultés
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
- Afficher les icônes cachées dans la barre de notification
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
- Les 6 étapes vers un diagnostic réussi
- Cybersécurité Active Directory et les attaques de nouvelle génération
Les plus consultés sur iTPro.fr
- 2025, un « âge de raison » pour l’écosystème de la technologie ?
- 59 % des entreprises françaises victimes de ransomwares ont stoppé leurs opérations !
- KeeeX accélère son développement en Europe en 2025 !
- Analysez avec AI Content Understanding !
- Cloud et gouvernance : une nécessité pour garantir efficacité et maîtrise des coûts
