MFmainframe-rea
WS carddemo · 26f629ef

Business rules · 151 guarded actionsCBTRN03C

Each row is an action and the full chain of conditions that must hold for it to run, recovered from nested IF / EVALUATE / PERFORM UNTIL scopes. Name the rule; the evidence is already attached.

88 levels

Condition names used

APPL-AOKmeans APPL-RESULT = 0CBTRN03C.cbl:151
APPL-EOFmeans APPL-RESULT = 16CBTRN03C.cbl:152
17 rules

(PROCEDURE DIVISION)

WhenThenAt
  1. PERFORM UNTIL END-OF-FILE = 'Y'
  2. END-OF-FILE = 'N'
PERFORM 1000-TRANFILE-GET-NEXTCBTRN03C.cbl:172
  1. PERFORM UNTIL END-OF-FILE = 'Y'
  2. END-OF-FILE = 'N'
  3. END-OF-FILE = 'N'
DISPLAY TRAN-RECORDCBTRN03C.cbl:180
  1. PERFORM UNTIL END-OF-FILE = 'Y'
  2. END-OF-FILE = 'N'
  3. END-OF-FILE = 'N'
  4. WS-CURR-CARD-NUM NOT= TRAN-CARD-NUM
  5. WS-FIRST-TIME = 'N'
PERFORM 1120-WRITE-ACCOUNT-TOTALSCBTRN03C.cbl:183
  1. PERFORM UNTIL END-OF-FILE = 'Y'
  2. END-OF-FILE = 'N'
  3. END-OF-FILE = 'N'
  4. WS-CURR-CARD-NUM NOT= TRAN-CARD-NUM
MOVE TRAN-CARD-NUM TO WS-CURR-CARD-NUMCBTRN03C.cbl:185
  1. PERFORM UNTIL END-OF-FILE = 'Y'
  2. END-OF-FILE = 'N'
  3. END-OF-FILE = 'N'
  4. WS-CURR-CARD-NUM NOT= TRAN-CARD-NUM
MOVE TRAN-CARD-NUM TO FD-XREF-CARD-NUMCBTRN03C.cbl:186
  1. PERFORM UNTIL END-OF-FILE = 'Y'
  2. END-OF-FILE = 'N'
  3. END-OF-FILE = 'N'
  4. WS-CURR-CARD-NUM NOT= TRAN-CARD-NUM
PERFORM 1500-A-LOOKUP-XREFCBTRN03C.cbl:187
  1. PERFORM UNTIL END-OF-FILE = 'Y'
  2. END-OF-FILE = 'N'
  3. END-OF-FILE = 'N'
MOVE TRAN-TYPE-CD OF TRAN-RECORD TO FD-TRAN-TYPECBTRN03C.cbl:189
  1. PERFORM UNTIL END-OF-FILE = 'Y'
  2. END-OF-FILE = 'N'
  3. END-OF-FILE = 'N'
PERFORM 1500-B-LOOKUP-TRANTYPECBTRN03C.cbl:190
  1. PERFORM UNTIL END-OF-FILE = 'Y'
  2. END-OF-FILE = 'N'
  3. END-OF-FILE = 'N'
MOVE TRAN-TYPE-CD OF TRAN-RECORD TO FD-TRAN-TYPE-CD OF FD-TRAN-CAT-KEYCBTRN03C.cbl:191–192
  1. PERFORM UNTIL END-OF-FILE = 'Y'
  2. END-OF-FILE = 'N'
  3. END-OF-FILE = 'N'
MOVE TRAN-CAT-CD OF TRAN-RECORD TO FD-TRAN-CAT-CD OF FD-TRAN-CAT-KEYCBTRN03C.cbl:193–194
  1. PERFORM UNTIL END-OF-FILE = 'Y'
  2. END-OF-FILE = 'N'
  3. END-OF-FILE = 'N'
PERFORM 1500-C-LOOKUP-TRANCATGCBTRN03C.cbl:195
  1. PERFORM UNTIL END-OF-FILE = 'Y'
  2. END-OF-FILE = 'N'
  3. END-OF-FILE = 'N'
PERFORM 1100-WRITE-TRANSACTION-REPORTCBTRN03C.cbl:196
  1. PERFORM UNTIL END-OF-FILE = 'Y'
  2. END-OF-FILE = 'N'
  3. NOT (END-OF-FILE = 'N')
