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 - 4502 days ago
Last viewed on: 01 Dec 2023 (13234 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)                                               
     H BNDDIR('QC2LE')                                            
     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                                          
     D dltIFS          PI                                         

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

Return to home page.
Sort Ascend | Descend