01 FILE-STAT-MESSAGE. 05 FILE-I-O-TYPE PIC X(06) JUST RIGHT. 05 FILLER PIC X(01) VALUE " ". 05 FILE-FAILED PIC X(06) VALUE " ". 05 FILLER PIC X(01) VALUE " ". 05 FILE-STAT-MSG PIC X(21) VALUE " ". 05 FILLER PIC X(01) VALUE " " . 05 FILE-STAT PIC X(02) VALUE "00". 88 VALID-KEY VALUE "00". 05 FILLER PIC X(01) VALUE ":" . 05 FILE-GUARDIAN-ERR PIC 9(03) VALUE ZERO. /******************* PROCEDURE DIVISION. ******************** DECLARATIVES. INPUT-SECTION SECTION. USE AFTER STANDARD ERROR PROCEDURE ON INPUT. MOVE "INPUT" TO FILE-I-O-TYPE. PERFORM EDIT-FILE-STAT. I-O-SECTION SECTION. USE AFTER STANDARD ERROR PROCEDURE ON I-O. MOVE "OUTPUT" TO FILE-I-O-TYPE. PERFORM EDIT-FILE-STAT. OUTPUT-SECTION SECTION. USE AFTER STANDARD ERROR PROCEDURE ON OUTPUT. MOVE "I-O" TO FILE-I-O-TYPE. PERFORM EDIT-FILE-STAT. EXTEND-SECTION SECTION. USE AFTER STANDARD ERROR PROCEDURE ON EXTEND. MOVE "EXTEND" TO FILE-I-O-TYPE. PERFORM EDIT-FILE-STAT. EDIT-FILE-STAT SECTION. MOVE GUARDIAN-ERR TO FILE-GUARDIAN-ERR. IF FILE-STAT = "00" MOVE "Worked" TO FILE-FAILED MOVE "Successfully " TO FILE-STAT-MSG ELSE MOVE "Failed" TO FILE-FAILED MOVE 999 TO DISK-ERRORS EVALUATE FILE-STAT WHEN "10" MOVE "End of File " TO FILE-STAT-MSG WHEN "30" MOVE "Permanent Error " TO FILE-STAT-MSG WHEN "21" MOVE "Rewrite Error " TO FILE-STAT-MSG WHEN "22" MOVE "Duplicate Key " TO FILE-STAT-MSG WHEN "23" MOVE "No Record Exist " TO FILE-STAT-MSG WHEN "24" MOVE "Write Past Eof " TO FILE-STAT-MSG WHEN "30" MOVE "Temporary Error " TO FILE-STAT-MSG WHEN "34" MOVE "Seq Write Past Eof " TO FILE-STAT-MSG WHEN "35" MOVE "Open File Error " TO FILE-STAT-MSG WHEN "37" MOVE "Device Open Error " TO FILE-STAT-MSG WHEN "38" MOVE "Open Parameter Error" TO FILE-STAT-MSG WHEN "41" MOVE "File is NOT Closed " TO FILE-STAT-MSG WHEN "42" MOVE "File is NOT Opened " TO FILE-STAT-MSG WHEN "43" MOVE "UnRead Del./Rewrite " TO FILE-STAT-MSG WHEN "44" MOVE "Rewrite Size Differs" TO FILE-STAT-MSG WHEN "46" MOVE "UnStarted Read Next " TO FILE-STAT-MSG WHEN "47" MOVE "Read/Start Open Err " TO FILE-STAT-MSG WHEN "48" MOVE "Write Open Error " TO FILE-STAT-MSG WHEN "49" MOVE "File not Opened I/O" TO FILE-STAT-MSG WHEN "90" MOVE "Open Not Timed I/O " TO FILE-STAT-MSG WHEN "91" MOVE "EditReadUnit Failed " TO FILE-STAT-MSG WHEN OTHER MOVE "Unknown condition " TO FILE-STAT-MSG. IF GUARDIAN-ERR = 40 MOVE "98" TO FILE-STAT. END DECLARATIVES.
Friday, October 1, 2010 7:00:59 AM, From: jim, To: Tandem