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

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

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

Supprimer les doublons dans un fichier

DELETE FROM monfichier aWHERE RRN(a) NOT IN ( SELECT MAX(RRN(b)) FROM monfichier b WHERE (a.cle1, a.cle2) = (b.cle1, b.cle2) ) Explications :La fonction RRN permet de récupérer le numéro d’enregistrement de la ligne. Le SQL supprime donc les doublons (clé1+clé2 dans l’exemple) qui ne correspondent pas au dernier numéro d’enregistrement. Si on veut conserver le … Lire la suite