PDA

View Full Version : QSPLJOB entfernen



Seiten : [1] 2

RaMai
07-09-05, 15:11
Wir haben das Problem das bei einem User ein doppelter QSPLJOB gefunden wird.
Allerdings kann ich weder den Job noch irgendwelche Spoolfiles des Users finden.
Ich gehe davon aus daß der Job falsch abgebrochen wurde, ohne LOGLMT 0 und SPLF *Yes.
Hat jemand eine Idee wie ich diesen Job restlos aus dem System bekomme? Angeblich wurde schon ein IPL durchgeführt, allerdings hat auch das das Problem nicht gelöst.

Vielen Dank!

Fuerchau
07-09-05, 15:15
QSPLJOB's sind WTR-Jobs. Der Name des Jobs ist die Druckwarteschlange oder das Device.
Also etsprechend ENDWTR für den Job ausführen.

RaMai
29-09-05, 08:24
QSPLJOB's sind WTR-Jobs. Der Name des Jobs ist die Druckwarteschlange oder das Device.
Also etsprechend ENDWTR für den Job ausführen.
Hallo Fuerchau,
danke für den Tip.
Das Problem hat sich mittlerweile durch einen IPL erledigt.
Allerdings arbeitet das systemhaus das unsere Software verbrochen hat an einer Lösung das zukünftig zu vermeiden.
Dummerweise habe ich hier von QSPLJOB gesprochen, der Job um den es geht (der bei dem User doppelt vorhanden war) ist ein QPRTJOB.
Das System sagt mir zwar daß der Job nicht mehr im System ist, allerdings bekomme ich andererseits die Meldung "duplicate" für den QPRTJOB.
Also nochmal meine Frage wie bringe ich so ein ding restlos aus dem System.
Aufgetreten ist es da in der Lösung des Sofwarehauses die Spoolnumber abgefragt wird, die Variable dafür aber zu klein ist. Wenn also die Nummer über 9999 ist findet das PGM die Spooldatei nicht mehr.
Behoben haben wir das durch
ENDJOB auf den entsprechenden QPRTJOB, mit SPLFILE *YES und LOGLMT 0
anschließend haben wir alle spools des users gelöscht. Dadurch wurde ein neuer QPRTJOB submitted.
Anscheinend wurde der befehl bei o.g. Problem falsch abgesetzt. Ein IPL wird aber nur am Wochenende durchgeführt, d. h. wenn dieser Fehler am Montag auftritt kann der User die ganze Woche nicht drucken - was natürlich sehr unangenehm ist.
Any idea?
Danke im voraus!

Fuerchau
29-09-05, 09:44
Normalerweise verschwindet ein QPRTJOB (wie alle anderen auch), wenn KEIN Spool mehr vorhanden ist (sieht mir übrigens nach DCW aus).

Übrigens:
QMAXSPLF steuert, ob mehr als 9999 Spools zulässig sind.
QRCLSPLSTG steuert, wann leere Spools freigegeben werden und somit Job's auch tatsächlich verschwinden. Mit RCLSPLSTG kann man das manuell forcieren.

RaMai
29-09-05, 10:32
Normalerweise verschwindet ein QPRTJOB (wie alle anderen auch), wenn KEIN Spool mehr vorhanden ist (sieht mir übrigens nach DCW aus).

Übrigens:
QMAXSPLF steuert, ob mehr als 9999 Spools zulässig sind.
QRCLSPLSTG steuert, wann leere Spools freigegeben werden und somit Job's auch tatsächlich verschwinden. Mit RCLSPLSTG kann man das manuell forcieren.
Und nochmal Danke.
Ich weiß noch nicht ob mir das wirklich weiter hilft, allerdings kann ich so tun als würde ich mich auskennen ;-)
Ich glaube irgendwo gelesen zu haben das früher 9999 das maximum an spools war und dies erst bei V5R2 auf 999999 erhöht wurde.

TARASIK
29-09-05, 10:56
Hallo,
wenn Du mir über private Nachrichten Deine Emailaddresse
schickst, sende ich Dir ein Dokument zum Resetten der
Number of QPRTJOB.

Fuerchau
29-09-05, 11:13
Solange man den Systemwert QMAXSPLF nicht angepasst hat, bleibt er auf 9999 stehen.

TARASIK
29-09-05, 11:18
Hallo,
also mit diesem Dokument wird beschrieben "The following steps can be used to reset the QPRTJOB spooled file member number to 1."
Es ist leider ein geschütztes Dokument, deshalb kann ich es
nicht so einfach hier posten.

Fuerchau
29-09-05, 11:51
Du kannst aber Textauszüge einfach per Copy/Paste ins Forum übernehmen. Das machen andere ja auch.

steinkohl
04-10-05, 12:22
Hallo zusammen,

das beschriebene Problem habe ich auch.

Einige Spoolfiles werden bei uns über einen asynchronen Job erstellt, weshalb die Spoolfiles als Jobnamen dann QPRTJOB haben. Weiterhin wird auch der aktuelle Benutzer dieses asynchr. Jobs immer verändert, damit die erzeugten Spoolfiles auch beim jeweiligen User mit WRKSPLF sichtbar sind. Die Jobnummer ist dann aber nicht die des asynchronen Job's (der das Spoolfile letztendlich erzeugt hat) sondern die Jobnummer des QPRTJOB's für den jeweiligen Benutzer. Man konnte im nachfolgenden Programmverlauf des asynchronen Jobs das erzeugte Spoolfile jedoch mit QPRTJOB/Benutzer und ohne Jobnummer ansprechen.

Jetzt gibt es aber den QPRTJOB für einen User doppelt, weshalb das Programm auf MSGW läuft.

Hat jedmand eine Idee, wie man den zweiten QPRTJOB für einen User killed bzw. dafür sorgen kann, daß dieser gar nicht entsteht ??

Vielen Dank für Unterstützung im Voraus.

mfg
steinkohl