         PROCEDURE MGRB2111                                                     
                   using  &LINK_JOB_CAT          as String (16),                
                          &LINK_RUN_CAT          as String (16),                
                          &LINK_JOB_STREAM       as String (08),                
                          &LINK_APPL_NAME        as String (40),                
                          &LINK_PROMPT           as String (01),                
                          &LINK_STATUS           as String (01),                
                          &LINK_PROCEDURE        as String (08),                
                          &LINK_POINTER          as Integer,                    
                          &LINK_RETURN_CODE      as Integer,                    
                          &LINK_BACKUP_LIB       as String (08),                
                          &LINK_BACKUP_VOL       as String (06),                
                          &LINK_SPOOL_LIB        as String (08),                
                          &LINK_SPOOL_VOL        as String (06),                
                          &LINK_RESTORE_SW       as String (01)                 
                  OPTIONS PROCMSG = NO                                          
                                                                                
***********************************************************************         
* PROCEDURE:  MGRB2111                                                *         
* TITLE:      Job Stream Restart Status                               *         
* AUTHOR:     JMC                                                     *         
* REMARKS:    This procedure determins if a Job-Stream needs to be    *         
*             restarted.                                              *         
*             ALL Return Code must be less than 1000                  *         
*                                                                     *         
*=====================================================================*         
*                           IN-PARAMETERS                             *         
*                          ================                           *         
*                                                                     *         
* Parm              Description                                       *         
* ----------------- ------------------------------------------------- *         
* &LINK_JOB_CAT      Catalog Entry of the Job Stream Recovery File    *         
* &LINK_RUN_CAT      Catalog Entry of the Job Stream Run File         *         
* &LINK_JOB_STREAM   Name of the Job-Stream                           *         
* &LINK_APPL_NAME    Name of the Application calling MGRB2111         *         
* &LINK_PROMPT       "Y" = Display restart prompts                    *         
*                    "N" = Do NOT display restart prompts             *         
*                                                                     *         
*---------------------------------------------------------------------*         
*                           OUT-PARAMETERS                            *         
*                          ================                           *         
*                                                                     *         
* Parm              Description                                       *         
* ----------------- ------------------------------------------------- *         
* &LINK_STATUS       Status of the Job-Stream, passed back to the     *         
*                   calling procedure:                                *         
*                   Space -- Restart NOT necessary                    *         
*                   "B"   -- Rerun from the beginning                 *         
*                   "E"   -- End record found, may have completed     *         
*                            successfully                             *         
*                   "N"   -- Restart at following procedure,          *         
*                            stream aborted inbetween procs           *         
*                   "R"   -- Restart at specific procedure,           *         
*                            a procedure was in progress when the     *         
*                            stream aborted                           *         
*                   "X"   -- Operator elected NOT to restart          *         
*                            Job Stream.                              *         
* &LINK_PROCEDURE    Name of the procedure that just completed or     *         
*                    the name of the procedure in progress            *         
* &LINK_POINTER      Position the procedure occupied in the run list  *         
* &LINK_RETURN_CODE  Return Code the Procedure abneded with           *         
* &LINK_BACKUP_LIB   Backup Library used by stream                    *         
* &LINK_BACKUP_VOL   Backup Volume used by stream                     *         
* &LINK_SPOOL_LIB    Spool Library used by stream                     *         
* &LINK_SPOOL_VOL    Spool Volume used by stream                      *         
* &LINK_RESTORE_SW   Indicates if Files were being restored of backed *         
*                    up when the Stream was cancelled                 *         
*                    If = SPACES: Non-Backup/Restore Proc executing   *         
*                       = "B":    Files were being backed up          *         
*                       = "R":    Files were being restored           *         
*                                                                     *         
*=====================================================================*         
*                           RETURN CODES                              *         
*                                                                     *         
* Note: ALL Return Codes must be less than 999                        *         
*                                                                     *         
* R/C  Meaning                                                        *         
* ---  -------------------------------------------------------------- *         
* 1xx  Invalid catalog entry                                          *         
* 4xx  Unable to determine restart point, abnormal end on MG2101      *         
* 499  MG2101 canceled by operator                                    *         
* 501  Unable to determine restart status                             *         
* 6xx  Unable to determine restart point, abnormal end on MGRB2120    *         
* 699  MGRB2120 canceled by operator                                  *         
* 701  Unable to determine operator response                          *         
* 901  Unable to restart the Job Stream because the Run File          *         
*      does NOT exist                                                 *         
*                                                                     *         
*=====================================================================*         
*                             MODIFICATIONS                           *         
* Version   WHO   DATE   WHY                                          *         
* --------  --- -------- -------------------------------------------- *         
* 00.01.00  JMC 09/23/92 Added FPSULOAD Catalog                       *         
* 00.00.00  JMC 05/22/89 Original Version                             *         
*                                                                     *         
***********************************************************************         
                                                                                
          MESSAGE ERASE = YES                                                   
                  CENTER "Procedure " !! &LINK_JOB_STREAM (1,*) !!              
                         " in progress"                                         
                                                                                
         DECLARE &VERSION            as STRING (08) Initial "00.01.00"          
                                                                                
         DECLARE &MGRB2120_ACTION    as String (01) Initial " "                 
                                                                                
