PDA

View Full Version : Programname eines Message Wait Jobs



GerhardScheuren
14-01-16, 16:10
Ich analysiere grade den WRKACTJOB mit API und der Suche auf MSGW.
Das funktioniert gut.
Ich wüsste jetzt gern welches PGM in diesem Job auf Message wartet.
Hab das QWVRCSTK am Start. Das gibt mir den Stack des Programms. Aber wer ist jetzt das MSGW Programm. Seh ich mal wieder vor lauter Bäumen den Wald nicht oder ist das der falsche Ansatz? Hat das schon mal jemand gemacht?

andreaspr@aon.at
14-01-16, 16:25
Bei 7.1 und 7.2 und aktuellen PTFs kannst du das einfach mit einer SQL Funktion ermitteln:

select * from table(QSYS2.JOBLOG_INFO('999095/USER/JOBNAME')) T1

"WRKACTJOB" kannst du ebenfalls so lösen:

select * from table(QSYS2.ACTIVE_JOB_INFO()) T1

lg Andreas

Fuerchau
14-01-16, 17:46
Die Stackinfo ist schon der richtige Ansatz.
Aber du musst dich vom Stack "hocharbeiten" um das 1. Programm zu finden, dass ggf. nicht mit "Q" anfängt und/oder nicht in der QSYS ist.
Bei Systemprogrammen (Spooler) funktioniert dies ja nun nicht, aber die kann man ggf. erkennen (alles aus QSYS, dann ist es ggf. der oberste Eintrag) und ausschließen.

Die beiden SQL-Funktionen sind nur Wrapper für die API's die den Aufruf vereinfachen.

BenderD
14-01-16, 19:17
... ich würde da lieber den Aufwand dahingehend konzentrieren, dass da nix einfach hängenbleibt...

GerhardScheuren
15-01-16, 10:28
super Danke!
So sollte es funktionieren.
Das mit dem SQL wäre die finale Lösung, aber ich muss leider noch V5R4 berücksichtigen.
(Ich weiss Steinzeit. Aber das liegt außerhalb meines Einflussbereichs.)
Ich hab mir schon gedacht, dass ich das mit dem hochhangeln so mache. Aber was ich mit dem API nicht gesehen hab, und was man im SQL super sieht ist, ist die korrekte Zeile über die Spalte MESSA00002. Im konkreten Fall 4)
ich habs mal hier rein fotografiert
ORDIN00001 MESSAGE_ID MESSA00001 MESSA00002 SEVERITY MESSA00003 FROM_00001 FROM_00002
1 CPF1124 INFORMATIONAL 0 2016-01-14-17.19.52.515283 QSYS QWTPIIPP
2 CPI1125 INFORMATIONAL 0 2016-01-14-17.19.52.515734 QSYS QWTPCRJA
3 - REQUEST 0 2016-01-14-17.19.52.515970 - QWTSCSBJ
4 MCH1211 ESCAPE EXCEPTION HANDLED 40 2016-01-14-17.19.52.553907 EDVSCHEURE TEST
5 CPF9999 ESCAPE EXCEPTION NOT HANDLED 40 2016-01-14-17.19.52.554032 - QMHUNMSG
6 RNQ0102 SENDER 99 2016-01-14-17.19.52.554210 QSYS QRNXIE