Pause-Café Volubis

pause-café

rendez-vous technique
Pause-Café est une réunion technique
destinée aux informaticiens sur plateforme IBM i.
Elle a lieu 2 fois par an : en général en Bretagne et sur Paris.

Pause-café #94

13 Mars 2025 pour les clubs Pays de Loire et Bretagne

IBM i 7.5 TR5 - 7.4 TR11

Généralités

Annoncée le 8/10/2024, disponible le 22/11/2024 (sauf BRMS le 15/12/2024, RDi le 20/12/2024 et PowerHA SystemMirror le 27/12/2024) 

Rappels

Le rythme actuel des versions est d'environ 3 ans, avec 2 TR par an.

Vous pouvez mettre à niveau depuis la version n-2 (de 7.3 à 7.5 par exemple).

2 versions sont maintenues en concurrence. L'arrêt de la maintenance de la 7.3 est effectif depuis le 30/09/2023. Les TR ne sont désormais plus disponibles pour la 7.3


Références

Support

IBM i 7.5 n'est supporté qu'avec les serveurs Power 9 ou Power 10.

IBM i 7.4 TR11 n'est supporté qu'avec les serveurs Power8, Power9 ou Power 10.



Virtualisation

Nouvelles fonctionnalités pour PowerVM :

  • Virtual Fibre Channel : amélioration des performances et tracking des latences

Plus de détails https://www.ibm.com/support/pages/node/1137514 et https://www.ibm.com/docs/en/announcements/platform-enhancements-powervm-powervc-vhmc-cmc-2024-10-08?region=US


Backup, Recovery and Media Services for i (5770-BR1 et BR2)

Nouvelles fonctionnalités :

  • Amélioration de la vue QUSRBRM.CG_BACKUP_STATUS : ajout du groupe de contrôle d'archivage
  • Optimisation de la commande RSTLIBBRM
  • Phase 1 de l'interface web BRMS : vue simplifiée des informations sur l'état des sauvegardes et supports
  • Nouveaux services SQL
    • QUSRBRM.CONTROL_GROUP view
    • QUSRBRM.CONTROL_GROUP_ENTRY view
    • QUSRBRM.CONTROL_GROUP_SUBSYSTEM view
    • QUSRBRM.CONTROL_GROUP_JOB_QUEUE view
    • QUSRBRM.BACKUP_LIST view
    • QUSRBRM.BACKUP_OBJECT_LIST view
    • QUSRBRM.BACKUP_SPLF_LIST view
    • QUSRBRM.BACKUP_IFS_LIST view
    • QUSRBRM.BACKUP_FOLDER_LIST view
    • QUSRBRM.BACKUP_POLICY view
    • QUSRBRM.SYSTEM_POLICY view

 

PTF :

IBM i 7.5 - 5770BRA SJ03069 - 5770BR2 SJ02198

IBM i 7.4 - 5770BRA SJ03066 - 5770BR2 SJ02197

Cf https://helpsystemswiki.atlassian.net/wiki/spaces/IWT/pages/165642446/Enhancements+to+BRMS


IBM PowerHA SystemMirror for i (5770-HAS)

Nouvelles fonctionnalités :

  • Version 5.6.3
  • Prise en charge des services de réplication globale (GRS) avec IASP
  • Cela permet la gestion PowerHA de la réplication SAN dans PowerVS

Cf https://fortradocs.atlassian.net/wiki/spaces/IWT/pages/163577866/PowerHA+SystemMirror+for+i


SQL

Nécessite :

IBM i 7.5 : SF99950 niveau 8

IBM i 7.4 : SF99704 niveau 29

Nouvelles fonctionnalités

Services pour l'administrateur DB2

Nouveaux services

  • Amélioration de la gestion des noms des curseurs pour les UDTF
    • Le nom du curseur résultat est systématiquement SQL_TABLE_CURSOR. En cas d'utilisation de multiples UDTFs, il peut y avoir des risques de collisions des noms de curseurs
    • L'utilisation de FENCED dans vos fonctions limitece risque. Cela provoque l'exécution de la fonctions dans un thread dédié et augmente donc la charge de travail.
    • Il est nécessaire de recréer les fonctions
    • cf https://www.ibm.com/support/pages/node/7169071

