Frédéric Huard
Superviser mon AS400 avec Metabase
Metabase est un outil de visualisation des données sous forme d’un dashboard graphique.Exemple d’utilisation : Requêtes utilisées pour cette exemple :1) % occupation disqueSELECT SYSTEM_ASP_USED FROM qsys2.system_status_info 2) Nombre de travaux intéractifsSELECT count(*) FROM TABLE(active_job_info()) where job_type=’INT’ 3) Nombre de travaux en message SELECT count(*) FROM TABLE(active_job_info()) WHERE job_status=’MSGW’ 4) Palmarès du nombre de spoules … Lire la suite
Boucle de lecture en SQLRPGLE
Exemple : Lecture de la table utilisateur en filtrant les habitants de PARIS
Importer un SAVF depuis l’IFS
– Création du savf (par exemple dans qtemp) : CRTSAVF FILE(QTEMP/MONSAVF) – Importation du savf depuis l’IFS :CPYFRMSTMF FROMSTMF(‘/home/monprofil/monsavf’) TOMBR(‘/qsys.lib/qtemp.lib/monsavf.file’) MBROPT(*REPLACE)
Remplacer des caractères dans une chaîne de caractères
Utilisation de %SCANRPL( from : to : source { : start } )
Agrégation de données avec LISTAGG
SELECT item ,LISTAGG(TRIM(couleur), ‘,’) WITHIN GROUP(ORDER BY couleur)AS couleursFROM articleGROUP BY item Explications :LISTAGG permet de lister dans une colonne les données issues de plusieurs lignes.LISTAGG(colonne_à_concaténer , ‘séparateur’) WITHIN GROUP(ORDER BY colonne_de_tri) Dans l’exemple donné, le SQL transforme le fichier article suivant en 2 lignes composées de la colonne item et d’une colonne de couleurs … Lire la suite
Agrandir la ligne de commande
Sur une ligne de commande : CALL QCMD On obtient 4 lignes : Et pour avoir encore plus grand : F11=Plein écran
Faire du ménage dans l’IFS selon la date des fichiers
Par exemple, supprimer tous les fichiers pdf de plus d’1 an dans un répertoire : SELECT QCMDEXC(‘rmvlnk objlnk( »’ CONCAT TRIM(CAST(path_name AS VARCHAR(200))) CONCAT »’)’) FROM TABLE(qsys2.ifs_object_statistics( ‘/home/monRepertoire’)) WHERE path_name LIKE ‘%.pdf’ AND CREATE_TIMESTAMP < CURRENT_TIMESTAMP – 1 YEARS Explications :– ifs_object_statistics permet de lister les fichiers d’un répertoire de l’IFS exemple : SELECT CAST(path_name AS … Lire la suite
Trouver le programme appelant dans un RPG
Permet dans un RPG d’identifier son programme appelant. Cela peut servir par exemple pour conditionner certaines actions ou laisser une trace dans un fichier log. en SQLRPGLE :dcl-ds N PSDS; nom_du_pgm CHAR(10) POS(1);end-ds; dcl-s appelant char(10); EXEC SQL SELECT program_name INTO :appelant FROM TABLE(stack_info(‘*’)) WHERE program_name not in (‘ ‘ , :nom_du_pgm) AND ordinal_position < … Lire la suite
Trouver le FQDN de la machine
CHGTCPDMN + F4