Service SQL IBM i (AS/400) · Fonction table
SYSTOOLS.SPOOLED_FILE_DATA
Lire le contenu d'un fichier spoule
Renvoie ligne par ligne le contenu d'un fichier spoule d'un travail donné, par défaut son historique QPJOBLOG.
À quoi ça sert
Cette fonction de table lit le texte d'un fichier spoule identifié par JOB_NAME (nom qualifié numéro/utilisateur/travail), SPOOLED_FILE_NAME (QPJOBLOG par défaut) et SPOOLED_FILE_NUMBER (*LAST par défaut, le plus récent). Chaque ligne a sa position (ORDINAL_POSITION) et son contenu (SPOOLED_DATA).
Elle permet de lire un historique de travail ou un état directement dans un résultat SQL, de le filtrer avec LIKE pour y chercher une erreur, ou d'automatiser l'analyse d'un listing de compilation, sans passer par CPYSPLF. Le paramètre IGNORE_ERRORS vaut YES par défaut.
Résultat réel sur un IBM i 7.5
Ce que nous avons exécuté :
SELECT * FROM TABLE(SYSTOOLS.SPOOLED_FILE_DATA(JOB_NAME => '966250/UTIL232/QPRTJOB', SPOOLED_FILE_NAME => 'QPDSPFD')) ORDER BY ORDINAL_POSITION
Ce que l'IBM i a renvoyé le 01/10/2026 (5 lignes au plus) :
| ORDINAL_POSITION Position ordinale | SPOOLED_DATA Données du fichier spoule |
|---|---|
| 1 | 5770SS1 V7R5M0 220415 Description de fichier 1/10/26 9:05:54 Page 1 … |
| 2 | Fichier . . . . . . . . . . : CLIENT … |
| 3 | Bibliothèque . . . . . . : JOBISQL … |
| 4 | Type d'information . . . . : *ATR … |
| 5 | Attributs du fichier . . . : *ALL … |
Données anonymisées : les noms de système, de profils, de
bibliothèques, de postes et les adresses IP ont été remplacés. Les objets du schéma
JOBISQL sont des objets de démonstration créés pour ce site.
L'exemple d'IBM
Renvoyer le fichier spoule QSYSPRT le plus récent d'un travail précis.
-- Description: Return the most recent QSYSPRT file for a specific job.
SELECT * FROM TABLE(SYSTOOLS.SPOOLED_FILE_DATA(
JOB_NAME =>'193846/SLROMANO/QPADEV0009',
SPOOLED_FILE_NAME =>'QSYSPRT'))
ORDER BY ORDINAL_POSITION;
Bon à savoir
Pour trouver le travail et le fichier, interroger d'abord QSYS2.SPOOLED_FILE_INFO. Le droit de lire le fichier spoule est évidemment nécessaire.
Paramètres
| Paramètre | Type | Par défaut | Signification |
|---|---|---|---|
JOB_NAME |
VARCHAR(28) | obligatoire | Nom du travail |
SPOOLED_FILE_NAME |
VARCHAR(10) | 'QPJOBLOG' | Nom du fichier spoule |
SPOOLED_FILE_NUMBER |
VARCHAR(6) | '*LAST' | Numéro du fichier spoule |
IGNORE_ERRORS |
VARCHAR(3) | 'YES' | Ignorer les erreurs |
Colonnes renvoyées (2)
Afficher les 2 colonnes
| Colonne | Type | Signification |
|---|---|---|
ORDINAL_POSITION |
INTEGER | Position ordinale |
SPOOLED_DATA |
VARCHAR(378) | Données du fichier spoule |