|
Thank you Scott. Will try this ASAP. >>But, now I'm rambling... :) >> Any time I can learn something you can ramble all you want :) Jim >>-----Original Message----- >>From: rpg400-l-bounces@xxxxxxxxxxxx >>[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Scott Klement >>Sent: Wednesday, June 16, 2004 3:18 PM >>To: RPG programming on the AS400 / iSeries >>Subject: RE: Print RTF or XML from RPG >> >> >> >> >>Hi James, >> >>> Would you please explain how you got raw PS to attached printer. >>> >>> I could never get it to print directly. >>> >>> Had to write to IFS and then using PrintFile or >>Ghostscript to send >>> to printer defined as text/generic. >> >>I actually do write it to a stream file first, because I >>don't know at the time that the data is generated whether >>it's going to be sent to the printer or whether it's going to >>be e-mailed. >> >>If it's going to be e-mailed, I use the ps2pdf utility from >>Ghostscript to convert the data to a PDF document, and then I >>e-mail that. >> >>If it's going to be printed, I use the following code snippet: >> >>D wkBuf s 132A >> . >> . >> >> wwIn = open(peFileName : O_RDONLY); >> if (wwIn < 0); >> ... I put an error on the screen and abort if this happens ... >> endif; >> >> wwCmd = 'OVRPRTF FILE(QSYSPRT) DEVTYPE(*USERASCII) DEV(' + >> %trim(peDev) + ') OUTQ(' + %trim(peOutq) + ')'; >> QCMDEXC(wwCmd: %len(wwCmd)); >> >> open QSYSPRT; >> wkBuf = *ALLx'20'; >> >> dow (read(wwIn: %addr(wkBuf): %size(wkBuf)) > 0); >> except; >> wkBuf = *ALLx'20'; // x'20' = ASCII BLANK >> enddo; >> >> callp close(wwIn); >> close QSYSPRT; >> >> wwCmd = 'DLTOVR FILE(QSYSPRT)'; >> QCMDEXC(wwCmd: %len(wwCmd)); >> . >> . >>OQSYSPRT E >>O wkBuf 132 >> >>The key to the entire process ithe DEVTYPE(*USERASCII). This >>tells OS/400 to send the data to the printer as-is without >>any modification. >> >>As I mentioned before, this also means that you lose a lot of >>the features of the spooler. You can't view the document, or >>see how many pages it is, or print a page range. >> >>On the other hand, after doing a ps2pdf on the stream file, I >>can view it with Acrobat Reader, and print a page range from >>the PC if I want to -- just can't do it from OS/400. >> >>It's not a problem for me because the user is looking at a >>purchase order on the screen when he has the option to print >>it, and it prints the one PO, which is usually about a page >>long, sometimes two... so printing a page range isn't very >>useful in our case. PostScript works very well in this case. >> >>Plus, we have Hylafax running on a FreeBSD server (the same >>one that we use for Ghostscript/ps2pdf) and it's able to send >>a PostScript document as a fax... that way, anyone can fax a >>document directly from any 5250 terminal... >> >>But, now I'm rambling... :) >>
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.