View Full Version : OUTQ und Ausgabeprogramm
Hallo Forum,
wie kann ich ein Ausgabeprogramm in 2 Warteschlangen(OUTQ) verwenden ??
DANKE
Kannst du das Bitte etwas genauer erklären ?
Gruß
DVE :confused: :confused: :confused:
Am besten über 2 PRTF's die per OVRPRTF in die jeweilige OUTQ geleitet wird.
Oder, was ggf. einfacher ist, die PRTF als USROPN (UC) definieren, 2 mal drucken und jeweils vor dem Open einen OVRPRTF für die richtige OUTQ.
Vorausgesetz, Furchau hat mit seinem Ansatz recht.
1. OVRPTF PrinterFileName HOLD(*YES)
2. Aufruf des Printout Programmes
3. CRTPF QTEMP/DATNAM RCDLEN(Breite der Printerfile + 1) size(*NOMAX)
4. CPYSPLF PrinterFileName JOB(*) SPLFNBR(*LAST) TOFILE(QTEMP/DATNAM) CTLCHAR(*FCFC)
5. OVRPRTF PrinterFileName OUTQ(OUTQ1) CTLCHAR(*FCFC) HOLD(*NO)
6. CPYF FROMFILE(QTEMP/DatName)TOFILE(PrinterFileName)
/* Damit druckst du die Spoolfile in die erste OUTQ */
7. OVRPRTF PrinterFileName OUTQ(OUTQ2) CTLCHAR(*FCFC) HOLD(*NO)
8. CPYF FROMFILE(QTEMP/DatName)TOFILE(PrinterFileName)
/* Damit druckst du die Spoolfile in die zweite OUTQ */
Damit hast du ansatzweise ein Listverteilungsprogramm
Gruß
DVE
Und was machst du bei *AFPDS/*IPDS ?
"Dumm aus der Wäsche gucken" :D
Ich weiß noch nicht einmal genau was er machen will. Sollte es sich tatsächlich nur um einfache Druckdateien handeln, hat er eine einfache Alternative, oder ??
Gruß
DVE
PS
Anderseits, könnte er die Datei drucken und vorher mit OVRPRTF SAVE(*YES), nach dem Ducken sichern.
Über die altbekannte Druckapi, könnte er warten bis die Datei im Status SAV ist und über CHGSPLFA/RLSSPLF den Druck in die andere OUTQ starten.
Geht auch mit *AFPDS/*IPDS, oder ??
Lösung a)
Wenn das Druckprogramm nicht zu lange braucht, dann einfach 2x den Output erzeugen, jeweils einen spezifisdchen OVRPRTF davor und gut is.
Lösung b)
Den Druck erzeugen, immer mit HOLD(*YES) und SAVE(*YES), dann läuft ein "Druckverteiler" (habe ich selber mal so geschrieben) der über die OUTQ geht, den Druck in die eine OUTQ stellt, dann schaut, ob er gedruckt twurde, anschliessend CHGSPLFA OUTQ(OUTQ2) und RLSSPLF ausführen und damit erneut drucken. Kann bis zum Erbrechen für X Outq's wiederholt werden.
Bei uns wird das ganze dann noch in eine OUTQ für die Archivierung geschaufelt, falls notwendig.