          PROCEDURE MGRB2112                                                    
                    using  &LINK_FILE      as String (08),                      
                           &LINK_LIB       as String (08),                      
                           &LINK_VOL       as String (06),                      
                           &LINK_PARAMETER as String (06)                       
                                                                                
***********************************************************************         
* PROCEDURE:  MGRB2112                                                *         
* AUTHOR:     JMC                                                     *         
* TITLE:      File transfer Utility                                   *         
* REMARKS:    This is called by a number of applications.             *         
*                                                                     *         
*             This procedure is executed to transfer a file from the  *         
*             local system to another system.                         *         
*             It uses a parameter from MG10151S to determine          *         
*             where to send the file and how to send it.              *         
*                                                                     *         
*=====================================================================*         
*                            LINK PARAMETERS                          *         
*                           =================                         *         
* Link Parameter       Description                                    *         
* -------------------- ---------------------------------------------- *         
* &LINK_FILE           File name of the file to be sent               *         
* &LINK_LIB            Library the file to be sent is in              *         
* &LINK_VOL            Volume the file to be sent is on               *         
* &LINK_PARAMETER      Parameter on MG10151S that indicates where     *         
*                      to sent the file, see parameter CI7778 for     *         
*                      an example of this parameter                   *         
*                                                                     *         
*=====================================================================*         
*                            MODIFICATIONS                            *         
* Version  who   Date   Why                                           *         
* -------- --- -------- --------------------------------------------- *         
* 00.01.00 JMC 01/23/91 Added option to send reports/file via OFFICE  *         
* 00.00.00 JMC 05/07/89 Original Version                              *         
*                                                                     *         
***********************************************************************         
                                                                                
          DECLARE &RECORDS              as Integer     Initial 0                
          DECLARE &PARM_LITERAL         as String (40) Initial " "              
          DECLARE &PARM_NUMERIC         as String (12) Initial " "              
                                                                                
***********************************************************************         
* STEP00 -- Determine if file is valid                                *         
***********************************************************************         
STEP00:   IF NOT EXISTS FILE &LINK_FILE in &LINK_LIB on &LINK_VOL               
                 GOTO EOJ                                                       
                                                                                
          EXTRACT &RECORDS = Records used by                                    
                             &LINK_FILE in &LINK_LIB on &LINK_VOL               
          IF &RECORDS < 1 GOTO EOJ                                              
                                                                                
***********************************************************************         
* STEP01 -- Get File locations                                        *         
***********************************************************************         
STEP01:   RUN MU5350                                                            
               ENTER CATGET     CATNAME  = MG10151S                             
     MG10151S: ENTER LOCATION                                                   
               ENTER CATGET     CATNAME  = VSSUBS                               
     VSSUBS:   ENTER LOCATION                                                   
               ENTER CATGET     CATNAME  = FPSULOAD                             
     FPSULOAD: ENTER LOCATION                                                   
               ENTER CATGET     CATNAME  = MG50001I                             
     MG50001I: ENTER LOCATION                                                   
               ENTER CATGET                                                     
                                                                                
          IF STEP01 = 0 GOTO STEP02                                             
                                                                                
          RETURN CODE =  STEP01 + 100                                           
                                                                                
***********************************************************************         
* STEP02 -- Will get parameter to determine WSN                       *         
***********************************************************************         
STEP02:  RUN MG2151 in (FPSULOAD.LIBRARY) on (FPSULOAD.VOLUME)                  
               ENTER ACCEPT WSOPEN = S                                          
               ENTER MG10151I (MG10151S)                                        
               ENTER PARMKEY    KEY = &LINK_PARAMETER                           
      PARMKEY: ENTER PARMINFO                                                   
               ENTER PARMKEY 16                                                 
                                                                                
          IF (PARMKEY.STATUS) = "N" RETURN                                      
          IF (PARMKEY.SWITCH) = "N" RETURN                                      
          IF (PARMKEY.SWITCH) = "O" GOTO STEP10                                 
                                                                                
