- Taille d’une bibliothèque
SELECT SUM(objsize) FROM TABLE(QSYS2.OBJECT_STATISTICS('MABIB', '*ALL'))Additionner 2 bibliothèques :
VALUES (SELECT SUM(objsize) FROM TABLE(QSYS2.OBJECT_STATISTICS('MABIB', '*ALL'))) +
(SELECT SUM(objsize) FROM TABLE(QSYS2.OBJECT_STATISTICS('MABIB2', '*ALL'))) - Copier un spoule dans l’IFS
CRTPF FILE(QTEMP/SPOULE) RCDLEN(132)CPYSPLF FILE(NOM_SPOULE) TOFILE(QTEMP/SPOULE)CPYTOSTMF FROMMBR('/QSYS.LIB/QTEMP.LIB/SPOULE.FILE/SPOULE.MBR') TOSTMF('/home/mon_user/spoule.txt') STMFCCSID(*PCASCII)
- 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_info2) Nombre de travaux intéractifs
SELECT 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 par utilisateur
SELECT job_user , count(*) AS nombre FROM TABLE(QSYS2.SPOOLED_FILE_INFO(USER_NAME =>'*'))
WHERE job_user'QTCP'
GROUP BY job_user
ORDER BY nombre DESC
LIMIT 105) Palmarès des plus gros fichiers
SELECT objlib concat '/' concat objname , objsize
FROM TABLE(QSYS2.OBJECT_STATISTICS('*ALLUSR', 'FILE'))
WHERE objowner NOT LIKE 'Q%' AND objattribute='PF'
ORDER BY objsize DESC LIMIT 15 - 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) - 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 :
SELECTQCMDEXC('rmvlnk objlnk(''' CONCATTRIM(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 YEARSExplications :
– ifs_object_statistics permet de lister les fichiers d’un répertoire de l’IFS
exemple :SELECT CAST(path_name AS VARCHAR(100))
FROM TABLE(qsys2.ifs_object_statistics('/home/monRepertoire'))
– RMVLNK est la commande IBMi qui permet la suppression d’un fichier de l’IFS
– QCMDEXC permet d’exécuter une commande IBMi en SQL - Trouver le FQDN de la machine
CHGTCPDMN + F4
- Lister les tables d’une bibliothèque avec la dernière date d’utilisation
SELECT SUBSTR(table_name, 1 , 12) , last_used_timestamp FROM systablestat WHERE table_schema = 'MaBibliotheque' - Obtenir le type, le modèle, le n° de série, le nom de la machine et le n° de partition
SELECT machine_type, machine_model, serial_number, host_name, partition_idFROM qsys2.system_status_info - Compter le nombre de spoules par utilisateur
SELECT count(*) FROM TABLE(qsys2.spooled_file_info(USER_NAME => 'ProfilAS400'))Si besoin, la commande qui permet de supprimer tous les spoules d’un d’utilisateur :
DLTSPLF FILE(*SELECT) SELECT(ProfilAS400)Pour avoir le palmarès des utilisateurs avec le plus de spoules :
SELECT job_user , count(*) AS nombre
FROM TABLE(QSYS2.SPOOLED_FILE_INFO(USER_NAME =>'*'))
GROUP BY job_user
ORDER BY nombre DESC