Sample CL for using SPLIFORM command - Support

Sample CL for using SPLIFORM command

From Support

Jump to: navigation, search

This sample CL will apply the form to the spool file, and output the result as a PDF into an IFS folder that has spacess in the folder path.

             DCL        VAR(&SPOOL) TYPE(*CHAR) LEN(10)     
             DCL        VAR(&RJSXML) TYPE(*CHAR) LEN(200)   
             DCL        VAR(&JRXML) TYPE(*CHAR) LEN(200)    
             DCL        VAR(&OUTPUTIFS) TYPE(*CHAR) LEN(255)
             DCL        VAR(&IFMOUTPUT) TYPE(*CHAR) LEN(255)
                                                            
/******************************************************/    
/* TODO - GENERATE REPORT FIRST                       */                
/* THIS EXAMPLE ASSUMES THAT THE SPOOL                */                
/* FILE NAME WILL BE:INVOICE.                         */                
/******************************************************/    
         /*  CALL       PGM(REPORTGEN) */                   
                                                            
/******************************************************/    
/* CALL SPLIFORM TO CONVERT REPORT TO ELECTRONIC FORM */    
/* USE *AUTOGEN BECAUSE THE FINAL FILE NEEDS          */    
/* TO HAVE A SPACE IN THE NAME SO WE WILL COPY THE    */    
/* AUTO GENERATED FILE TO ITS FINAL LOCATION.         */    
/******************************************************/               
                                                                       
             /* Set iForms Template and Spool File Name Info */        
             CHGVAR     VAR(&SPOOL) VALUE(INVOICE)                     
             CHGVAR     VAR(&JRXML) VALUE('/RJSIFORMS/INVOICE.JRXML')  
             CHGVAR     VAR(&RJSXML) VALUE('/RJSIFORMS/INVOICE.RJSXML')
                                                                       
             /* Set Desired Final Output IFS File Name */              
             CHGVAR     VAR(&OUTPUTIFS) VALUE('/RJSIFORMS/ACCOUNTS +   
                          PAYABLE/INVOICE.PDF')                        
                                                                       
             /* Generate iForm PDF from last spool file */             
             SPLIFORM   FILE(&SPOOL) JOB(*) SPLNBR(*LAST) +            
                          TEMPLATE(&JRXML) XMLDEFFILE(&RJSXML) +       
                          OUTPUTFILE(*AUTOGEN) OUTPUTTYPE(PDF)         
             /* Get *AUTOGEN name from data area */                    
             RTVDTAARA  DTAARA(QTEMP/IFMOUTPUT) RTNVAR(&IFMOUTPUT)     
                                                                       
             /* Copy PDF to final file location */        
             CPY        OBJ(&IFMOUTPUT) TOOBJ(&OUTPUTIFS) +          
                          DTAFMT(*BINARY) REPLACE(*NO) OWNER(*NEW)   
                                                                     
             /* Change IFS Authorities as needed.  We give *PUBLIC */
             /* *ALL authority in thie example.                    */
             CHGAUT     OBJ(&OUTPUTIFS) USER(*PUBLIC) DTAAUT(*RWX) + 
                          OBJAUT(*ALL)                               
                                                                     
             /* Clean up auto generated PDF file after copy */       
             /* The auto gen file gets created in lib RJSTEMP */     
             ERASE      OBJLNK(&IFMOUTPUT)                           
                                                                     
             /* Clean up spool file if desired.             */       
             DLTSPLF    FILE(&SPOOL) JOB(*) SPLNBR(*LAST)            
                                                                     
             RETURN                                                  
                                                                     
ERRORS:                                                              
             SNDPGMMSG  MSGID(CPF9898) MSGF(QCPFMSG) MSGDTA('Errors +
                          occurred while generating iForm document. +   
                          Please check the joblog') MSGTYPE(*ESCAPE)
Personal tools