***********************************************************************         
* STEP03 -- Transfer the file/report                                  *         
***********************************************************************         
STEP03:   DECLARE &TRANSFER_WSN         as String (08) Initial " "              
          DECLARE &TRANSFER_FUNCTION    as String (01) Initial "T"              
          DECLARE &TRANSFER_FILE_TYPE   as String (01) Initial "V"              
          DECLARE &TRANSFER_OUT_LIB     as String (08) Initial " "              
          DECLARE &TRANSFER_OUT_VOL     as String (06) Initial " "              
          DECLARE &TRANSFER_GROUP       as String (16) Initial "WIP"            
          DECLARE &TRANSFER_STATUS      as String (01) Initial "A"              
          DECLARE &TRANSFER_REPLACE     as String (01) Initial "R"              
          DECLARE &TRANSFER_SCRATCH     as String (01) Initial "N"              
          DECLARE &TRANSFER_PROCESS     as String (01) Initial "S"              
          DECLARE &TRANSFER_RETURN_CODE as Integer     Initial 0                
                                                                                
          ASSIGN &PARM_LITERAL = (PARMKEY.LITERAL)                              
          ASSIGN &PARM_NUMERIC = (PARMKEY.NUMERIC)                              
                                                                                
          IF &PARM_NUMERIC(11,1) = "0" ASSIGN &TRANSFER_STATUS = "A"            
          IF &PARM_NUMERIC(11,1) = "1" ASSIGN &TRANSFER_STATUS = "H"            
                                                                                
          ASSIGN &TRANSFER_WSN     = &PARM_LITERAL(1,8)                         
          ASSIGN &TRANSFER_OUT_VOL = &PARM_LITERAL(9,6)                         
          ASSIGN &TRANSFER_OUT_LIB = &PARM_LITERAL(15,8)                        
          ASSIGN &TRANSFER_GROUP   = &PARM_LITERAL(23,16)                       
                                                                                
          IF     &TRANSFER_WSN     = "        " GOTO EOJ                        
          IF     &TRANSFER_OUT_VOL = "      "   GOTO EOJ                        
          IF     &TRANSFER_OUT_LIB = "        " GOTO EOJ                        
                                                                                
STEP03a:  RUN TRANSFER in (VSSUBS.LIBRARY) on (VSSUBS.VOLUME)                   
               using &TRANSFER_FUNCTION,    &TRANSFER_WSN,                      
                     &TRANSFER_FILE_TYPE,   &LINK_FILE,                         
                     &LINK_LIB,             &LINK_VOL,                          
                     &TRANSFER_FILE_TYPE,   &LINK_FILE,                         
                     &TRANSFER_OUT_LIB,     &TRANSFER_OUT_VOL,                  
                     &TRANSFER_GROUP,       &TRANSFER_STATUS,                   
                     &TRANSFER_REPLACE,     &TRANSFER_SCRATCH,                  
                     &TRANSFER_PROCESS,     &TRANSFER_RETURN_CODE               
               CANCEL EXIT is EOJ                                               
               ERROR  EXIT is EOJ                                               
                                                                                
          GOTO EOJ                                                              
                                                                                
***********************************************************************         
* STEP10 -- Send Report/File via OFFICE                               *         
***********************************************************************         
STEP10:   DECLARE &OFFICE_KEY       as String (06) Initial "      "             
                                                                                
          ASSIGN &PARM_LITERAL = (PARMKEY.LITERAL)                              
          ASSIGN &OFFICE_KEY   = &PARM_LITERAL(1,8)                             
                                                                                
STEP10a:  RUN MG5500 in (FPSULOAD.LIBRARY) on (FPSULOAD.VOLUME)                 
              CANCEL EXIT is EOJ                                                
              ERROR  EXIT is EOJ                                                
               ENTER MG50001I (MG50001I)                                        
               ENTER OFFICE     RPTNAME  = &OFFICE_KEY,                         
                                RPTFILE  = &LINK_FILE,                          
                                RPTLIB   = &LINK_LIB,                           
                                RPTVOL   = &LINK_VOL                            
               ENTER OFFICE     16                                              
                                                                                
          GOTO EOJ                                                              
                                                                                
***********************************************************************         
* EOJ -- End of Job                                                   *         
***********************************************************************         
EOJ:      RETURN                                                                
                                                                                
**********############## End Procedure MGRB2112 ##############*********         