DISPLAY 'TRAN-AMT ' TRAN-AMTCBTRN03C.cbl:198
  1. PERFORM UNTIL END-OF-FILE = 'Y'
  2. END-OF-FILE = 'N'
  3. NOT (END-OF-FILE = 'N')
DISPLAY 'WS-PAGE-TOTAL' WS-PAGE-TOTALCBTRN03C.cbl:199
  1. PERFORM UNTIL END-OF-FILE = 'Y'
  2. END-OF-FILE = 'N'
  3. NOT (END-OF-FILE = 'N')
calc ADD TRAN-AMT TO WS-PAGE-TOTAL WS-ACCOUNT-TOTALCBTRN03C.cbl:200–201
  1. PERFORM UNTIL END-OF-FILE = 'Y'
  2. END-OF-FILE = 'N'
  3. NOT (END-OF-FILE = 'N')
PERFORM 1110-WRITE-PAGE-TOTALSCBTRN03C.cbl:202
  1. PERFORM UNTIL END-OF-FILE = 'Y'
  2. END-OF-FILE = 'N'
  3. NOT (END-OF-FILE = 'N')
PERFORM 1110-WRITE-GRAND-TOTALSCBTRN03C.cbl:203
9 rules

0550-DATEPARM-READ

WhenThenAt
  1. DATEPARM-STATUS = '00'
MOVE 0 TO APPL-RESULTCBTRN03C.cbl:224
  1. DATEPARM-STATUS = '10'
MOVE 16 TO APPL-RESULTCBTRN03C.cbl:226
  1. DATEPARM-STATUS is none of ['00'; '10']
MOVE 12 TO APPL-RESULTCBTRN03C.cbl:228
  1. APPL-AOK
DISPLAY 'Reporting from ' WS-START-DATE ' to ' WS-END-DATECBTRN03C.cbl:232–233
  1. NOT (APPL-AOK)
  2. APPL-EOF
MOVE 'Y' TO END-OF-FILECBTRN03C.cbl:236
  1. NOT (APPL-AOK)
  2. NOT (APPL-EOF)
DISPLAY 'ERROR READING DATEPARM FILE'CBTRN03C.cbl:238
  1. NOT (APPL-AOK)
  2. NOT (APPL-EOF)
MOVE DATEPARM-STATUS TO IO-STATUSCBTRN03C.cbl:239
  1. NOT (APPL-AOK)
  2. NOT (APPL-EOF)
PERFORM 9910-DISPLAY-IO-STATUSCBTRN03C.cbl:240
  1. NOT (APPL-AOK)
  2. NOT (APPL-EOF)
PERFORM 9999-ABEND-PROGRAMCBTRN03C.cbl:241
8 rules

1000-TRANFILE-GET-NEXT

WhenThenAt
  1. TRANFILE-STATUS = '00'
MOVE 0 TO APPL-RESULTCBTRN03C.cbl:253
  1. TRANFILE-STATUS = '10'
MOVE 16 TO APPL-RESULTCBTRN03C.cbl:255
  1. TRANFILE-STATUS is none of ['00'; '10']
MOVE 12 TO APPL-RESULTCBTRN03C.cbl:257
  1. NOT (APPL-AOK)
  2. APPL-EOF
MOVE 'Y' TO END-OF-FILECBTRN03C.cbl:264
  1. NOT (APPL-AOK)
  2. NOT (APPL-EOF)
DISPLAY 'ERROR READING TRANSACTION FILE'CBTRN03C.cbl:266
  1. NOT (APPL-AOK)
  2. NOT (APPL-EOF)
MOVE TRANFILE-STATUS TO IO-STATUSCBTRN03C.cbl:267
  1. NOT (APPL-AOK)
  2. NOT (APPL-EOF)
PERFORM 9910-DISPLAY-IO-STATUSCBTRN03C.cbl:268
  1. NOT (APPL-AOK)
  2. NOT (APPL-EOF)
PERFORM 9999-ABEND-PROGRAMCBTRN03C.cbl:269
7 rules

1100-WRITE-TRANSACTION-REPORT

WhenThenAt
  1. WS-FIRST-TIME = 'Y'
MOVE 'N' TO WS-FIRST-TIMECBTRN03C.cbl:276
  1. WS-FIRST-TIME = 'Y'