Services modifiés

Services

Services IBM i : nouveaux

  • QSYS2.SERVICE_TOOLS_SERVER_INFO : informations sur Service Tools (SST/DST)
  • SYSTOOLS.ADD_VALIDATION_LIST_ENTRY() : ajouter une entrée à une liste de validation
    • Identique à l'API QsyAddValidationLstEntry()
    • Nécessite option 13 de SS1 : System Openness Includes
    • Renvoie 0 en cas de succès
    • Les listes de validation sont utilisées pour la sécurité.

    • cf https://www.ibm.com/support/pages/node/7168530
  • SYSTOOLS.CHANGE_VALIDATION_LIST_ENTRY() : modifier une entrée d'une liste de validation
  • SYSTOOLS.REMOVE_VALIDATION_LIST_ENTRY() : modifier une entrée d'une liste de validation
  • Exemple d'utilisation liste de validation :

  • SYSTOOLS.AUDIT_JOURNAL_VP() : poste VP du journal d'audit
  • SYSTOOLS.CONFIGURATION_STATUS : informations sur les objets de configuration
    • Equivalent à la commande RTVCFGSTS (Retrieve Configuration Status)
    • Supporte les objets de type *CTLD Description du contrôleur, *DEFAULT Description de l'appareil, *LIND Description de la ligne, *NWID Description de l'interface réseau, *NWSD Description de l'interface réseau
    • cf https://www.ibm.com/support/pages/node/7168545
  • SYSTOOLS.END_JOBS : arrêt de plusieurs travaux
    • Pour éviter de multiplier les requêtes ENDJOB, permet l'arrêt de multiples travaux en fonction des filtres transmis
    • JOB_NAME_FILTER : *ALL ou un nom de travail spécifique
    • CURRENT_USER_LIST_FILTER  : liste de profils, séparés par ",". 10 valeurs maximum.
    • SUBSYSTEM_LIST_FILTER : liste de sous-systèmes, séparés par ",". 25 valeurs maximum.
    • END_OPTION : CONTROLLED ou IMMEDIATE
    • END_CONTROLLED_DELAY : en secondes, de 1 à 999999 (30 par défaut)
    • DELETE_SPOOLED_FILES : YES/NO. Suppression des spoules des travaux arrêtés (hors joblog)
    • MAXIMUM_JOBLOG_ENTRIES : nombre, *NOMAX ou *SAME. Nombre d'entrées écrites dans la joblog du travail arrêté
    • JOB_END_MAXIMUM : nombre maximum de travaux à arrêter. Défaut : sans limite
    • JOB_END_ITERATION_COUNT : nombre de travaux à arrêter en 1 itération. Défaut = 100
    • JOB_END_ITERATION_DELAY : nombre de secondes entre 2 itérations. Défaut = 60 secondes
    • cf https://www.ibm.com/support/pages/node/7168537
  • SYSTOOLS.IFS_ACCESS() : opérations possibles sur un fichier IFS
  • SYSTOOLS.POWER_SCHEDULE_INFO : informations sur le planning de mise sous/hors tension

