Jadis, chaque fois qu'IBM publiait une nouvelle release, je me précipitais sur le chapitre Operation Codes du manuel de référence RPG, à la recherche des codes opérations nouveaux ou changés. Après tout, les codes opérations étaient les éléments qui activaient toutes les nouvelles fonctions en RPG. Ce n'est plus le
Les codeurs délicats choisissent les BIF
cas ! Désormais, le premier chapitre que je vérifie est celui des fonctions intégrées (BIF, bult-in functions). Les huit BIF originales du RPG IV ont fait boule de neige et sont devenues près de 70 en V5R1. La figure 4 énumère toutes les nouvelles BIF, qui se divisent à peu près en trois catégories : fonctions associées aux dates, fonctions de remplacement de code opération, et fonctions associées à Java.
Les fonctions associées aux dates permettent d’exploiter le support de date natif dans des expressions en format libre (enfin !). ADDDUR (Add Duration), SUBDUR (Substract Duration) et EXTRCT (Extract a Portion of a Date) sont effectivement obsolètes ; elles n’autorisent pas de syntaxe en format libre. A la place, on peut utiliser + et – pour ajouter et soustraire des dates et utiliser les nouvelles fonctions pour traiter les problèmes de durée. La fonction %DIFF remplace SUBDUR quand on veut connaître la différence entre deux dates. La fonction %SUBDT remplace EXTRCT ; elle obtient un sous-ensemble d’une date. La figure 5 présente quelques-unes des nouvelles fonctions dans deux procédures pratiques : DayOfWeek et WeekOfYear.
Les fonctions de remplacement des codes opérations prennent la place des codes opérations en format fixe correspondants (pas forcément associés aux dates), ce qui permet de les utiliser dans des expressions. Je ne peux pas m’empêcher de faire une observation critique sur ce groupe : était-il vraiment nécessaire de créer 10 fonctions pour remplacer LOOKUP ? Il est probable que %LOOKUP et %TLOOKUP auraient amplement suffi, en ajoutant un argument facultatif pour les comparaisons GT, LT, GE et LE rarement utilisées.
Les fonctions associées à Java sont représentées par une BIF vraiment nouvelle, %THIS, qui approche encore davantage le RPG de l’intégration Java directe. %THIS permet d’invoquer une méthode native pour l’instance courante d’une classe sans être obligé de connaître le nom de la classe. La fonction %THIS correspond au qualificateur réservé this de Java (nous reviendrons sur les améliorations associées à Java plus loin).
Téléchargez cette ressource
Sécuriser Microsoft 365 avec une approche Zero-Trust
Découvrez comment renforcer la cyber-résilience de Microsoft 365 grâce à une approche Zero-Trust, une administration granulaire et une automatisation avancée. La technologie Virtual Tenant de CoreView permet de sécuriser et simplifier la gestion des environnements complexes, tout en complétant vos stratégies IAM, y compris dans les secteurs réglementés.
Les articles les plus consultés
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
- Les 6 étapes vers un diagnostic réussi
- Afficher les icônes cachées dans la barre de notification
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
- Activer la mise en veille prolongée dans Windows 10
Les plus consultés sur iTPro.fr
- Souveraineté numérique : la résilience l’emporte sur l’indépendance totale
- IA de confiance : le facteur clé pour rentabiliser les projets d’entreprise
- Quand les « travailleurs numériques » pallient le manque de bras dans l’industrie
- Hôpitaux virtuels : renforcer le système de santé français grâce au numérique
Articles les + lus
Guide Ultime des Raccourcis Clavier Windows 11 pour les Professionnels IT
Quand les « travailleurs numériques » pallient le manque de bras dans l’industrie
Model Context Protocol : le contexte, grand oublié du débat
Microsoft dévoile MAI-Thinking-1 : un modèle de raisonnement « enterprise-grade » en preview publique
Couchbase lance AI Data Plane pour industrialiser l’IA agentique
À la une de la chaîne Tech
- Guide Ultime des Raccourcis Clavier Windows 11 pour les Professionnels IT
- Quand les « travailleurs numériques » pallient le manque de bras dans l’industrie
- Model Context Protocol : le contexte, grand oublié du débat
- Microsoft dévoile MAI-Thinking-1 : un modèle de raisonnement « enterprise-grade » en preview publique
- Couchbase lance AI Data Plane pour industrialiser l’IA agentique
