, , Exécuter ACS à partir de votre partition

Vous voulez exécuter ACS à partir de votre IBMI

Exemple : la nouvelle fonction de génération des fichiers XLS

VALUES SYSTOOLS.GENERATE_SPREADSHEET(
PATH_NAME => ‘/home/plb/liste_options.xls’,
FILE_NAME => ‘QAUOOPT’,
LIBRARY_NAME => ‘QGPL’);

Le répertoire /QIBM/ProdData/Access/ACS est en *PUBLIC *EXCLUDE par défaut.
Voici une solution pour ouvrir en gardant la main sur les utilisateurs qui auront droit à cette possibilité

Création de la liste d’autorisation

CRTAUTL AUTL(ACS)
TEXT(‘Exécution ACS sur IBMi’)

On considère que votre installation est par défaut, on applique la liste dessus

CHGAUT OBJ(‘/QIBM/ProdData/Access/ACS’) AUTL(ACS) SUBTREE(*ALL)

Vous pouvez éditer vos utilisateurs

EDTAUTL AUTL(ACS)

Remarque:

Vous pouvez gérer les droits par groupe, mais le plus efficace c’est par utilisateur, vous voyez ainsi qui est autorisé directement.

L’idée n’est pas de rester sur 5250, mais on voit bien que la transition sera longue et pas toujours indolore.
il existe des solutions de rewamping chez plusieurs éditeurs

Mais il existe un produit méconnu chez IBM qui s’appelle IBM i Access – Mobile (5770XH2)

Vous pouvez le télécharger sur le site ESS d’IBM

Voici la procédure à suivre pour l’installer est ici

https://www.ibm.com/support/pages/ibm-i-access-mobile

Une fois votre instance démarrée vous pouvez accèder par l’URL
http://<votre partition>:2011/iamobile/

On se concentrera directement sur la partie 5250 , vous devrez indiquer ce lien

http://<votre partition>:2011/iamobile/iWAStartSession

vous avez un premier écran

puis la mire d’ouverture

et ici un wrkactjob par exemple

Vous avez de nombreuses options d’affichage

Conclusion :

C’est une solution qui peut répondre pour quelques utilisateurs nomades, qui se connectent occasionnellement.
Vous n’avez pas de clients à déployer et vous utilisez des mécanismes de gestion purement #IBMi

, Utilisation d’ACS avec le JRE OpenJ9 d’IBM

Les changements de politique d’Oracle pour Java (JRE* ou JDK*) peuvent impacter l’utilisation d’ACS* (problèmes potentiels au lancement et à l’exécution d’ACS).


Pour éviter ces problèmes, l’environnement d’exécution privilégié recommandé par IBM est IBM Semeru Runtimes. C’est une solution gratuite basée sur OpenJDK avec la JVM Open Source IBM OpenJ9.

https://www.ibm.com/support/pages/java-options-ibm-i-access-client-solutions

(*JRE = Java Runtime Environment

*JDK = Java Development Kit

*ACS = IBM i Access Client Solutions)

Téléchargement d’OpenJ9

Lien de téléchargement :

https://developer.ibm.com/languages/java/semeru-runtimes/downloads/

Choisissez la dernière version et téléchargez :

  • soit l’Installer pour Windows x64 en cliquant sur msi > pour installer OpenJ9 en tant que JRE pour Windows
  • soit le JRE zippé en cliquant sur zip > pour installer OpenJ9 en tant que JRE pour ACS seulement

Installation d’OpenJ9 en tant que JRE pour Windows

Si vous voulez installer OpenJ9 en tant que JRE pour Windows, exécutez l’installer :

(ici c’est l’installer ibm-semeru-open-jre_x64_windows_21.0.3_9_openj9-0.44.0.msi)

Si la version d’Oracle a été installée précédemment, après l’installation allez dans Démarrer > Programmes > Java > Configurer Java

Dans le panneau de configuration Java, allez sur l’onglet Java pour visualiser et gérer les différentes versions installées du JRE :

Si Java est déjà installé sur le poste, vous pouvez désactiver la version d’Oracle et activer la version OpenJ9 :

Il suffit de rechercher la nouvelle version pour l’ajouter, puis l’activer

Installation d’OpenJ9 en tant que JRE pour ACS seulement

Vous pouvez installer le JRE directement dans le répertoire \IBM\ClientSolutions\Start_Programs\Windows_x86-64.

Dans ce cas, le JRE OpenJ9 ne sera utilisé que par ACS, les autres logiciels continueront à utiliser le JRE installé sous Windows.

