         PROCEDURE MGRB2157                                                     
                   using &LINK_OLD_FILE          as String (08),                
                         &LINK_OLD_LIB           as String (08),                
                         &LINK_OLD_VOL           as String (06),                
                         &LINK_NEW_FILE          as String (08),                
                         &LINK_NEW_LIB           as String (08),                
                         &LINK_NEW_VOL           as String (06)                 
                                                                                
***********************************************************************         
* PROCEDURE:  MGRB2157                                                *         
* AUTHOR:     JMC                                                     *         
* TITLE:      Rename File Utility                                     *         
* REMARKS:    This utility renames a file.  If an error               *         
*             occurs the operator is prompted to correct it.          *         
*                                                                     *         
*             Renames OLD File to NEW File                            *         
*                                                                     *         
*                                                                     *         
* NOTE:       All Return Codes must be less than 1000                 *         
*                                                                     *         
* RETURN CODES  004 = In File missing                                 *         
*               1xx = RENAME Return Codes                             *         
*               2xx = COPY   Return Codes                             *         
*                                                                     *         
*---------------------------------------------------------------------*         
*                            MODIFICATIONS                            *         
* Version  who   Date   Why                                           *         
* -------- --- -------- --------------------------------------------- *         
* 00.00.00 JMC 07/31/92 Original Version                              *         
*                                                                     *         
***********************************************************************         
                                                                                
          DECLARE &R_C   as Integer     Initial 0                               
                                                                                
***********************************************************************         
* STEP02 -- Verify File                                               *         
***********************************************************************         
STEP02:   IF EXISTS FILE &LINK_OLD_FILE in &LINK_OLD_LIB                        
                      on &LINK_OLD_VOL GOTO STEP02z                             
                                                                                
          RETURN CODE = 4                                                       
                                                                                
STEP02z:  [ continue ]                                                          
                                                                                
***********************************************************************         
* STEP05 -- Copy or Rename ?                                          *         
***********************************************************************         
STEP05:   IF &LINK_OLD_VOL = &LINK_NEW_VOL GOTO STEP10                          
                                                                                
          GOTO STEP20                                                           
                                                                                
***********************************************************************         
* STEP10 -- Rename the File                                           *         
***********************************************************************         
STEP10:   RENAME &LINK_OLD_FILE in &LINK_OLD_LIB on &LINK_OLD_VOL               
              to &LINK_NEW_FILE in &LINK_NEW_LIB                                
                                                                                
          IF STEP10 = 0 GOTO EOJ                                                
                                                                                
          ASSIGN &R_C = STEP10                                                  
                                                                                
          IF &R_C < 99 RETURN CODE = 100 + &R_C                                 
                                                                                
          RETURN CODE = 199                                                     
                                                                                
***********************************************************************         
* STEP20 -- Copy File & Scratch Original File                         *         
***********************************************************************         
STEP20:   RUN COPY                                                              
              CANCEL EXIT is STEP20x                                            
               ENTER INPUT      FILE     = &LINK_OLD_FILE,                      
                                LIBRARY  = &LINK_OLD_LIB,                       
                                VOLUME   = &LINK_OLD_VOL                        
               ENTER OPTIONS                                                    
               ENTER OUTPUT     FILE     = &LINK_NEW_FILE,                      
                                LIBRARY  = &LINK_NEW_LIB,                       
                                VOLUME   = &LINK_NEW_VOL,                       
                                RELEASE  = NO                                   
               ENTER EOJ        16                                              
                                                                                
                                                                                
          IF STEP20 = 0 GOTO STEP20z                                            
                                                                                
          ASSIGN &R_C = STEP20                                                  
                                                                                
          IF &R_C < 98 RETURN CODE = 200 + &R_C                                 
                                                                                
          RETURN CODE = 298                                                     
                                                                                
STEP20x:  RETURN CODE = 299                                                     
STEP20z:  SCRATCH &LINK_OLD_FILE in &LINK_OLD_LIB on &LINK_OLD_VOL              
          GOTO    EOJ                                                           
                                                                                
*#####################################################################*         
* EOJ  - End of Job                                                   *         
*#####################################################################*         
EOJ:      RETURN                                                                
                                                                                
************** ####### END OF PROCEDURE MGRB2157 ####### *************          
