COBOL Manual for TNS/E Programs (H06.08+, J06.03+)

88 CLOSE-FROM-REQUESTOR VALUE 1 THRU 3.
10 STAT-2 PIC 9.
01 SAVE-MESSAGE-STUFF.
05 FUP PIC X(21) VALUE "$SYSTEM.SYSTEM.FUP".
05 SU-ERROR PIC S9(4) VALUE ZERO COMP.
05 NEWPROCESS-ERR-LEFT PIC 9(4).
05 NEWPROCESS-ERR-RIGHT PIC 9(4).
05 FUP-FAILED PIC X(19) VALUE "Failed to start FUP".
05 STRING-PORTION PIC X(6) VALUE "STRING".
05 INFO-COMMAND PIC X(6) VALUE "INFO *".
05 STARTUP-RESULT PIC S9(4) VALUE ZERO COMP.
05 NULL-CPLIST PIC S9(9) VALUE ZERO COMP.
PROCEDURE DIVISION.
DECLARATIVES.
HANDLE-INFILE-ERRORS SECTION.
USE AFTER STANDARD ERROR PROCEDURE ON MESSAGE-IN-FILE.
INFILE-ERROR.
IF STAT-1 = 1
DISPLAY "EOF on $RECEIVE"
ELSE
DISPLAY "RECEIVE FILE ERROR STATUS = "
RECEIVE-FILE-STATUS
...
END DECLARATIVES.
AA SECTION.
AA-1.
OPEN INPUT MESSAGE-IN-FILE.
MOVE ZERO TO SU-ERROR
SYS-MSG-CODE.
* Inject INFO command into startup message to pass to FUP
ENTER "PUTSTARTUPTEXT"
USING STRING-PORTION,
INFO-COMMAND,
NULL-CPLIST
GIVING STARTUP-RESULT.
* Start FUP
ENTER CLU_PROCESS_CREATE_"
USING FUP
GIVING SU-ERROR.
* Await termination of FUP, or report it never started
IF SU-ERROR = 0
PERFORM WATCH
UNTIL SYS-MSG-STOP
IF FUNCTION MOD (SYS-MSG-STOP-FLAG, 2) = 0
DISPLAY "FUP terminated normally"
ELSE
DISPLAY "FUP aborted"
END-IF
ELSE
PERFORM DISPLAY-STARTUP-FAILURE.
STOP RUN.
DISPLAY-STARTUP-FAILURE.
EVALUATE SU-ERROR
WHEN 1
DISPLAY FUP-FAILED
" -- REQUIRED PARAMETER MISSING OR ILLEGAL"
WHEN 2
DISPLAY FUP-FAILED
" -- ILLEGAL loadfile NAME ("
FUP ")"
WHEN 3
DISPLAY FUP-FAILED
" -- INFILE, OUTFILE, OR DEFAULT VOLUME"
DISPLAY " NAME CANNOT BE CONVERTED TO NETWORK FORM"
Managing a Process 941