Aller au contenu

Recette SQL IBM i (AS/400) · Messages

Les travaux terminés en erreur sur les dernières 24 heures

Les travaux terminés avec un code fin différent de 0 dans les dernières 24 heures, retrouvés par le message CPF1164 de l'historique.

Le besoin

Quels travaux ont planté depuis hier ? Chaque fin de travail laisse un message CPF1164 dans l'historique, avec son code fin : 0 si tout va bien.

La requête

SELECT MESSAGE_TIMESTAMP, FROM_JOB, MESSAGE_ID, MESSAGE_TEXT
FROM TABLE(QSYS2.HISTORY_LOG_INFO(START_TIME => CURRENT TIMESTAMP - 24 HOURS)) H
WHERE MESSAGE_ID = 'CPF1164'
  AND MESSAGE_TEXT NOT LIKE '% 0 .%' AND MESSAGE_TEXT NOT LIKE '%code fin 0 %' AND MESSAGE_TEXT NOT LIKE '%end code 0 %'
ORDER BY MESSAGE_TIMESTAMP DESC
FETCH FIRST 10 ROWS ONLY

On lit les CPF1164 des dernières 24 heures et on écarte ceux dont le texte annonce un code fin 0. Le texte est dans la langue du système, d'où les variantes française et anglaise du filtre.

Le résultat sur un IBM i 7.5

Ce que l'IBM i a renvoyé le 01/10/2026 (5 lignes au plus) :

MESSAGE_TIMESTAMP Horodatage du message FROM_JOB Travail d'origine MESSAGE_ID Identifiant du message MESSAGE_TEXT Texte du message
2026-10-01 14:37:15.405004 969865/UTIL161/QPADEV006R CPF1164 Travail 969865/UTIL161/QPADEV006R arrêté le 01/10/26 à 14:37:15; temps UC 0,007; code fin 30 .
2026-10-01 14:30:07.117515 970413/UTIL185/LFVENTOT CPF1164 Travail 970413/UTIL185/LFVENTOT arrêté le 01/10/26 à 14:30:07; temps UC 0,007; code fin 20 .
2026-10-01 14:29:59.820750 970412/UTIL203/LFVENSTR CPF1164 Travail 970412/UTIL203/LFVENSTR arrêté le 01/10/26 à 14:29:59; temps UC 0,007; code fin 20 .
2026-10-01 14:29:00.472155 970410/UTIL203/LFVENSTR CPF1164 Travail 970410/UTIL203/LFVENSTR arrêté le 01/10/26 à 14:29:00; temps UC 0,008; code fin 20 .
2026-10-01 14:28:10.314444 970407/UTIL203/LFVENSTR CPF1164 Travail 970407/UTIL203/LFVENSTR arrêté le 01/10/26 à 14:28:10; temps UC 0,008; code fin 20 .

Chez nous, ce sont des sessions interactives et des programmes d'exercice d'apprenants : sur un système de formation, les fins anormales sont nombreuses.

Données anonymisées : les noms de système, de profils, de bibliothèques, de postes et les adresses IP ont été remplacés.

L'adapter à votre système

Pour un critère plus robuste que le texte, utilisez SYSTOOLS.ENDED_JOB_INFO, qui décode les messages de fin de travail en colonnes.