1

我需要使用 IBM i 系统。该任务包括将存储的文件(PCL 格式)存储到 IFS 并将其(完全二进制)复制到输出队列。

为此,我遵循 4 个步骤:

1) Create a FILE in QTEMP.
2) Copy IFS file to the file in QTEMP.
3) Create a Printer File linked to a Output Queue
4) Copy the QTEMP file to Printer File.

但是在第二步中,文件似乎被系统截断了。

有谁知道如何复制流文件而不被截断?

我运行的命令如下:

1) CRTPF QTEMP/IFSFILETP RCDLEN(8201) MBR(IFSFILETP) LVLCHK(*NO)
2) CPYFRMSTMF FROMSTMF([IFS_FILE_PATH]) TOMBR('/QSYS.LIB/QTEMP.LIB/IFSFILETP.FILE/IFSFILETP.MBR') MBROPT(*REPLACE) CVTDTA(*NONE) ENDLINFMT(*FIXED) TABEXPN(*NO)
3) CRTPRTF FILE(QTEMP/PRINTFILE) DEVTYPE(*USERASCII) OUTQ(MYLIBRARY/MYOUTPUTQUEUE)
4) CPYF FROMFILE(QTEMP/IFSFILETP) TOFILE(QTEMP/PRINTFILE)

谢谢!

4

1 回答 1

0

我手边没有 PCL 文件,但试试这样的

QSH CMD('cat -c [IFS_FILE_PATH] | Rfile -wbQ -c "ovrprtf qprint outq(mylibrary/myoutputqueue) devtype(*userascii)" qprint')

这个想法是完全绕过复制到中间 QSYS.LIB 文件。 Rfile是 IBM i 独有的。

于 2012-08-21T14:37:01.387 回答