在CL程序中,我将打印文件覆盖到IFS上的一个文件夹中;然而,我并没有指定文件名,只是说它将是一个PDF文件。因此,当创建PDF时,系统将为其分配一个唯一的文件名。
在RPGLE程序中,我使用用户控制打开和关闭文件;但是,我需要在IFS上创建唯一的文件名。
我以为使用INFDS我可以得到这些信息,但我不知道从哪里可以得到这些消息。
如果我在错误的区域发帖,或者我不应该在这个板上,请告诉我。
Tom
CL程序–
PGM
OVRPRTF FILE(*PRTF) DEVTYPE(*AFPDS) PAGESIZE(11 8.5 +
*UOM) FRONTMGN(0 .25) PAGRTT(0) +
PRTTXT(*BLANK) UOM(*INCH) +
TOSTMF('/TN/') WSCST(*PDF)
CALL PGM(IF010R)
DLTOVR FILE(*PRTF)
ENDPGM
RPGLE程序–
fqsysprt o f 132 printer oflind(*inof) usropn
*
c z-add 1 x 1 0
c x dowle 5
*
c open qsysprt
c except prtdtl
c close qsysprt
*
c add 1 x
c enddo
*
c move *on *inlr
*
**********************************************************************
*
oqsysprt e prtdtl 1 10
o 10 'Test:'
o x j 15
认为您需要使用检索引用对象(QP0LRRO)API
如本文所述,检索作业当前打开的IFS对象:Display File Usage Information
IFS文件的名称在文件的INFDS中不可用,但在格式化的转储中可用。如果您不想使用Charles提到的API,您可以执行DUMP(a)操作码,然后通读QPPGMDMP列表,首先找到关于您的文件的部分,然后在该部分中找到"Spool-file"行。
...
ILE RPG FORMATTED DUMP
INFDS FILE FEEDBACK
File . . . . . . . . . . . : QPRINT
File Open . . . . . . . . : YES
File at EOF . . . . . . . : NO
...
OPEN FEEDBACK
ODP type . . . . . . . . . : ST
File Name . . . . . . . . : QPRINT
Library . . . . . . . . : QGPL
Member . . . . . . . . . . :
'00000000000000000000'X
Spool File . . . . . . . . : /home/mydir/QPRINTrQpJ$7.pdf