MOVE WS-START-DATE TO REPT-START-DATECBTRN03C.cbl:277
  1. WS-FIRST-TIME = 'Y'
MOVE WS-END-DATE TO REPT-END-DATECBTRN03C.cbl:278
  1. WS-FIRST-TIME = 'Y'
PERFORM 1120-WRITE-HEADERSCBTRN03C.cbl:279
  1. FUNCTION MOD(WS-LINE-COUNTER WS-PAGE-SIZE) = 0
PERFORM 1110-WRITE-PAGE-TOTALSCBTRN03C.cbl:283
  1. FUNCTION MOD(WS-LINE-COUNTER WS-PAGE-SIZE) = 0
PERFORM 1120-WRITE-HEADERSCBTRN03C.cbl:284
alwayscalc ADD TRAN-AMT TO WS-PAGE-TOTAL WS-ACCOUNT-TOTALCBTRN03C.cbl:287–288
3 rules

1110-WRITE-PAGE-TOTALS

WhenThenAt
alwayscalc ADD WS-PAGE-TOTAL TO WS-GRAND-TOTALCBTRN03C.cbl:297
alwayscalc ADD 1 TO WS-LINE-COUNTERCBTRN03C.cbl:299
alwayscalc ADD 1 TO WS-LINE-COUNTERCBTRN03C.cbl:302
2 rules

1120-WRITE-ACCOUNT-TOTALS

WhenThenAt
alwayscalc ADD 1 TO WS-LINE-COUNTERCBTRN03C.cbl:311
alwayscalc ADD 1 TO WS-LINE-COUNTERCBTRN03C.cbl:314
4 rules

1120-WRITE-HEADERS

WhenThenAt
alwayscalc ADD 1 TO WS-LINE-COUNTERCBTRN03C.cbl:327
alwayscalc ADD 1 TO WS-LINE-COUNTERCBTRN03C.cbl:331
alwayscalc ADD 1 TO WS-LINE-COUNTERCBTRN03C.cbl:335
alwayscalc ADD 1 TO WS-LINE-COUNTERCBTRN03C.cbl:339
6 rules

1111-WRITE-REPORT-REC

WhenThenAt
  1. TRANREPT-STATUS = '00'
MOVE 0 TO APPL-RESULTCBTRN03C.cbl:347
  1. NOT (TRANREPT-STATUS = '00')
MOVE 12 TO APPL-RESULTCBTRN03C.cbl:349
  1. NOT (APPL-AOK)
DISPLAY 'ERROR WRITING REPTFILE'CBTRN03C.cbl:354
  1. NOT (APPL-AOK)
MOVE TRANREPT-STATUS TO IO-STATUSCBTRN03C.cbl:355
  1. NOT (APPL-AOK)
PERFORM 9910-DISPLAY-IO-STATUSCBTRN03C.cbl:356
  1. NOT (APPL-AOK)
PERFORM 9999-ABEND-PROGRAMCBTRN03C.cbl:357
1 rules

1120-WRITE-DETAIL

WhenThenAt
alwayscalc ADD 1 TO WS-LINE-COUNTERCBTRN03C.cbl:373
6 rules

0000-TRANFILE-OPEN

WhenThenAt
  1. TRANFILE-STATUS = '00'
MOVE 0 TO APPL-RESULTCBTRN03C.cbl:380
  1. NOT (TRANFILE-STATUS = '00')
MOVE 12 TO APPL-RESULTCBTRN03C.cbl:382
  1. NOT (APPL-AOK)
DISPLAY 'ERROR OPENING TRANFILE'CBTRN03C.cbl:387
  1. NOT (APPL-AOK)
MOVE TRANFILE-STATUS TO IO-STATUSCBTRN03C.cbl:388
  1. NOT (APPL-AOK)
PERFORM 9910-DISPLAY-IO-STATUSCBTRN03C.cbl:389
  1. NOT (APPL-AOK)
PERFORM 9999-ABEND-PROGRAMCBTRN03C.cbl:390
6 rules

0100-REPTFILE-OPEN

WhenThenAt
  1. TRANREPT-STATUS = '00'
MOVE 0 TO APPL-RESULTCBTRN03C.cbl:398
  1. NOT (TRANREPT-STATUS = '00')
MOVE 12 TO APPL-RESULTCBTRN03C.cbl:400
  1. NOT (APPL-AOK)