Services IBM i : évolutions

  • QSYS2.ACTIVE_JOB_INFO() : informations sur les travaux actifs
    • Ajout de deux colonnes QRO_HASH_JSON et PLAN_IDENTIFIER_JSON
    • QRO_HASH_JSON : liste des hachages QRO associés aux requêtes en cours d'optimisation ou d'exécution dans cette tâche. QRO = identifiant unique pour une requête dans le plan cache
    • PLAN_IDENTIFIER_JSON : liste des identifiants de plan associés aux requêtes en cours d'exécution dans ce job
    • cf https://www.ibm.com/support/pages/node/1128579
  • QSYS2.AUDIT_JOURNAL_DATA_MART_INFO et QSYS2.MANAGE_AUDIT_JOURNAL_DATA_MART() : ajout filtre
    • Nouveau paramètre DATA_MART_FILTER
    • Vous devez indiquer une chaine de 1 ou plusieurs prédicats qui permettent de limiter les lignes retournées (clause WHERE ...)
    • DATA_MART_FILTER => 'VIOLATION_TYPE = ''A'' AND OBJECT_LIBRARY NOT LIKE ''Q%'''); 
    • Aucun contrôle de syntaxe n'est effectué
    • Non supporté pour les actions ADD et DROP
    • cf https://www.ibm.com/support/pages/node/7148888
  • QSYS2.COMPARE_IFS() : ajout de nouveaux attributs
  • QSYS2.JOBLOG_INFO() : équivalent DSPJOBLOG
  • QSYS2.SYSTEM_STATUS(), QSYS2.SYSTEM_STATUS_INFO et QSYS2.SYSTEM_STATUS_INFO_BASIC : équivalent WRKSYSSTS
  • SYSTOOLS.FIRMWARE_CURRENCY : informations sur le niveau de firmware
    • Ajout des deux colonnes :
    • FW_TEMPFIXPACK : Copie temporaire du micrologiciel du serveur. Elle a été téléchargée sur le serveur et est disponible pour être activée, mais elle n'est peut-être pas active actuellement.
    • FW_PERMFIXPACK : La copie permanente du firmware du serveur.
    • cf https://www.ibm.com/support/pages/node/1119279
  • SYSTOOLS.LPRINTF() : écrire dans la joblog
  • SYSTOOLS.SEND_EMAIL() : envoyer un mail depuis SQL
  • Tracking Important System Limits : nouvelles limites
    • Ajout de la prise en charge des alertes pour 16100 (nombre maximal de membres dans un fichier physique source) et 18304 (numéro de séquence maximal d'un journal *MAXOPT1 ou *MAXOPT2)
    • cf https://www.ibm.com/support/pages/node/1136884

RPG

Dates sur 2 digits et "problème" de l'année 2039 (ne dites pas bug !)

PTFs nécessaires :

7.5 : 5770WDS SJ03204 et SJ02921 + 5770WDS SJ03206 pour TGTRLS(V7R4M0)

7.4 : 5770WDS SJ03205 et SJ02911

Paramètre DATEYY sur les commande CRTRPGMOD/CRTBNDRPG et du mot clé de contrôle DATEYY

  • Valeurs :
    • *ALLOW : aucun contrôle, valeur par défaut (comportement actuel)
    • *WARN : ajoute un message de gravité 10 dans le spoule de compilation en cas d'usage de date avec année sur 2 digits
    • *NOALLOW : provouqe une erreur de gravité 30 (arrêt anormal de la compilation) en cas d'usage de date avec année sur 2 digits

 

Nouveau format de date *LONGJOBRUN

Peut être utilisé à la place de *JOBRUN (cf format défini dans le JOB) pour obtenir des dates sur 4 digits au lieu de 2 digits lors des conversions.

 

Exemple :

Avec :

Produit :

 

Les impacts détaillés : https://www.ibm.com/docs/en/i/7.5?topic=keywords-dateyyallow-warn-noallow

Nouvelles fonctions intégrées %HIVAL et %LOVAL

PTFs nécessaires :

7.5 : 5770WDS SJ02922 + 5770WDS SJ02923 pour TGTRLS(V7R4M0)

7.4 : 5770WDS SJ03205 et SJ02912

%HIVAL et %LOVAL : retournent les valeurs maximales et minimales pour une variable (ou paramètre)

Ne fonctionne pas pour les variables: caractères (y compris longueur variable, UCS-2, Graphic) de plus de 1000 de long, data structure, pointeur, pointeur de procédure, objet.

 

Exemple :

Produit :

Avec :

Fonctionne avec les énumérations :

La fonction intégrée %PROC est désormais autorisée dans la section ON-EXIT

PTFs nécessaires :

7.5 : 5770WDS SJ02922 + 5770WDS SJ02923 pour TGTRLS(V7R4M0)

7.4 : 5770WDS SJ03205 et SJ02912

Cf https://www.ibm.com/docs/en/i/7.5?topic=functions-proc-return-name-current-procedure

%PROC() retourne le nom de la procédure en cours d'éxécution. Par contre, la section ON-EXIT est techniquement éxécutée dans une procédure technique _QRNI_ON_EXIT_nomproc générée par le compilateur.

 

%PROC() supporte désormais un paramètre obligatoire lorsqu'appelé dans ON-EXIT :

- %PROC(*OWNER) retourne le nom de la procédure contenant la section ON-EXIT

- %PROC(*ONEXIT) retourne le nom de la procédure qui implémente la section ON-EXIT.

 

Exemple :

Produit :

 

Cela vous permet de gèrer les traces / logs au mieux !

Access Client Solutions

L'historique des versions et fonctionnalités associées https://www.ibm.com/support/pages/ibm-i-access-acs-updates

Page principale de ACS : https://www.ibm.com/support/pages/node/633843

Version 1.1.9.7

Disponible depuis novembre 2024.

Version mineure, peu d'évolutions :

  • Emulateur 5250
  • Support de EHLLAPI en 64 bits (EHLLAPI Bridge 9.24.318)
    cf https://ibm-power-systems.ideas.ibm.com/ideas/IBMI-I-2232 et https://www.ibm.com/support/pages/ehllapi-access-client-solutions-emulator
    Nécessite le téléchargement et l'installation de IBM i Access Client Solutions EHLLAPI Enablement Tool
  • Database
  • Le registre CLIENT_APPLNAME est désormais alimenté pour toutes les fonctions DB de Access Client Solutions.


    Possibilité de montrer les instructions SQL utilisées pour alimenter certaines listes.
  • Schémas
  • Affichage du détail des index MTI (Maintained Temporary Index) dans une nouvelle table action. Nécessite : 7.4 SF99704 niveau 20, 7.3 SF99703 niveau 28
  • Centre de performances SQL
  • Ajout de raccourcis.

 

Listes des APARs corrigés :

- DT395262 OSP ACS DB SCHEMA " STATISTIC DATA DETAILS " TEXT IS NOT READABLE WHEN ACS IS SET TO GERMAN

- DT395897 OSP-UNPRED ACS - RUNSQLSCRIPT - SQL FORMATTER AND SYNAX CHECK ISSUE

- DT395925 OSP-OSP-UNPRED ACS WARNING

- DT396274 OSP THE DEFAULT PATH AND NAME USED WHEN USING ACS RUN SQL SCRIPT AND SAVING TO AN IFS FILE IS INCORRECT.

- DT396414 OSP PRINTER SESSION DOES NOT AUTOMATICALLY CONNECT AT ACS V1.1.9.6

- DT397540 OSP-UNPRED IBM I ACS 5250 SESSION MAY ATTEMPT FTP CONNECTION TO NETWORK RESOURCE HOSTING EMULATOR FOLDER

- DT398408 OSP-UNPRED RSS - CL PROMPT FOR COMMAND ADDLICKEY FAILS WITH CPD0082

- DT400313 OSP-UNPRED ACS EMULATION - FIELD SET TO BLINK WITH DBCS CHARACTER THE OTHER FIELDS BEFORE THAT FIELD ALSO BLINKS

- DT400977 OSP-MSGDB0036 SQL0913 DATA TRANSFER WITH LOCK ON FIRST MEMBER

- DT406832 OSP WHEN USING ACS RSS 1.1.9.6 ON LINUX USING THE SAVE RESULTS OPTION, GETS NO POP-UP.

Navigator for i

Evolutions de la nouvelle interface

Rappels

L'interface de Navigator for i a été totalement revue en 2022. On parlera de Navigator for i "heritage" pour l'ancienne interface.

Cf https://www.ibm.com/support/pages/node/6483299 

Depuis mars 2023, les PTF 5770SS1 V7R4M0 SI82187 et 5770SS1 V7R3M0 SI82188 désactivent la version héritage par défaut. Si vous souhaitez l'activer/désactiver manuellement : https://www.ibm.com/support/pages/node/6556828  

 

Les évolutions  livrées avec la 7.5 TR5 / 7.4 TR11 nécessitent :

IBM i 7.5 : SF99952 niveau 17

IBM i 7.4 : SF99662 niveau 38

Détail des groupes PTF : https://www.ibm.com/support/pages/node/6520030 

 

 

Réseau

Ajout du wizard de configuration TLS des serveurs hôtes

Configuration des logs

cf https://www.ibm.com/support/pages/node/7130983

Licences

Les dates d'expiration des licences sont désormais affichées, et un code couleur permet de visuellement idnetifier le statut des partitions :

Sur le tableau de bord : 

Dans la vue table :

L'icone est un lien vers la gestion des licences :


Sécurité

Améliorations du datamart

Cf https://www.ibm.com/support/pages/node/6570755


Performance Data Investigator (PDI)

Nouvelles perspectives ajoutées à Collection Services > CPU > Active Jobs :

- Active Jobs Count

- CPU Utilization by Prestart Job (WHERE (QOS.JBSTYP = 'J'))

- Job Count by Status & Prestart Jobs Count by Status

- Métriques : Jobs Started in Interval, Ended in Interval, Continued through Interval, Started and Ended

 

Job Count by Type

Job Count by Subtype

Cf https://www.ibm.com/support/pages/node/6570755


Intégration avec VSCode

Lorsque vous affichez l'instruction SQL sous-jacente à un affichage, vous pouvez demander l'exécution directement dans VSCode.

Nécessite l'extension DB2 for IBM i au niveau 1.4.0 minimum, 1.4.1 recommandé.


AJS - Advanced Job Scheduler

Toutes les fonctions sont désormais accessibles via l'interface de Navigator for i. Exemple :

 

Cf http://www.ibm.com/support/pages/node/6845165

Visual STUDIO CODE - CODE FOR I

De très nombreuses nouveautés ! 

Code for i est un projet Open Source, principalement géré par la communauté.

- Débogage avec point d'entrée de service

- Options de refactorisation



- DB2 : SELF, IA, update, notebooks, dépendances

update :

Dépendances :

- IBM i Renderer (SDA)

Possibilité d'avoir un preview pour les PRTF/DSPF

- IBM i Project Explorer

Développement IBM i en local.

 

- Source Orbit

Scan l'ensemble des sources et produit un arbre de dépendances pour une meilleure asisstance au développement.

Disponible en version CLI mais désormais sous forme d'extension VSCode, plus simple à utiliser.

Il s'intègre à IBM i Project Explorer

cf https://ibm.github.io/sourceorbit/#/ et https://www.nicklitten.com/course/install-configure-ibm-i-source-orbit

 

Cf https://marketplace.visualstudio.com/items?itemName=HalcyonTechLtd.ibm-i-development-pack

Il y a une roadmap 

Voir aussi https://www.itjungle.com/2024/07/15/whats-cooking-in-code-for-ibm-i/

Stay tuned : https://www.seidengroup.com/vs-code-for-i-fridays/? 

RDi - Rational Developer for i

Fix pack 9.8.0.3

cf https://www.ibm.com/support/pages/fix-list-rational-developer-i#9803

Focus :

  • Indication si connexion sécurisée ou non dans les propriété 
  • Toujours dans les propriétés de connexion : ajout Keep alive  
  • Error list :le tri par sévérité permet d'avoir un tri secondaire par n° de ligne
  • Vue structure supportée pour source de liage 
  • Attendu avec impatience : amélioration des performances d'accès à l'IFS !
  • Ajout de l'aide sur les tags pour ILE Docs

 

Revenons sur ILE Docs : permet de générer de la doc HTML depuis des commentaires RPG.

Exemple : 

 Dans RDi : Ctl+i ou afficher Vue "Document ILE"

 

Références :

https://codefori.github.io/docs/developing/iledocs/

https://www.ibm.com/docs/en/rdfi/9.8.0?topic=editing-using-ile-doc 

 

 

Pour fini, support des nouvelles fonctionnalités pour RPGLE : support de %proc, %hival et %loval

 

Fix pack 9.8.0.4

Mise à jour mineure ...

cf https://www.ibm.com/support/pages/fix-list-rational-developer-i#9804

Pour effectuer la mise à jour,démarrer RDi en tant qu'administrateur. Il est également nécessaire d'avoir déjà installée le fix pack 3.

 Puis Aide -> Vérifier les mises à jour

Installation :

Nous avons rencontré des erreurs :

Au second essai :

Puis :

 

Vous pouvez également télécharger le zip depuis l'ESS. Il faut passer par le menu Aide -> Installer un nouveau logiciel, et modifier le référentiel :

Après installation :

  • Mise à jour de la version de ACS embarquée en 1.1.9.7
  • Mise à jour de Java embarqué en 11.0.25+9 (Semeru) release notes et CVE
  • Mises à jour de sécurité