Pdf 如何从RPGLE程序中检索IFS文件名?

Pdf 如何从RPGLE程序中检索IFS文件名?,pdf,ibm-midrange,rpgle,control-language,ibm-ifs,Pdf,Ibm Midrange,Rpgle,Control Language,Ibm Ifs,在CL程序中,我将我的打印文件覆盖到IFS上的一个文件夹中;但是,我没有指定文件名,只是它将是一个PDF文件。因此,创建PDF时,系统将为其指定一个唯一的文件名 在RPGLE程序中,我使用用户控件打开和关闭文件;但是,我需要在IFS上创建的唯一文件名 我想使用INFDS我可以得到这些信息,但我不知道在哪里可以得到这些信息 如果我在错误的区域发帖,或者我不应该在这个板上,请让我知道 汤姆 CL计划- PGM OVRPRTF FILE(*PRTF) DEVTYPE(*AFPDS) PAGESI

在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
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                                 
RPGLE程序-

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
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                                 

我想你需要使用


要检索作业当前打开的IFS对象,如本文所述:

您需要使用


要检索作业当前打开的IFS对象(如本文所述):

IFS文件的名称在文件的INFD中不可用,但在格式化转储中可用。如果您不想使用Charles提到的API,您可以执行转储(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

IFS文件的名称在文件的INFD中不可用,但在格式化转储中可用。如果您不想使用Charles提到的API,您可以执行转储(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