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.
Condition names used
| APPL-AOK | means APPL-RESULT = 0 | CBTRN03C.cbl:151 |
| APPL-EOF | means APPL-RESULT = 16 | CBTRN03C.cbl:152 |
(PROCEDURE DIVISION)
| When | Then | At |
|---|---|---|
| PERFORM 1000-TRANFILE-GET-NEXT | CBTRN03C.cbl:172 |
| DISPLAY TRAN-RECORD | CBTRN03C.cbl:180 |
| PERFORM 1120-WRITE-ACCOUNT-TOTALS | CBTRN03C.cbl:183 |
| MOVE TRAN-CARD-NUM TO WS-CURR-CARD-NUM | CBTRN03C.cbl:185 |
| MOVE TRAN-CARD-NUM TO FD-XREF-CARD-NUM | CBTRN03C.cbl:186 |
| PERFORM 1500-A-LOOKUP-XREF | CBTRN03C.cbl:187 |
| MOVE TRAN-TYPE-CD OF TRAN-RECORD TO FD-TRAN-TYPE | CBTRN03C.cbl:189 |
| PERFORM 1500-B-LOOKUP-TRANTYPE | CBTRN03C.cbl:190 |
| MOVE TRAN-TYPE-CD OF TRAN-RECORD TO FD-TRAN-TYPE-CD OF FD-TRAN-CAT-KEY | CBTRN03C.cbl:191–192 |
| MOVE TRAN-CAT-CD OF TRAN-RECORD TO FD-TRAN-CAT-CD OF FD-TRAN-CAT-KEY | CBTRN03C.cbl:193–194 |
| PERFORM 1500-C-LOOKUP-TRANCATG | CBTRN03C.cbl:195 |
| PERFORM 1100-WRITE-TRANSACTION-REPORT | CBTRN03C.cbl:196 |
| DISPLAY 'TRAN-AMT ' TRAN-AMT | CBTRN03C.cbl:198 |
| DISPLAY 'WS-PAGE-TOTAL' WS-PAGE-TOTAL | CBTRN03C.cbl:199 |
| calc ADD TRAN-AMT TO WS-PAGE-TOTAL WS-ACCOUNT-TOTAL | CBTRN03C.cbl:200–201 |
| PERFORM 1110-WRITE-PAGE-TOTALS | CBTRN03C.cbl:202 |
| PERFORM 1110-WRITE-GRAND-TOTALS | CBTRN03C.cbl:203 |
0550-DATEPARM-READ
| When | Then | At |
|---|---|---|
| MOVE 0 TO APPL-RESULT | CBTRN03C.cbl:224 |
| MOVE 16 TO APPL-RESULT | CBTRN03C.cbl:226 |
| MOVE 12 TO APPL-RESULT | CBTRN03C.cbl:228 |
| DISPLAY 'Reporting from ' WS-START-DATE ' to ' WS-END-DATE | CBTRN03C.cbl:232–233 |
| MOVE 'Y' TO END-OF-FILE | CBTRN03C.cbl:236 |
| DISPLAY 'ERROR READING DATEPARM FILE' | CBTRN03C.cbl:238 |
| MOVE DATEPARM-STATUS TO IO-STATUS | CBTRN03C.cbl:239 |
| PERFORM 9910-DISPLAY-IO-STATUS | CBTRN03C.cbl:240 |
| PERFORM 9999-ABEND-PROGRAM | CBTRN03C.cbl:241 |
1000-TRANFILE-GET-NEXT
| When | Then | At |
|---|---|---|
| MOVE 0 TO APPL-RESULT | CBTRN03C.cbl:253 |
| MOVE 16 TO APPL-RESULT | CBTRN03C.cbl:255 |
| MOVE 12 TO APPL-RESULT | CBTRN03C.cbl:257 |
| MOVE 'Y' TO END-OF-FILE | CBTRN03C.cbl:264 |
| DISPLAY 'ERROR READING TRANSACTION FILE' | CBTRN03C.cbl:266 |
| MOVE TRANFILE-STATUS TO IO-STATUS | CBTRN03C.cbl:267 |
| PERFORM 9910-DISPLAY-IO-STATUS | CBTRN03C.cbl:268 |
| PERFORM 9999-ABEND-PROGRAM | CBTRN03C.cbl:269 |
1100-WRITE-TRANSACTION-REPORT
| When | Then | At |
|---|---|---|
| MOVE 'N' TO WS-FIRST-TIME | CBTRN03C.cbl:276 |
| MOVE WS-START-DATE TO REPT-START-DATE | CBTRN03C.cbl:277 |
| MOVE WS-END-DATE TO REPT-END-DATE | CBTRN03C.cbl:278 |
| PERFORM 1120-WRITE-HEADERS | CBTRN03C.cbl:279 |
| PERFORM 1110-WRITE-PAGE-TOTALS | CBTRN03C.cbl:283 |
| PERFORM 1120-WRITE-HEADERS | CBTRN03C.cbl:284 |
| always | calc ADD TRAN-AMT TO WS-PAGE-TOTAL WS-ACCOUNT-TOTAL | CBTRN03C.cbl:287–288 |
1110-WRITE-PAGE-TOTALS
| When | Then | At |
|---|---|---|
| always | calc ADD WS-PAGE-TOTAL TO WS-GRAND-TOTAL | CBTRN03C.cbl:297 |
| always | calc ADD 1 TO WS-LINE-COUNTER | CBTRN03C.cbl:299 |
| always | calc ADD 1 TO WS-LINE-COUNTER | CBTRN03C.cbl:302 |
1120-WRITE-ACCOUNT-TOTALS
| When | Then | At |
|---|---|---|
| always | calc ADD 1 TO WS-LINE-COUNTER | CBTRN03C.cbl:311 |
| always | calc ADD 1 TO WS-LINE-COUNTER | CBTRN03C.cbl:314 |
1120-WRITE-HEADERS
| When | Then | At |
|---|---|---|
| always | calc ADD 1 TO WS-LINE-COUNTER | CBTRN03C.cbl:327 |
| always | calc ADD 1 TO WS-LINE-COUNTER | CBTRN03C.cbl:331 |
| always | calc ADD 1 TO WS-LINE-COUNTER | CBTRN03C.cbl:335 |
| always | calc ADD 1 TO WS-LINE-COUNTER | CBTRN03C.cbl:339 |
1111-WRITE-REPORT-REC
| When | Then | At |
|---|---|---|
| MOVE 0 TO APPL-RESULT | CBTRN03C.cbl:347 |
| MOVE 12 TO APPL-RESULT | CBTRN03C.cbl:349 |
| DISPLAY 'ERROR WRITING REPTFILE' | CBTRN03C.cbl:354 |
| MOVE TRANREPT-STATUS TO IO-STATUS | CBTRN03C.cbl:355 |
| PERFORM 9910-DISPLAY-IO-STATUS | CBTRN03C.cbl:356 |
| PERFORM 9999-ABEND-PROGRAM | CBTRN03C.cbl:357 |
1120-WRITE-DETAIL
| When | Then | At |
|---|---|---|
| always | calc ADD 1 TO WS-LINE-COUNTER | CBTRN03C.cbl:373 |
0000-TRANFILE-OPEN
| When | Then | At |
|---|---|---|
| MOVE 0 TO APPL-RESULT | CBTRN03C.cbl:380 |
| MOVE 12 TO APPL-RESULT | CBTRN03C.cbl:382 |
| DISPLAY 'ERROR OPENING TRANFILE' | CBTRN03C.cbl:387 |
| MOVE TRANFILE-STATUS TO IO-STATUS | CBTRN03C.cbl:388 |
| PERFORM 9910-DISPLAY-IO-STATUS | CBTRN03C.cbl:389 |
| PERFORM 9999-ABEND-PROGRAM | CBTRN03C.cbl:390 |
0100-REPTFILE-OPEN
| When | Then | At |
|---|---|---|
| MOVE 0 TO APPL-RESULT | CBTRN03C.cbl:398 |
| MOVE 12 TO APPL-RESULT | CBTRN03C.cbl:400 |
| DISPLAY 'ERROR OPENING REPTFILE' | CBTRN03C.cbl:405 |
| MOVE TRANREPT-STATUS TO IO-STATUS | CBTRN03C.cbl:406 |
| PERFORM 9910-DISPLAY-IO-STATUS | CBTRN03C.cbl:407 |
| PERFORM 9999-ABEND-PROGRAM | CBTRN03C.cbl:408 |
0200-CARDXREF-OPEN
| When | Then | At |
|---|---|---|
| MOVE 0 TO APPL-RESULT | CBTRN03C.cbl:416 |
| MOVE 12 TO APPL-RESULT | CBTRN03C.cbl:418 |
| DISPLAY 'ERROR OPENING CROSS REF FILE' | CBTRN03C.cbl:423 |
| MOVE CARDXREF-STATUS TO IO-STATUS | CBTRN03C.cbl:424 |
| PERFORM 9910-DISPLAY-IO-STATUS | CBTRN03C.cbl:425 |
| PERFORM 9999-ABEND-PROGRAM | CBTRN03C.cbl:426 |
0300-TRANTYPE-OPEN
| When | Then | At |
|---|---|---|
| MOVE 0 TO APPL-RESULT | CBTRN03C.cbl:434 |
| MOVE 12 TO APPL-RESULT | CBTRN03C.cbl:436 |
| DISPLAY 'ERROR OPENING TRANSACTION TYPE FILE' | CBTRN03C.cbl:441 |
| MOVE TRANTYPE-STATUS TO IO-STATUS | CBTRN03C.cbl:442 |
| PERFORM 9910-DISPLAY-IO-STATUS | CBTRN03C.cbl:443 |
| PERFORM 9999-ABEND-PROGRAM | CBTRN03C.cbl:444 |
0400-TRANCATG-OPEN
| When | Then | At |
|---|---|---|
| MOVE 0 TO APPL-RESULT | CBTRN03C.cbl:452 |
| MOVE 12 TO APPL-RESULT | CBTRN03C.cbl:454 |
| DISPLAY 'ERROR OPENING TRANSACTION CATG FILE' | CBTRN03C.cbl:459 |
| MOVE TRANCATG-STATUS TO IO-STATUS | CBTRN03C.cbl:460 |
| PERFORM 9910-DISPLAY-IO-STATUS | CBTRN03C.cbl:461 |
| PERFORM 9999-ABEND-PROGRAM | CBTRN03C.cbl:462 |
0500-DATEPARM-OPEN
| When | Then | At |
|---|---|---|
| MOVE 0 TO APPL-RESULT | CBTRN03C.cbl:470 |
| MOVE 12 TO APPL-RESULT | CBTRN03C.cbl:472 |
| DISPLAY 'ERROR OPENING DATE PARM FILE' | CBTRN03C.cbl:477 |
| MOVE DATEPARM-STATUS TO IO-STATUS | CBTRN03C.cbl:478 |
| PERFORM 9910-DISPLAY-IO-STATUS | CBTRN03C.cbl:479 |
| PERFORM 9999-ABEND-PROGRAM | CBTRN03C.cbl:480 |
1500-A-LOOKUP-XREF
| When | Then | At |
|---|---|---|
| DISPLAY 'INVALID CARD NUMBER : ' FD-XREF-CARD-NUM | CBTRN03C.cbl:487 |
| MOVE 23 TO IO-STATUS | CBTRN03C.cbl:488 |
| PERFORM 9910-DISPLAY-IO-STATUS | CBTRN03C.cbl:489 |
| PERFORM 9999-ABEND-PROGRAM | CBTRN03C.cbl:490 |
1500-B-LOOKUP-TRANTYPE
| When | Then | At |
|---|---|---|
| DISPLAY 'INVALID TRANSACTION TYPE : ' FD-TRAN-TYPE | CBTRN03C.cbl:497 |
| MOVE 23 TO IO-STATUS | CBTRN03C.cbl:498 |
| PERFORM 9910-DISPLAY-IO-STATUS | CBTRN03C.cbl:499 |
| PERFORM 9999-ABEND-PROGRAM | CBTRN03C.cbl:500 |
1500-C-LOOKUP-TRANCATG
| When | Then | At |
|---|---|---|
| DISPLAY 'INVALID TRAN CATG KEY : ' FD-TRAN-CAT-KEY | CBTRN03C.cbl:507 |
| MOVE 23 TO IO-STATUS | CBTRN03C.cbl:508 |
| PERFORM 9910-DISPLAY-IO-STATUS | CBTRN03C.cbl:509 |
| PERFORM 9999-ABEND-PROGRAM | CBTRN03C.cbl:510 |
9000-TRANFILE-CLOSE
| When | Then | At |
|---|---|---|
| always | calc ADD 8 TO ZERO GIVING APPL-RESULT | CBTRN03C.cbl:515 |
| calc SUBTRACT APPL-RESULT FROM APPL-RESULT | CBTRN03C.cbl:518 |
| calc ADD 12 TO ZERO GIVING APPL-RESULT | CBTRN03C.cbl:520 |
| DISPLAY 'ERROR CLOSING POSTED TRANSACTION FILE' | CBTRN03C.cbl:525 |
| MOVE TRANFILE-STATUS TO IO-STATUS | CBTRN03C.cbl:526 |
| PERFORM 9910-DISPLAY-IO-STATUS | CBTRN03C.cbl:527 |
| PERFORM 9999-ABEND-PROGRAM | CBTRN03C.cbl:528 |
9100-REPTFILE-CLOSE
| When | Then | At |
|---|---|---|
| always | calc ADD 8 TO ZERO GIVING APPL-RESULT | CBTRN03C.cbl:533 |
| calc SUBTRACT APPL-RESULT FROM APPL-RESULT | CBTRN03C.cbl:536 |
| calc ADD 12 TO ZERO GIVING APPL-RESULT | CBTRN03C.cbl:538 |
| DISPLAY 'ERROR CLOSING REPORT FILE' | CBTRN03C.cbl:543 |
| MOVE TRANREPT-STATUS TO IO-STATUS | CBTRN03C.cbl:544 |
| PERFORM 9910-DISPLAY-IO-STATUS | CBTRN03C.cbl:545 |
| PERFORM 9999-ABEND-PROGRAM | CBTRN03C.cbl:546 |
9200-CARDXREF-CLOSE
| When | Then | At |
|---|---|---|
| MOVE 0 TO APPL-RESULT | CBTRN03C.cbl:555 |
| MOVE 12 TO APPL-RESULT | CBTRN03C.cbl:557 |
| DISPLAY 'ERROR CLOSING CROSS REF FILE' | CBTRN03C.cbl:562 |
| MOVE CARDXREF-STATUS TO IO-STATUS | CBTRN03C.cbl:563 |
| PERFORM 9910-DISPLAY-IO-STATUS | CBTRN03C.cbl:564 |
| PERFORM 9999-ABEND-PROGRAM | CBTRN03C.cbl:565 |
9300-TRANTYPE-CLOSE
| When | Then | At |
|---|---|---|
| MOVE 0 TO APPL-RESULT | CBTRN03C.cbl:573 |
| MOVE 12 TO APPL-RESULT | CBTRN03C.cbl:575 |
| DISPLAY 'ERROR CLOSING TRANSACTION TYPE FILE' | CBTRN03C.cbl:580 |
| MOVE TRANTYPE-STATUS TO IO-STATUS | CBTRN03C.cbl:581 |
| PERFORM 9910-DISPLAY-IO-STATUS | CBTRN03C.cbl:582 |
| PERFORM 9999-ABEND-PROGRAM | CBTRN03C.cbl:583 |
9400-TRANCATG-CLOSE
| When | Then | At |
|---|---|---|
| MOVE 0 TO APPL-RESULT | CBTRN03C.cbl:591 |
| MOVE 12 TO APPL-RESULT | CBTRN03C.cbl:593 |
| DISPLAY 'ERROR CLOSING TRANSACTION CATG FILE' | CBTRN03C.cbl:598 |
| MOVE TRANCATG-STATUS TO IO-STATUS | CBTRN03C.cbl:599 |
| PERFORM 9910-DISPLAY-IO-STATUS | CBTRN03C.cbl:600 |
| PERFORM 9999-ABEND-PROGRAM | CBTRN03C.cbl:601 |
9500-DATEPARM-CLOSE
| When | Then | At |
|---|---|---|
| MOVE 0 TO APPL-RESULT | CBTRN03C.cbl:609 |
| MOVE 12 TO APPL-RESULT | CBTRN03C.cbl:611 |
| DISPLAY 'ERROR CLOSING DATE PARM FILE' | CBTRN03C.cbl:616 |
| MOVE DATEPARM-STATUS TO IO-STATUS | CBTRN03C.cbl:617 |
| PERFORM 9910-DISPLAY-IO-STATUS | CBTRN03C.cbl:618 |
| PERFORM 9999-ABEND-PROGRAM | CBTRN03C.cbl:619 |
9910-DISPLAY-IO-STATUS
| When | Then | At |
|---|---|---|
| MOVE IO-STAT1 TO IO-STATUS-04(1:1) | CBTRN03C.cbl:636 |
| MOVE 0 TO TWO-BYTES-BINARY | CBTRN03C.cbl:637 |
| MOVE IO-STAT2 TO TWO-BYTES-RIGHT | CBTRN03C.cbl:638 |
| MOVE TWO-BYTES-BINARY TO IO-STATUS-0403 | CBTRN03C.cbl:639 |
| DISPLAY 'FILE STATUS IS: NNNN' IO-STATUS-04 | CBTRN03C.cbl:640 |
| MOVE '0000' TO IO-STATUS-04 | CBTRN03C.cbl:642 |
| MOVE IO-STATUS TO IO-STATUS-04(3:2) | CBTRN03C.cbl:643 |
| DISPLAY 'FILE STATUS IS: NNNN' IO-STATUS-04 | CBTRN03C.cbl:644 |