Service SQL IBM i (AS/400) · Fonction table
QSYS2.JOB_INFO
Travaux du système, tous états confondus
Liste les travaux du système (actifs, en attente dans une file, terminés avec spoule) avec leur statut, leur sous-système et leurs dates.
À quoi ça sert
La fonction de table renvoie une ligne par travail avec une soixantaine de colonnes : nom qualifié du travail et ses trois composantes, statut, type, sous-système, date du travail, description de travail, code de comptabilité, travail émetteur, etc. Elle couvre aussi les travaux qui ne sont pas actifs, par exemple ceux qui attendent dans une file d'attente des travaux, ce que ACTIVE_JOB_INFO ne montre pas.
Six paramètres de filtre limitent le volume et accélèrent la requête : JOB_STATUS_FILTER, JOB_TYPE_FILTER, JOB_SUBSYSTEM_FILTER, JOB_USER_FILTER (par défaut l'utilisateur courant), JOB_SUBMITTER_FILTER et JOB_NAME_FILTER (par défaut *ALL pour les autres). L'exemple d'IBM utilise JOB_STATUS_FILTER => '*JOBQ' pour repérer les travaux planifiés pour le lendemain.
Elle sert à retrouver un travail, qu'il soit en file, actif ou terminé, et à le décrire dans une requête que l'on peut trier, regrouper ou joindre à d'autres services, ce que WRKUSRJOB et WRKJOB ne permettent pas.
Résultat réel sur un IBM i 7.5
Ce que nous avons exécuté :
SELECT * FROM TABLE(QSYS2.JOB_INFO(JOB_STATUS_FILTER => '*ACTIVE', JOB_USER_FILTER => 'QSYS')) X
Ce que l'IBM i a renvoyé le 01/10/2026 (5 lignes au plus) :
| JOB_NAME Nom du travail | JOB_NAME_SHORT Nom court du travail | JOB_USER Profil utilisateur du travail | JOB_NUMBER Numéro du travail | JOB_INFORMATION Informations sur le travail | JOB_STATUS Statut du travail | JOB_TYPE Type de travail | JOB_TYPE_ENHANCED Type de travail (détaillé) | JOB_SUBSYSTEM Sous-système du travail | JOB_DATE Date du travail | JOB_DESCRIPTION_LIBRARY Bibliothèque de la description de travail | JOB_DESCRIPTION Description de travail | JOB_ACCOUNTING_CODE Code de comptabilisation du travail | SUBMITTER_JOB_NAME Nom du travail émetteur | SUBMITTER_MESSAGE_QUEUE_LIBRARY Bibliothèque de la file d'attente de messages de l'émetteur | SUBMITTER_MESSAGE_QUEUE File d'attente de messages de l'émetteur | SERVER_TYPE Type de serveur | JOB_ENTERED_SYSTEM_TIME Horodatage d'entrée du travail dans le système | JOB_SCHEDULED_TIME Horodatage planifié du travail | JOB_ACTIVE_TIME Horodatage d'activation du travail | JOB_END_TIME Horodatage de fin du travail | JOB_END_SEVERITY Gravité de fin du travail | COMPLETION_STATUS Statut de fin | JOB_END_REASON Raison de la fin du travail | JOB_QUEUE_LIBRARY Bibliothèque de la file d'attente des travaux | JOB_QUEUE_NAME Nom de la file d'attente des travaux | JOB_QUEUE_STATUS Statut de la file d'attente des travaux | JOB_QUEUE_PRIORITY Priorité dans la file d'attente des travaux | JOB_QUEUE_TIME Horodatage d'entrée dans la file d'attente des travaux | JOB_MESSAGE_QUEUE_MAXIMUM_SIZE Taille maximale de la file de messages du travail | JOB_MESSAGE_QUEUE_FULL_ACTION Action en cas de file de messages du travail pleine | ALLOW_MULTIPLE_THREADS Unités d'exécution multiples autorisées | PEAK_TEMPORARY_STORAGE Pic de stockage temporaire | DEFAULT_WAIT Délai d'attente par défaut | MAXIMUM_PROCESSING_TIME_ALLOWED Temps de traitement maximal autorisé | MAXIMUM_TEMPORARY_STORAGE_ALLOWED Stockage temporaire maximal autorisé | TIME_SLICE Tranche de temps | JOB_SWITCHES Commutateurs du travail | ROUTING_DATA Données d'acheminement | CCSID CCSID | CHARACTER_IDENTIFIER_CONTROL Contrôle des identificateurs de caractères | SORT_SEQUENCE_LIBRARY Bibliothèque de la séquence de tri | SORT_SEQUENCE_NAME Nom de la séquence de tri | LANGUAGE_ID Identifiant de langue | COUNTRY_ID Identifiant du pays | DATE_FORMAT Format de date | DATE_SEPARATOR Séparateur de date | TIME_SEPARATOR Séparateur d'heure | DECIMAL_FORMAT Format décimal | TIME_ZONE_DESCRIPTION_NAME Nom de la description du fuseau horaire | MESSAGE_LOGGING_LEVEL Niveau de journalisation des messages | MESSAGE_LOGGING_SEVERITY Gravité de journalisation des messages | MESSAGE_LOGGING_TEXT Texte de journalisation des messages | LOG_CL_PROGRAM_COMMANDS Journalisation des commandes des programmes CL | STATUS_MESSAGE Message de statut | INQUIRY_MESSAGE_REPLY Réponse aux messages d'interrogation | BREAK_MESSAGE Message d'interruption | JOB_LOG_OUTPUT Traitement de l'historique du travail | JOB_LOG_PENDING Historique du travail en attente | OUTPUT_QUEUE_PRIORITY Priorité de sortie des fichiers spoule | OUTPUT_QUEUE_LIBRARY Bibliothèque de la file d'attente de sortie | OUTPUT_QUEUE_NAME Nom de la file d'attente de sortie | SPOOLED_FILE_ACTION Action sur les fichiers spoule | PRINTER_DEVICE_NAME Nom de l'unité d'impression | PRINT_KEY_FORMAT Format de la touche d'impression | PRINT_TEXT Texte d'impression | DEVICE_NAME Nom de l'unité | DEVICE_RECOVERY_ACTION Action de reprise sur l'unité | DDM_CONVERSATION Conversation DDM | MODE_NAME Nom du mode | UNIT_OF_WORK_ID Identifiant de l'unité de travail | INTERNAL_JOB_ID Identifiant interne du travail |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 000000/QSYS/SCPF | SCPF | QSYS | 000000 | YES | ACTIVE | SYS | SYSTEM | NULL | 2026-06-06 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | 2026-06-06 18:52:34 | NULL | 2026-06-06 18:52:34 | NULL | 10 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NO | 72 | 4 | NULL | NULL | 1000 | NULL | NULL | 65535 | *DEVD | NULL | *HEX | FRA | FR | *DMY | / | : | J | QP0100CET2 | 4 | 0 | *SECLVL | *NO | *NORMAL | *SYSRPYL | *NORMAL | *JOBEND | NO | 5 | NULL | *DEV | *KEEP | PRT01 | *NONE | NULL | NULL | NULL | *KEEP | NULL | NULL | 000E000100001300AF6975F6A042E001 |
| 801895/QSYS/QSYSARB | QSYSARB | QSYS | 801895 | YES | ACTIVE | SYS | SYSTEM | NULL | 2026-06-06 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | 2026-06-06 18:52:48 | NULL | 2026-06-06 18:52:53 | NULL | 10 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NO | 7 | 4 | NULL | NULL | 1000 | NULL | NULL | 65535 | *DEVD | NULL | *HEX | FRA | FR | *DMY | / | : | J | QP0100CET2 | 4 | 0 | *SECLVL | *NO | *NORMAL | *SYSRPYL | *NORMAL | *JOBEND | NO | 5 | NULL | *DEV | *KEEP | PRT01 | *NONE | NULL | NULL | NULL | *KEEP | NULL | NULL | 000E000100001700AF697603D3C10001 |
| 801896/QSYS/QSYSARB2 | QSYSARB2 | QSYS | 801896 | YES | ACTIVE | SYS | SYSTEM | NULL | 2026-06-06 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | 2026-06-06 18:52:48 | NULL | 2026-06-06 18:52:53 | NULL | 10 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NO | 6 | 4 | NULL | NULL | 1000 | NULL | NULL | 65535 | *DEVD | NULL | *HEX | FRA | FR | *DMY | / | : | J | QP0100CET2 | 4 | 0 | *SECLVL | *NO | *NORMAL | *SYSRPYL | *NORMAL | *JOBEND | NO | 5 | NULL | *DEV | *KEEP | PRT01 | *NONE | NULL | NULL | NULL | *KEEP | NULL | NULL | 000E000100001B00AF697603D5440001 |
| 801897/QSYS/QSYSARB3 | QSYSARB3 | QSYS | 801897 | YES | ACTIVE | SYS | SYSTEM | NULL | 2026-06-06 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | 2026-06-06 18:52:48 | NULL | 2026-06-06 18:52:48 | NULL | 10 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NO | 6 | 4 | NULL | NULL | 1000 | NULL | NULL | 65535 | *DEVD | NULL | *HEX | FRA | FR | *DMY | / | : | J | QP0100CET2 | 4 | 0 | *SECLVL | *NO | *NORMAL | *SYSRPYL | *NORMAL | *JOBEND | NO | 5 | NULL | *DEV | *KEEP | PRT01 | *NONE | NULL | NULL | NULL | *KEEP | NULL | NULL | 000E000100001F00AF697603D5D1D001 |
| 801898/QSYS/QSYSARB4 | QSYSARB4 | QSYS | 801898 | YES | ACTIVE | SYS | SYSTEM | NULL | 2026-06-06 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | 2026-06-06 18:52:48 | NULL | 2026-06-06 18:52:53 | NULL | 10 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NO | 7 | 4 | NULL | NULL | 1000 | NULL | NULL | 65535 | *DEVD | NULL | *HEX | FRA | FR | *DMY | / | : | J | QP0100CET2 | 4 | 0 | *SECLVL | *NO | *NORMAL | *SYSRPYL | *NORMAL | *JOBEND | NO | 5 | NULL | *DEV | *KEEP | PRT01 | *NONE | NULL | NULL | NULL | *KEEP | NULL | NULL | 000E000100002300AF697603D6741001 |
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
Passer en revue les travaux planifiés pour s'exécuter demain.
-- Description: Review jobs that are scheduled to run tomorrow
SELECT *
FROM TABLE(qsys2.job_info(job_status_filter => '*JOBQ')) x
WHERE job_scheduled_time BETWEEN DATE(CURRENT TIMESTAMP + 1 DAY)
AND DATE(CURRENT TIMESTAMP + 2 DAYS)
ORDER BY job_scheduled_time ;
Bon à savoir
Par défaut, le filtre JOB_USER_FILTER restreint à l'utilisateur courant : pour voir les travaux de tout le monde, passe explicitement '*ALL'. Donne aussi un filtre d'état ou de sous-système pour que la requête reste rapide.
Paramètres
| Paramètre | Type | Par défaut | Signification |
|---|---|---|---|
JOB_STATUS_FILTER |
VARCHAR(10) | '*ALL' | Filtre sur le statut du travail |
JOB_TYPE_FILTER |
VARCHAR(10) | '*ALL' | Filtre sur le type de travail |
JOB_SUBSYSTEM_FILTER |
VARCHAR(10) | '*ALL' | Filtre sur le sous-système du travail |
JOB_USER_FILTER |
VARCHAR(10) | USER | Filtre sur le profil utilisateur du travail |
JOB_SUBMITTER_FILTER |
VARCHAR(10) | '*ALL' | Filtre sur l'émetteur du travail |
JOB_NAME_FILTER |
VARCHAR(10) | '*ALL' | Filtre sur le nom du travail |
Colonnes renvoyées (72)
Afficher les 72 colonnes
| Colonne | Type | Signification |
|---|---|---|
JOB_NAME |
VARCHAR(28) | Nom du travail |
JOB_NAME_SHORT |
VARCHAR(10) | Nom court du travail |
JOB_USER |
VARCHAR(10) | Profil utilisateur du travail |
JOB_NUMBER |
VARCHAR(6) | Numéro du travail |
JOB_INFORMATION |
VARCHAR(12) | Informations sur le travail |
JOB_STATUS |
VARCHAR(6) | Statut du travail |
JOB_TYPE |
VARCHAR(3) | Type de travail |
JOB_TYPE_ENHANCED |
VARCHAR(28) | Type de travail (détaillé) |
JOB_SUBSYSTEM |
VARCHAR(10) | Sous-système du travail |
JOB_DATE |
VARCHAR(10) | Date du travail |
JOB_DESCRIPTION_LIBRARY |
VARCHAR(10) | Bibliothèque de la description de travail |
JOB_DESCRIPTION |
VARCHAR(10) | Description de travail |
JOB_ACCOUNTING_CODE |
VARCHAR(15) | Code de comptabilisation du travail |
SUBMITTER_JOB_NAME |
VARCHAR(28) | Nom du travail émetteur |
SUBMITTER_MESSAGE_QUEUE_LIBRARY |
VARCHAR(10) | Bibliothèque de la file d'attente de messages de l'émetteur |
SUBMITTER_MESSAGE_QUEUE |
VARCHAR(10) | File d'attente de messages de l'émetteur |
SERVER_TYPE |
VARCHAR(30) | Type de serveur |
JOB_ENTERED_SYSTEM_TIME |
TIMESTAMP | Horodatage d'entrée du travail dans le système |
JOB_SCHEDULED_TIME |
TIMESTAMP | Horodatage planifié du travail |
JOB_ACTIVE_TIME |
TIMESTAMP | Horodatage d'activation du travail |
JOB_END_TIME |
TIMESTAMP | Horodatage de fin du travail |
JOB_END_SEVERITY |
SMALLINT | Gravité de fin du travail |
COMPLETION_STATUS |
VARCHAR(8) | Statut de fin |
JOB_END_REASON |
VARCHAR(60) | Raison de la fin du travail |
JOB_QUEUE_LIBRARY |
VARCHAR(10) | Bibliothèque de la file d'attente des travaux |
JOB_QUEUE_NAME |
VARCHAR(10) | Nom de la file d'attente des travaux |
JOB_QUEUE_STATUS |
VARCHAR(9) | Statut de la file d'attente des travaux |
JOB_QUEUE_PRIORITY |
SMALLINT | Priorité dans la file d'attente des travaux |
JOB_QUEUE_TIME |
TIMESTAMP | Horodatage d'entrée dans la file d'attente des travaux |
JOB_MESSAGE_QUEUE_MAXIMUM_SIZE |
SMALLINT | Taille maximale de la file de messages du travail |
JOB_MESSAGE_QUEUE_FULL_ACTION |
VARCHAR(8) | Action en cas de file de messages du travail pleine |
ALLOW_MULTIPLE_THREADS |
VARCHAR(3) | Unités d'exécution multiples autorisées |
PEAK_TEMPORARY_STORAGE |
INTEGER | Pic de stockage temporaire |
DEFAULT_WAIT |
INTEGER | Délai d'attente par défaut |
MAXIMUM_PROCESSING_TIME_ALLOWED |
INTEGER | Temps de traitement maximal autorisé |
MAXIMUM_TEMPORARY_STORAGE_ALLOWED |
INTEGER | Stockage temporaire maximal autorisé |
TIME_SLICE |
INTEGER | Tranche de temps |
JOB_SWITCHES |
CHAR(8) | Commutateurs du travail |
ROUTING_DATA |
VARCHAR(80) | Données d'acheminement |
CCSID |
INTEGER | CCSID |
CHARACTER_IDENTIFIER_CONTROL |
VARCHAR(9) | Contrôle des identificateurs de caractères |
SORT_SEQUENCE_LIBRARY |
VARCHAR(10) | Bibliothèque de la séquence de tri |
SORT_SEQUENCE_NAME |
VARCHAR(10) | Nom de la séquence de tri |
LANGUAGE_ID |
CHAR(3) | Identifiant de langue |
COUNTRY_ID |
CHAR(2) | Identifiant du pays |
DATE_FORMAT |
CHAR(4) | Format de date |
DATE_SEPARATOR |
CHAR(1) | Séparateur de date |
TIME_SEPARATOR |
CHAR(1) | Séparateur d'heure |
DECIMAL_FORMAT |
VARCHAR(6) | Format décimal |
TIME_ZONE_DESCRIPTION_NAME |
VARCHAR(10) | Nom de la description du fuseau horaire |
MESSAGE_LOGGING_LEVEL |
SMALLINT | Niveau de journalisation des messages |
MESSAGE_LOGGING_SEVERITY |
SMALLINT | Gravité de journalisation des messages |
MESSAGE_LOGGING_TEXT |
VARCHAR(7) | Texte de journalisation des messages |
LOG_CL_PROGRAM_COMMANDS |
VARCHAR(4) | Journalisation des commandes des programmes CL |
STATUS_MESSAGE |
VARCHAR(7) | Message de statut |
INQUIRY_MESSAGE_REPLY |
VARCHAR(8) | Réponse aux messages d'interrogation |
BREAK_MESSAGE |
VARCHAR(7) | Message d'interruption |
JOB_LOG_OUTPUT |
VARCHAR(10) | Traitement de l'historique du travail |
JOB_LOG_PENDING |
VARCHAR(3) | Historique du travail en attente |
OUTPUT_QUEUE_PRIORITY |
SMALLINT | Priorité de sortie des fichiers spoule |
OUTPUT_QUEUE_LIBRARY |
VARCHAR(10) | Bibliothèque de la file d'attente de sortie |
OUTPUT_QUEUE_NAME |
VARCHAR(10) | Nom de la file d'attente de sortie |
SPOOLED_FILE_ACTION |
VARCHAR(7) | Action sur les fichiers spoule |
PRINTER_DEVICE_NAME |
VARCHAR(10) | Nom de l'unité d'impression |
PRINT_KEY_FORMAT |
VARCHAR(7) | Format de la touche d'impression |
PRINT_TEXT |
VARCHAR(30) | Texte d'impression |
DEVICE_NAME |
VARCHAR(10) | Nom de l'unité |
DEVICE_RECOVERY_ACTION |
VARCHAR(13) | Action de reprise sur l'unité |
DDM_CONVERSATION |
VARCHAR(5) | Conversation DDM |
MODE_NAME |
VARCHAR(8) | Nom du mode |
UNIT_OF_WORK_ID |
CHAR(24) | Identifiant de l'unité de travail |
INTERNAL_JOB_ID |
BINARY(16) | Identifiant interne du travail |