Il faudra bien lancer ACS par l’exécutable acslaunch_win-64.exe du répertoire IBM\ClientSolutions\Start_Programs\Windows_x86-64, et pas le .jar

Décompressez le JRE zippé que vous avez téléchargé :

Copiez le dossier contenu dans l’archive dans le répertoire \IBM\ClientSolutions\Start_Programs\Windows_x86-64

Vérification de la version du JRE utilisée par ACS

Ouvrir ACS et aller dans Aide > A propos

Attention

Avant de déployer le JRE d’OpenJ9 sur vos PC, il est impératif de vérifier si ACS et vos configurations de sessions 5250 fonctionnent correctement, car il peut y avoir quelques effets de bord sur certaines configurations lors du passage à OpenJ9.

, , , Requêtes SQL dans ACS extraites de Navigator for i

Navigator for i utilise les services SQL, il vous indique les requêtes qui ont été utilisées.

Vous pouvez les rejouer dans ACS exécuteur de scripts.

Voici comment :

Vous avez un bouton SQL qui permet d’accéder à la requête

Par contre quand vous voulez exécuter cette requête, vous avez ce message :

Il vous faut démarrer un service sur ACS pour accepter l’exécution de ces scripts

Vous voyez votre service à l’état démarré

Vous récupérez la requête SQL dans ACS

Voila c’est simple et efficace vous pouvez également copier la requête dans propriétés si vous préférer

, SSH Alternative à PUTTY

Vous cherchez un client SSH et vous avez commencé à toucher les limites de PUTTY ?

Nous en avons testé plusieurs et nous avons bien aimé smarTTY

L’interface est simple et épurée, vous avez les icônes avec les sites que vous avez définis

Vous pouvez utiliser une connexion existante ou définir une nouvelle connexion
il vous demandera les éléments classiques, vous pourrez ensuite passer à un échange de clés pour vous identifier.

Vous avez le choix entre 2 interfaces, j’ai préféré l’interface plus classique, les plus jeunes préféreront le « SMART »

Dans l’interface SMART vous pouvez par exemple éditer directement les fichiers …

Vous pouvez alors saisir vos commandes et travailler comme sur n’importe quelle interface .

Le petit plus que nous avons aimé

C’est le bouton SCP qui est une alternative à Filezilla pour les échanges simples


Vous choisissez le fichier à télécharger


Vous avez une fenêtre qui apparait pour indiquer l’avancement du téléchargement
Vous pouvez suspendre, fermer la fenêtre

Voila , comme on dit à Gaia c’est simple et efficace, vous pouvez le tester

Remarque :

Pour l’intégrer dans ACS vous devez modifier le fichier AcsConfig.properties

Attention de vérifier que vous utiliser bien le bon fichier de configuration plus d’informations ici

https://www.ibm.com/support/pages/node/667125

En résumé vous lancez à partir de ACSBUNDLE.jar vous devrez l’ouvrir et l’éditer manuellement.

, Vue rapide du catalogue DB2

Comment à voir une vue rapide du catalogue de votre base de données ?

Voici une solution qui consiste à utiliser le centre de santé

Dans l’onglet « Schémas »
sur la base de donnée faites un clic droit
sélectionnez « Centre de santé »

Les fichiers du catalogue DB2 sont dans QSYS et ils commencent par QADB.

Commencez par mettre en place ce filtre et cliquez sur régénération

Vous allez utiliser 2 vues

« limites de taille » , qui vous permettra de voir le nombre d’enregistrements

Vous voyez par exemple dans QADBFILD la liste des zones de votre DB

« Activité« , qui vous donnera des informations sur les mises à jour sur vos fichiers.

Conclusion :


Vous avez une vue syntaxique de la taille et des mouvements de votre catalogue DB2.

L’exécution de la requête peut être un peu longue quand vous cliquez sur régénération.

Pour voir les informations contenues dans votre catalogue, utilisez les vues SYS* de QSYS2 ou de vos SCHEMAS.

, , Gérer vos SPOOLS graphiquement

Il existe 2 solutions pour gérer vos spools sans passer par un écran 5250, je vais vous les présenter.

La première solution est ACS


Vous devez avoir le java bundle sur votre PC.

Vous cliquez sur Sortie imprimante

Vous avez une grande possibilité de filtres par défaut vous voyez les spools de votre utilisateur.

En faisant un clic droit vous avez un menu qui va vous permettre de gérer vos spools, vous pouvez facilement

télécharger votre spool , il sera converti au format PDF.

La deuxième solution est Navigator for i

Se service d’administration doit être démarré

Vous devez choisir « Mes sorties imprimante »

Vous arrivez sur les spools de votre utilisateurs

