classAnova - Knowledge Shared


Posted by: Bob Cozzi
IT Researcher
Cozzi Productions, Inc.
North Aurora, IL
Deleting IFS Files in RPG IV
has no ratings.
Published: 08 Feb 2011
Revised: 04 Aug 2011 - 4643 days ago
Last viewed on: 20 Apr 2024 (13493 views) 

Using IBM i? Need to create Excel, CSV, HTML, JSON, PDF, SPOOL reports? Learn more about the fastest and least expensive tool for the job: SQL iQuery.

Deleting IFS Files in RPG IV Published by: Bob Cozzi on 08 Feb 2011 view comments

The UNLINK API can be used from RPG IV to remove files from the IFS. The IFS is the stream file system of the IBM i operating system.

Syntax Diagram

return-code = unlink( ifs-file )

The following example illustrates unlink() being used in an RPG IV program. Note that control statements in this example allow it to be compiled at any release level of the IBM i operating system.

      /IF DEFINED(*V6R1M0)                                        
     H MAIN(DLTIFS)                                               
      /ELSE                                                       
     H BNDDIR('QC2LE')                                            
      /ENDIF                                                      
     H DFTACTGRP(*NO)  BNDDIR('RPGOPEN/RPGOPEN')                  
      /INCLUDE rpgopen/qcpysrc,joblog                             
                                                                  
     D DLTIFS          PR                  EXTPGM('DLTIFS')       
                                                                  
     D unlink          PR            10I 0 extProc('unlink')      
     D  ifsFile                        *   VALUE OPTIONS(*STRING) 
                                                                  
      /IF DEFINED(*V6R1M0)                                        
     P dltIFS          B                                          
      /endif                                                      
                                                                  
     D dltIFS          PI                                         

     D oldFile         S            640A                      
                                                              
      /IF NOT DEFINED(*V6R1M0)                                
     C                   EVAL      *INLR = *ON                
      /ENDIF                                                  
      /free                                                   
           oldFile = '/userfile/mystuff/sales.xls';           
           if ( unlink(%trimR(oldFile)) = -1);                
               joblog('Delete of %s failed.':%trimR(oldFile));
           else;                                              
               joblog('File %s deleted.':%trimR(oldFile));    
           endif;                                             
      /end-free                                               
      /IF DEFINED(*V6R1M0)                                    
     P dltIFS          E                                      
      /endif

Return to classanova.com home page.
Sort Ascend | Descend

COMMENTS