Anmelden

View Full Version : Jobname ändern



Seiten : [1] 2

sim
10-09-13, 12:03
Hallo,

von einer externen Software werden per Java, PDF Files konvertiert und auf der AS400 Spool Files erzeugt.

Soweit klappt auch alles.

Die Spoolfiles werden jedoch immer unter dem Jobnamen "QPRTJOB" erstellt.

D.h. wenn neue Spools hinzukommen erscheinen diese auch unter diesem Job.

Wir hätten dies aber gerne unter einem eigenen Jobnamen (also so wie beim sbmjob job (xyz_123) ....... )

So wie es aussieht klappt dies über Java nicht, da diese Statements nichts bewirken:

...
parms.setParameter( PrintObject.ATTR_JOBNAME, "name_job" );
...
SpooledFileOutputStream spool = new SpooledFileOutputStream( as, parms, pPrinterFile,
outq );
...

Gibt es eventuell einen Workaround oder Trick wie ich das evtl. selbst per PRG Programm oder CL hinbekommen kann oder gehts doch mit Java?

andreaspr@aon.at
10-09-13, 12:10
Hallo sim,
würde es nicht auch reichen wenn ihr eine eigene OUTQ erstellt und diese Spools dieser OUTQ zuweist?
Im nachhinein geht das mit CHGSPLFA.

lg Andreas

Fuerchau
10-09-13, 12:10
Von Java werden num mal Servicejobs in Anspruch genommen.
In diesem Fall halt der QPRTJOB.
Der Jobname ist da leider nicht änderbar.

Hier helfen dann wohl nur wieder Spool-API's, die den (ggf. AFP) Datenstrom auslesen und eine neue Spool erstellen.
Dies muss dann unter dem gewünschten User laufen.
Es gibt da wohl ein paar Freeware-Tools zum Kopieren von Spools.

Der Jobname ist aber doch nicht relevant.
Für die Berechtigung ist der User des Spools sowie die Berechtigung der OUTQ maßgebend.

sim
10-09-13, 12:16
Hallo sim,
würde es nicht auch reichen wenn ihr eine eigene OUTQ erstellt und diese Spools dieser OUTQ zuweist?
Im nachhinein geht das mit CHGSPLFA.

lg Andreas

Hallo Andreas,

das wäre theoretisch möglich geht aber aus folgenden Gründen nicht.

Man muss sich es so vorstellen das wir zum Beispiel
Job A haben mit 2 Spools, Job B mit 3 Spools und Job C mit 1 Spool

Job A + C ist für Mandant 4711 und kommt auf die OutQ O4711, Job B für Mandat B und kommt auf die OutQ O0815

Jetzt müsste man aber die Spools von Job A + C unterscheiden können.

Gut, das ginge über die Benutzerdaten oder evtl den Dateinamen, aber hier sind schon andere Dinge verschlüsselt.

Die Trennung der Spools nach Jobs / Jobnamen hatte bisher den Vorteil das unser Druckeroperator quasi einen Auftrag erhalten hat, er diesen nur im System suchen musste (ESC) mit 8 in den Job und dann dort die Spools drucken.

Da wir nun auf ein neues System umstellen soll natürlich das bewährte übernommen werden. Ansonsten dreht der Operator am Rad
;-)

sim
10-09-13, 12:20
Von Java werden num mal Servicejobs in Anspruch genommen.
In diesem Fall halt der QPRTJOB.
Der Jobname ist da leider nicht änderbar.

Hier helfen dann wohl nur wieder Spool-API's, die den (ggf. AFP) Datenstrom auslesen und eine neue Spool erstellen.
Dies muss dann unter dem gewünschten User laufen.
Es gibt da wohl ein paar Freeware-Tools zum Kopieren von Spools.

Der Jobname ist aber doch nicht relevant.
Für die Berechtigung ist der User des Spools sowie die Berechtigung der OUTQ maßgebend.

Hallo fuerchau,

wie ich Andreas bereits geschrieben habe sind nicht die Berechtigungen das Problem sonder die Abwicklung.

Bisher erzeugen wir die Spools selbst unter einem Job der vorher per SBMJOB übergeben wurde. (mit entsprechend gesetztem Jobnamen)

Zukünftig setzen wir eine externe Software für die Erzeugung des Outputs ein.

Aus diversen Gründen müssen die PDFs dann wieder zurück aufs System uind dort als Spool erzeugt werden.

Aus Anwendersicht wäre es eben von Vorteil wenn, wie bisher auch, die Spools von Job A in einem eigenen Job sind und nicht mit den Spools von Job B vermischt werden.

Wie sich aus der Vergangenheit gezeigt hat ist eine Vermischung der Spools von verschiedenen Druckaufträgen nicht sinnvoll.
:D


sim

Fuerchau
10-09-13, 12:29
Dann musst du für die Erstellung leider einen anderen Weg gehen.
Hier im Forum gibt es mehrere Beiträge zum Drucken von PDF's direkt auf der AS/400.

An den Einstellungen der Java-Servicejobs lässt sich leider nicht drehen.

Pikachu
10-09-13, 12:34
Falls der Befehl RUNJVA (oder JAVA) benutzt wird, kann man im Parameter JOB(Jobname) je Aufruf einen individuellen Jobnamen mitgeben.

Fuerchau
10-09-13, 12:38
Dies gilt aber nur für den Java-Job selber.
Druckfunktionen werden dann wieder vom QPRTJOB als Server übernommen.

Pikachu
10-09-13, 12:44
Das müßte man ausprobieren. Ein QPRTJOB für die Spoolfiles sollte eigentlich nur ins Spiel kommen, wenn der Jobbenutzer vom aktuellen Benutzer des Jobs abweicht (http://publib.boulder.ibm.com/infocenter/iseries/v5r3/index.jsp?topic=%2Frzalu%2Frzaluqprtjob.htm).

EFueloep
10-09-13, 12:51
Vielleicht hilft folgendes weiter:

Finding and Working with Spooled Files Generated under a QPRTJOB Job (http://www-912.ibm.com/s_dir/slkbase.nsf/1ac66549a21402188625680b0002037e/45751e5b298957558625713b0053b33e?OpenDocument&Highlight=2,qprtjob)