1

在 CL 程序中,我将打印文件覆盖到 IFS 上的文件夹中;但是,我没有指定文件名,只是说明它是一个 PDF 文件。因此,当创建 PDF 时,系统会为其分配一个唯一的文件名。

在 RPGLE 程序中,我使用用户控件来打开和关闭文件;但是,我需要在 IFS 上创建的唯一文件名。

我认为使用 INFDS 可以获得此信息,但我看不到在哪里可以获得此信息。

如果我在错误的区域发帖或者我不应该出现在这个版块上,请告诉我。

汤姆

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                                 
4

2 回答 2

3

认为您需要使用Retrieve Referenced Objects (QP0LRRO) API

如本文所述,检索作业当前打开的 IFS 对象:显示文件使用信息

于 2015-10-28T20:18:07.380 回答
2

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
于 2015-10-29T19:34:45.523 回答