DISPLAY 'ERROR OPENING REPTFILE'CBTRN03C.cbl:405
  1. NOT (APPL-AOK)
MOVE TRANREPT-STATUS TO IO-STATUSCBTRN03C.cbl:406
  1. NOT (APPL-AOK)
PERFORM 9910-DISPLAY-IO-STATUSCBTRN03C.cbl:407
  1. NOT (APPL-AOK)
PERFORM 9999-ABEND-PROGRAMCBTRN03C.cbl:408
6 rules

0200-CARDXREF-OPEN

WhenThenAt
  1. CARDXREF-STATUS = '00'
MOVE 0 TO APPL-RESULTCBTRN03C.cbl:416
  1. NOT (CARDXREF-STATUS = '00')
MOVE 12 TO APPL-RESULTCBTRN03C.cbl:418
  1. NOT (APPL-AOK)
DISPLAY 'ERROR OPENING CROSS REF FILE'CBTRN03C.cbl:423
  1. NOT (APPL-AOK)
MOVE CARDXREF-STATUS TO IO-STATUSCBTRN03C.cbl:424
  1. NOT (APPL-AOK)
PERFORM 9910-DISPLAY-IO-STATUSCBTRN03C.cbl:425
  1. NOT (APPL-AOK)
PERFORM 9999-ABEND-PROGRAMCBTRN03C.cbl:426
6 rules

0300-TRANTYPE-OPEN

WhenThenAt
  1. TRANTYPE-STATUS = '00'
MOVE 0 TO APPL-RESULTCBTRN03C.cbl:434
  1. NOT (TRANTYPE-STATUS = '00')
MOVE 12 TO APPL-RESULTCBTRN03C.cbl:436
  1. NOT (APPL-AOK)
DISPLAY 'ERROR OPENING TRANSACTION TYPE FILE'CBTRN03C.cbl:441
  1. NOT (APPL-AOK)
MOVE TRANTYPE-STATUS TO IO-STATUSCBTRN03C.cbl:442
  1. NOT (APPL-AOK)
PERFORM 9910-DISPLAY-IO-STATUSCBTRN03C.cbl:443
  1. NOT (APPL-AOK)
PERFORM 9999-ABEND-PROGRAMCBTRN03C.cbl:444
6 rules

0400-TRANCATG-OPEN

WhenThenAt
  1. TRANCATG-STATUS = '00'
MOVE 0 TO APPL-RESULTCBTRN03C.cbl:452
  1. NOT (TRANCATG-STATUS = '00')
MOVE 12 TO APPL-RESULTCBTRN03C.cbl:454
  1. NOT (APPL-AOK)
DISPLAY 'ERROR OPENING TRANSACTION CATG FILE'CBTRN03C.cbl:459
  1. NOT (APPL-AOK)
MOVE TRANCATG-STATUS TO IO-STATUSCBTRN03C.cbl:460
  1. NOT (APPL-AOK)
PERFORM 9910-DISPLAY-IO-STATUSCBTRN03C.cbl:461
  1. NOT (APPL-AOK)
PERFORM 9999-ABEND-PROGRAMCBTRN03C.cbl:462
6 rules

0500-DATEPARM-OPEN

WhenThenAt
  1. DATEPARM-STATUS = '00'
MOVE 0 TO APPL-RESULTCBTRN03C.cbl:470
  1. NOT (DATEPARM-STATUS = '00')
MOVE 12 TO APPL-RESULTCBTRN03C.cbl:472
  1. NOT (APPL-AOK)
DISPLAY 'ERROR OPENING DATE PARM FILE'CBTRN03C.cbl:477
  1. NOT (APPL-AOK)
MOVE DATEPARM-STATUS TO IO-STATUSCBTRN03C.cbl:478
  1. NOT (APPL-AOK)
PERFORM 9910-DISPLAY-IO-STATUSCBTRN03C.cbl:479
  1. NOT (APPL-AOK)
PERFORM 9999-ABEND-PROGRAMCBTRN03C.cbl:480
4 rules

1500-A-LOOKUP-XREF

WhenThenAt
  1. READ INVALID KEY
DISPLAY 'INVALID CARD NUMBER : ' FD-XREF-CARD-NUMCBTRN03C.cbl:487
  1. READ INVALID KEY
MOVE 23 TO IO-STATUSCBTRN03C.cbl:488
  1. READ INVALID KEY