Vous pouvez
Convertir en PDF
Si vous choisissez exporter, le fichier obtenu sera au format TXT
en choisissant avancé, vous pouvez gérer votre imprimante

Conclusion :


Les principales différences sont
ACS
Plus de filtres
NFI
Possibilité de convertir en txt
Possibilité de gérer l’imprimante

Les annonces de la TR1 de la 7.5 ou TR7 de la 7.4 sont sorties et disponibles ici https://www.ibm.com/support/pages/node/1119129/


• Voici selon nous 5 nouveautés à suivre dans cette Technology Refresh

• 1) La possibilité de faire des mises à jour sur des flux json avec la fonction JSON_UPDATE , ça fait longtemps que nos équipes râlaient, parce qu’elles devaient faire du bricolage quand on travaillait sur du flux json.


• 2) La possibilité d’exécuter des fonctions table remote, par exemple avec le service REMOTE TABLE, un object_statistics sur une partition distante. Ça peut avoir du sens pour automatiser des contrôles de cohérence.


• 3) Les nouvelles fonctions table, SYSTOOLS.AUDIT_JOURNAL_xx qui permettent de traiter les postes d’audit et plus globalement les nouveautés sur les audits comme la disponibilité d’IDS dans Navigator for i qui n’était pas présent dans la nouvelle interface.


• 4) SELF (SQL Error Logging Facility) qui va permettre de mettre au point les traitements SQL en attrapant de manière plus fine les erreurs et en pouvant les suivre dans le temps sans passer par un mode de debug parfois trop bavard en log.


• 5) Les nouveaux services pour administrer Object Connect (vous savez les commandes SAVRSTxxx, CHANGE_OBJECTCONNECT et OBJECTCONNECT_INFO), un petit rappel, Object Connect peut désormais fonctionner en IP. Disponible par PTF et c’est la dernière fonction SNA qui n’avait pas d’équivalent ip. Ces nouveaux services permettront d’administrer et d’avoir des informations sur ce qui s’exécute dans les échanges inter-machines.


• Rendez-vous en décembre pour les premiers tests.

, , , Date source de vos programmes

On est amené quand on fait des analyses à regarder les dates de source, on constate que ces dates sont à null pour tous les objets de type ILE.

Vous avez une vue QSYS2.PROGRAM_INFO qui permet d’avoir ces informations sur les programmes, un peu comme la commande DSPPGM.

Voici pourquoi : quand vous travaillez en OPM vous compilez des sources qui deviennent des programmes; quand vous travaillez en ILE, vous compilez des sources qui deviennent des modules, puis vous les assemblez pour créer des programmes et du coup une date de source sur un programme ILE ne veut rien dire.

En réalité un programme a un module qui s’appelle point d’entrée programme qui, quand on travaille en BND (CRTBND*), est le seul module placé dans qtemp qui est assemblé pour créer votre programme.

On voit donc que si on veut, on peut assimiler la date du source du programme à la date du module PEP, qui dans plus de 99 % des cas a le même nom que le programme.
On a une deuxième vue permet d’avoir les modules par programme, QSYS2.BOUND_MODULE_INFO.

Il faudra donc combiner les 2 vues.

par exemple :

  • Pour les programmes ILE

SELECT a.PROGRAM_NAME, a.PROGRAM_TYPE, b.SOURCE_FILE_LIBRARY, b.SOURCE_FILE,
b.SOURCE_FILE_MEMBER, b.SOURCE_CHANGE_TIMESTAMP
FROM QSYS2.PROGRAM_INFO A join QSYS2.BOUND_MODULE_INFO B
on a.PROGRAM_NAME = b.PROGRAM_NAME
and A.PROGRAM_NAME = b.BOUND_MODULE and A.PROGRAM_LIBRARY = b.PROGRAM_LIBRARY
WHERE a.PROGRAM_LIBRARY = ‘FADY’ and a.PROGRAM_TYPE = ‘ILE’

  • Pour les programmes OPM

SELECT a.PROGRAM_NAME, a.PROGRAM_TYPE, A.SOURCE_FILE_LIBRARY, A.SOURCE_FILE, A.SOURCE_FILE_MEMBER,
A.SOURCE_FILE_CHANGE_TIMESTAMP
FROM QSYS2.PROGRAM_INFO A
WHERE a.PROGRAM_LIBRARY = ‘FADY’ and a.PROGRAM_TYPE = ‘OPM’

en faisant l’union des deux requêtes vous aurez les dates de tous vos programmes ILE et OPM.

Il y a sans doute d’autres solutions mais celle-ci est très simple à utiliser.