***********************************************************************         
* STEP01 -- MU5350, get required catalog entries                      *         
***********************************************************************         
STEP01:  RUN MU5350                                                             
             CANCEL EXIT STEP01Y                                                
               ENTER CATGET CATNAME = &LINK_JOB_CAT                             
     MG21001C: ENTER LOCATION                                                   
               ENTER CATGET CATNAME = &LINK_RUN_CAT                             
     MG21002C: ENTER LOCATION                                                   
               ENTER CATGET CATNAME = FPSULOAD                                  
     FPSULOAD: ENTER LOCATION                                                   
               ENTER CATGET CATNAME = FPSUPROC                                  
     FPSUPROC: ENTER LOCATION                                                   
               ENTER CATGET                                                     
                                                                                
          IF STEP01 = 0 GOTO STEP02                                             
                                                                                
          IF STEP01 < 100 RETURN CODE = 100 + STEP01                            
          RETURN CODE = 198                                                     
                                                                                
STEP01Y:  RETURN CODE = 199                                                     
                                                                                
***********************************************************************         
* STEP02 -- Initialize out Parameters                                 *         
***********************************************************************         
STEP02:   ASSIGN &LINK_STATUS         = " "                                     
          ASSIGN &LINK_PROCEDURE      = "        "                              
          ASSIGN &LINK_POINTER        = 0                                       
          ASSIGN &LINK_RETURN_CODE    = 0                                       
                                                                                
***********************************************************************         
* STEP03 -- DETERMINE if procedure needs to be restarted              *         
***********************************************************************         
STEP03:   IF NOT EXISTS FILE (MG21001C) GOTO EOJ                                
                                                                                
***********************************************************************         
* STEP04 -- Stream needs to be restarted, will determine restart      *         
*           point by running MG2101                                   *         
***********************************************************************         
STEP04:   RUN MG2101 in (FPSULOAD.LIBRARY) on (FPSULOAD.VOLUME)                 
              using &LINK_STATUS,                                               
                    &LINK_PROCEDURE,                                            
                    &LINK_RESTORE_SW,                                           
                    &LINK_POINTER,                                              
                    &LINK_RETURN_CODE,                                          
                    &LINK_BACKUP_LIB,                                           
                    &LINK_BACKUP_VOL,                                           
                    &LINK_SPOOL_LIB,                                            
                    &LINK_SPOOL_VOL                                             
               CANCEL EXIT is STEP04Y                                           
               ENTER MG21001C   (MG21001C)                                      
                                                                                
          IF STEP04 = 0 GOTO STEP04Z                                            
                                                                                
          RETURN CODE = STEP04 + 400                                            
                                                                                
STEP04Y:  RETURN CODE = 499                                                     
                                                                                
STEP04Z:  [ CONTINUE ]                                                          
                                                                                
***********************************************************************         
* STEP05 -- Process restart options                                   *         
***********************************************************************         
STEP05:   IF &LINK_STATUS = "B" GOTO STEP06                                     
          IF &LINK_STATUS = "E" GOTO STEP06                                     
          IF &LINK_STATUS = "N" GOTO STEP06                                     
          IF &LINK_STATUS = "R" GOTO STEP06                                     
                                                                                
          RETURN CODE = 501                                                     
                                                                                
***********************************************************************         
* STEP06 -- Run MGRB2120 to prompt operator with restart info         *         
***********************************************************************         
STEP06:   IF &LINK_PROMPT = "N" GOTO STEP06Y                                    
                                                                                
STEP06A:  RUN MGRB2120 in (FPSUPROC.LIBRARY) on (FPSUPROC.VOLUME)               
              using &LINK_STATUS,                                               
                    &LINK_JOB_STREAM,                                           
                    &LINK_PROCEDURE,                                            
                    &LINK_APPL_NAME,                                            
                    &MGRB2120_ACTION                                            
              CANCEL EXIT is STEP06X                                            
                                                                                
          IF STEP06A = 0 GOTO STEP06Z                                           
                                                                                
          RETURN CODE = 600 + STEP06A                                           
                                                                                
STEP06X:  RETURN CODE = 699                                                     
                                                                                
STEP06Y:  ASSIGN &MGRB2120_ACTION ="Y"                                          
                                                                                
STEP06Z:  MESSAGE ERASE = YES                                                   
                  CENTER "Procedure " !! &LINK_JOB_STREAM (1,*) !!              
                         " in progress"                                         
                                                                                
***********************************************************************         
* STEP07 -- Execute action selected by operator                       *         
***********************************************************************         
STEP07:   IF &MGRB2120_ACTION = "Y" GOTO STEP09                                 
          IF &MGRB2120_ACTION = "N" GOTO STEP08                                 
                                                                                
          RETURN CODE = 701                                                     
                                                                                
***********************************************************************         
* STEP08 -- Operator elected NOT to restart stream automatically      *         
*           If &LINK_STATUS = "E" this option will restart stream     *         
*           from the beginning                                        *         
***********************************************************************         
STEP08:   IF &LINK_STATUS = "E" GOTO STEP08A                                    
                                                                                
          ASSIGN &LINK_STATUS = "X"                                             
          GOTO   STEP09                                                         
                                                                                
STEP08A:  ASSIGN &LINK_STATUS = "B"                                             
                                                                                
***********************************************************************         
* STEP09 -- Stream is to be restarted, verify Run File                *         
***********************************************************************         
STEP09:   IF &LINK_STATUS = "E" GOTO STEP09Z                                    
          IF &LINK_STATUS = "B" GOTO STEP09Z                                    
          IF &LINK_STATUS = "X" GOTO STEP09Z                                    
                                                                                
          IF EXISTS FILE (MG21002C) GOTO STEP09Z                                
                                                                                
          RETURN CODE = 901                                                     
                                                                                
STEP09Z:  [ CONTINUE ]                                                          
                                                                                
***********************************************************************         
* EOJ -- End of Job                                                   *         
***********************************************************************         
EOJ:      RETURN                                                                
                                                                                
************** ####### END OF PROCEDURE MGRB2111 ####### *************          