PERFORM 9910-DISPLAY-IO-STATUSCBTRN03C.cbl:489
  1. READ INVALID KEY
PERFORM 9999-ABEND-PROGRAMCBTRN03C.cbl:490
4 rules

1500-B-LOOKUP-TRANTYPE

WhenThenAt
  1. READ INVALID KEY
DISPLAY 'INVALID TRANSACTION TYPE : ' FD-TRAN-TYPECBTRN03C.cbl:497
  1. READ INVALID KEY
MOVE 23 TO IO-STATUSCBTRN03C.cbl:498
  1. READ INVALID KEY
PERFORM 9910-DISPLAY-IO-STATUSCBTRN03C.cbl:499
  1. READ INVALID KEY
PERFORM 9999-ABEND-PROGRAMCBTRN03C.cbl:500
4 rules

1500-C-LOOKUP-TRANCATG

WhenThenAt
  1. READ INVALID KEY
DISPLAY 'INVALID TRAN CATG KEY : ' FD-TRAN-CAT-KEYCBTRN03C.cbl:507
  1. READ INVALID KEY
MOVE 23 TO IO-STATUSCBTRN03C.cbl:508
  1. READ INVALID KEY
PERFORM 9910-DISPLAY-IO-STATUSCBTRN03C.cbl:509
  1. READ INVALID KEY
PERFORM 9999-ABEND-PROGRAMCBTRN03C.cbl:510
7 rules

9000-TRANFILE-CLOSE

WhenThenAt
alwayscalc ADD 8 TO ZERO GIVING APPL-RESULTCBTRN03C.cbl:515
  1. TRANFILE-STATUS = '00'
calc SUBTRACT APPL-RESULT FROM APPL-RESULTCBTRN03C.cbl:518
  1. NOT (TRANFILE-STATUS = '00')
calc ADD 12 TO ZERO GIVING APPL-RESULTCBTRN03C.cbl:520
  1. NOT (APPL-AOK)
DISPLAY 'ERROR CLOSING POSTED TRANSACTION FILE'CBTRN03C.cbl:525
  1. NOT (APPL-AOK)
MOVE TRANFILE-STATUS TO IO-STATUSCBTRN03C.cbl:526
  1. NOT (APPL-AOK)
PERFORM 9910-DISPLAY-IO-STATUSCBTRN03C.cbl:527
  1. NOT (APPL-AOK)
PERFORM 9999-ABEND-PROGRAMCBTRN03C.cbl:528
7 rules

9100-REPTFILE-CLOSE

WhenThenAt
alwayscalc ADD 8 TO ZERO GIVING APPL-RESULTCBTRN03C.cbl:533
  1. TRANREPT-STATUS = '00'
calc SUBTRACT APPL-RESULT FROM APPL-RESULTCBTRN03C.cbl:536
  1. NOT (TRANREPT-STATUS = '00')
calc ADD 12 TO ZERO GIVING APPL-RESULTCBTRN03C.cbl:538
  1. NOT (APPL-AOK)
DISPLAY 'ERROR CLOSING REPORT FILE'CBTRN03C.cbl:543
  1. NOT (APPL-AOK)
MOVE TRANREPT-STATUS TO IO-STATUSCBTRN03C.cbl:544
  1. NOT (APPL-AOK)
PERFORM 9910-DISPLAY-IO-STATUSCBTRN03C.cbl:545
  1. NOT (APPL-AOK)
PERFORM 9999-ABEND-PROGRAMCBTRN03C.cbl:546
6 rules

9200-CARDXREF-CLOSE

WhenThenAt
  1. CARDXREF-STATUS = '00'
MOVE 0 TO APPL-RESULTCBTRN03C.cbl:555
  1. NOT (CARDXREF-STATUS = '00')
MOVE 12 TO APPL-RESULTCBTRN03C.cbl:557
  1. NOT (APPL-AOK)
DISPLAY 'ERROR CLOSING CROSS REF FILE'CBTRN03C.cbl:562
  1. NOT (APPL-AOK)
MOVE CARDXREF-STATUS TO IO-STATUSCBTRN03C.cbl:563
  1. NOT (APPL-AOK)
PERFORM 9910-DISPLAY-IO-STATUSCBTRN03C.cbl:564
  1. NOT (APPL-AOK)
PERFORM 9999-ABEND-PROGRAMCBTRN03C.cbl:565
6 rules

9300-TRANTYPE-CLOSE

WhenThenAt
  1. TRANTYPE-STATUS = '00'
MOVE 0 TO APPL-RESULTCBTRN03C.cbl:573
  1. NOT (TRANTYPE-STATUS = '00')
MOVE 12 TO APPL-RESULTCBTRN03C.cbl:575
  1. NOT (APPL-AOK)
DISPLAY 'ERROR CLOSING TRANSACTION TYPE FILE'CBTRN03C.cbl:580
  1. NOT (APPL-AOK)
MOVE TRANTYPE-STATUS TO IO-STATUSCBTRN03C.cbl:581
  1. NOT (APPL-AOK)
PERFORM 9910-DISPLAY-IO-STATUSCBTRN03C.cbl:582
  1. NOT (APPL-AOK)
PERFORM 9999-ABEND-PROGRAMCBTRN03C.cbl:583
6 rules

9400-TRANCATG-CLOSE

WhenThenAt
  1. TRANCATG-STATUS = '00'
MOVE 0 TO APPL-RESULTCBTRN03C.cbl:591
  1. NOT (TRANCATG-STATUS = '00')
MOVE 12 TO APPL-RESULTCBTRN03C.cbl:593
  1. NOT (APPL-AOK)
DISPLAY 'ERROR CLOSING TRANSACTION CATG FILE'CBTRN03C.cbl:598
  1. NOT (APPL-AOK)
MOVE TRANCATG-STATUS TO IO-STATUSCBTRN03C.cbl:599
  1. NOT (APPL-AOK)
PERFORM 9910-DISPLAY-IO-STATUSCBTRN03C.cbl:600
  1. NOT (APPL-AOK)
PERFORM 9999-ABEND-PROGRAMCBTRN03C.cbl:601
6 rules

9500-DATEPARM-CLOSE

WhenThenAt
  1. DATEPARM-STATUS = '00'
MOVE 0 TO APPL-RESULTCBTRN03C.cbl:609
  1. NOT (DATEPARM-STATUS = '00')
MOVE 12 TO APPL-RESULTCBTRN03C.cbl:611
  1. NOT (APPL-AOK)
DISPLAY 'ERROR CLOSING DATE PARM FILE'CBTRN03C.cbl:616
  1. NOT (APPL-AOK)
MOVE DATEPARM-STATUS TO IO-STATUSCBTRN03C.cbl:617
  1. NOT (APPL-AOK)
PERFORM 9910-DISPLAY-IO-STATUSCBTRN03C.cbl:618
  1. NOT (APPL-AOK)
PERFORM 9999-ABEND-PROGRAMCBTRN03C.cbl:619
8 rules

9910-DISPLAY-IO-STATUS

WhenThenAt
  1. IO-STATUS NOT NUMERIC OR IO-STAT1 = '9'
MOVE IO-STAT1 TO IO-STATUS-04(1:1)CBTRN03C.cbl:636
  1. IO-STATUS NOT NUMERIC OR IO-STAT1 = '9'
MOVE 0 TO TWO-BYTES-BINARYCBTRN03C.cbl:637
  1. IO-STATUS NOT NUMERIC OR IO-STAT1 = '9'
MOVE IO-STAT2 TO TWO-BYTES-RIGHTCBTRN03C.cbl:638
  1. IO-STATUS NOT NUMERIC OR IO-STAT1 = '9'
MOVE TWO-BYTES-BINARY TO IO-STATUS-0403CBTRN03C.cbl:639
  1. IO-STATUS NOT NUMERIC OR IO-STAT1 = '9'
DISPLAY 'FILE STATUS IS: NNNN' IO-STATUS-04CBTRN03C.cbl:640
  1. NOT (IO-STATUS NOT NUMERIC OR IO-STAT1 = '9')
MOVE '0000' TO IO-STATUS-04CBTRN03C.cbl:642
  1. NOT (IO-STATUS NOT NUMERIC OR IO-STAT1 = '9')
MOVE IO-STATUS TO IO-STATUS-04(3:2)CBTRN03C.cbl:643
  1. NOT (IO-STATUS NOT NUMERIC OR IO-STAT1 = '9')
DISPLAY 'FILE STATUS IS: NNNN' IO-STATUS-04CBTRN03C.cbl:644