Business rules · 91 guarded actionsCBSTM03A
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
| END-OF-TIOT | means FILLER = LOW-VALUES | CBSTM03A.CBL:260 |
| NULL-UCB | means UCB-ADDR = LOW-VALUES | CBSTM03A.CBL:258 |
(PROCEDURE DIVISION)
| When | Then | At |
|---|---|---|
| always | calc COMPUTE BUMP-TIOT = BUMP-TIOT + LENGTH OF TIOT-BLOCK | CBSTM03A.CBL:272 |
| DISPLAY ': ' TIOCDDNM ' -- valid UCB' | CBSTM03A.CBL:279 |
| DISPLAY ': ' TIOCDDNM ' -- null UCB' | CBSTM03A.CBL:281 |
| calc COMPUTE BUMP-TIOT = BUMP-TIOT + LENGTH OF TIOT-SEG | CBSTM03A.CBL:283 |
| SET ADDRESS OF TIOT-ENTRY TO TIOT-INDEX | CBSTM03A.CBL:284 |
| DISPLAY ': ' TIOCDDNM ' -- valid UCB' | CBSTM03A.CBL:288 |
| DISPLAY ': ' TIOCDDNM ' -- null UCB' | CBSTM03A.CBL:290 |
0000-START
| When | Then | At |
|---|---|---|
| GO TO 8100-FILE-OPEN | CBSTM03A.CBL:301 |
| GO TO 8100-FILE-OPEN | CBSTM03A.CBL:304 |
| GO TO 8100-FILE-OPEN | CBSTM03A.CBL:307 |
| GO TO 8100-FILE-OPEN | CBSTM03A.CBL:310 |
| GO TO 8500-READTRNX-READ | CBSTM03A.CBL:312 |
| GO TO 9999-GOBACK | CBSTM03A.CBL:314 |
1000-MAINLINE
| When | Then | At |
|---|---|---|
| PERFORM 1000-XREFFILE-GET-NEXT | CBSTM03A.CBL:319 |
| PERFORM 2000-CUSTFILE-GET | CBSTM03A.CBL:321 |
| PERFORM 3000-ACCTFILE-GET | CBSTM03A.CBL:322 |
| PERFORM 5000-CREATE-STATEMENT | CBSTM03A.CBL:323 |
| MOVE 1 TO CR-JMP | CBSTM03A.CBL:324 |
| MOVE ZERO TO WS-TOTAL-AMT | CBSTM03A.CBL:325 |
| PERFORM 4000-TRNXFILE-GET | CBSTM03A.CBL:326 |
1000-XREFFILE-GET-NEXT
| When | Then | At |
|---|---|---|
| always | MOVE 'XREFFILE' TO WS-M03B-DD | CBSTM03A.CBL:347 |
| MOVE 'Y' TO END-OF-FILE | CBSTM03A.CBL:357 |
| DISPLAY 'ERROR READING XREFFILE' | CBSTM03A.CBL:359 |
| DISPLAY 'RETURN CODE: ' WS-M03B-RC | CBSTM03A.CBL:360 |
| PERFORM 9999-ABEND-PROGRAM | CBSTM03A.CBL:361 |
2000-CUSTFILE-GET
| When | Then | At |
|---|---|---|
| always | MOVE 'CUSTFILE' TO WS-M03B-DD | CBSTM03A.CBL:370 |
| always | calc COMPUTE WS-M03B-KEY-LN = LENGTH OF XREF-CUST-ID | CBSTM03A.CBL:374 |
| DISPLAY 'ERROR READING CUSTFILE' | CBSTM03A.CBL:383 |
| DISPLAY 'RETURN CODE: ' WS-M03B-RC | CBSTM03A.CBL:384 |
| PERFORM 9999-ABEND-PROGRAM | CBSTM03A.CBL:385 |
3000-ACCTFILE-GET
| When | Then | At |
|---|---|---|
| always | MOVE 'ACCTFILE' TO WS-M03B-DD | CBSTM03A.CBL:394 |
| always | calc COMPUTE WS-M03B-KEY-LN = LENGTH OF XREF-ACCT-ID | CBSTM03A.CBL:398 |
| DISPLAY 'ERROR READING ACCTFILE' | CBSTM03A.CBL:407 |
| DISPLAY 'RETURN CODE: ' WS-M03B-RC | CBSTM03A.CBL:408 |
| PERFORM 9999-ABEND-PROGRAM | CBSTM03A.CBL:409 |
4000-TRNXFILE-GET
| When | Then | At |
|---|---|---|
| MOVE WS-CARD-NUM (CR-JMP) TO TRNX-CARD-NUM | CBSTM03A.CBL:421 |
| PERFORM VARYING TR-JMP FROM 1 BY 1 UNTIL (TR-JMP > WS-TRCT (CR-JMP)) | CBSTM03A.CBL:422–423 |
| MOVE WS-TRAN-NUM (CR-JMP TR-JMP) TO TRNX-ID | CBSTM03A.CBL:424–425 |
| MOVE WS-TRAN-REST (CR-JMP TR-JMP) TO TRNX-REST | CBSTM03A.CBL:426–427 |
| PERFORM 6000-WRITE-TRANS | CBSTM03A.CBL:428 |
| calc ADD TRNX-AMT TO WS-TOTAL-AMT | CBSTM03A.CBL:429 |
8100-TRNXFILE-OPEN
| When | Then | At |
|---|---|---|
| always | MOVE 'TRNXFILE' TO WS-M03B-DD | CBSTM03A.CBL:731 |
| DISPLAY 'ERROR OPENING TRNXFILE' | CBSTM03A.CBL:739 |
| DISPLAY 'RETURN CODE: ' WS-M03B-RC | CBSTM03A.CBL:740 |
| PERFORM 9999-ABEND-PROGRAM | CBSTM03A.CBL:741 |
| DISPLAY 'ERROR READING TRNXFILE' | CBSTM03A.CBL:751 |
| DISPLAY 'RETURN CODE: ' WS-M03B-RC | CBSTM03A.CBL:752 |
| PERFORM 9999-ABEND-PROGRAM | CBSTM03A.CBL:753 |
| always | MOVE 'READTRNX' TO WS-FL-DD | CBSTM03A.CBL:760 |
8200-XREFFILE-OPEN
| When | Then | At |
|---|---|---|
| always | MOVE 'XREFFILE' TO WS-M03B-DD | CBSTM03A.CBL:766 |
| DISPLAY 'ERROR OPENING XREFFILE' | CBSTM03A.CBL:774 |
| DISPLAY 'RETURN CODE: ' WS-M03B-RC | CBSTM03A.CBL:775 |
| PERFORM 9999-ABEND-PROGRAM | CBSTM03A.CBL:776 |
| always | MOVE 'CUSTFILE' TO WS-FL-DD | CBSTM03A.CBL:779 |
8300-CUSTFILE-OPEN
| When | Then | At |
|---|---|---|
| always | MOVE 'CUSTFILE' TO WS-M03B-DD | CBSTM03A.CBL:784 |
| DISPLAY 'ERROR OPENING CUSTFILE' | CBSTM03A.CBL:792 |
| DISPLAY 'RETURN CODE: ' WS-M03B-RC | CBSTM03A.CBL:793 |
| PERFORM 9999-ABEND-PROGRAM | CBSTM03A.CBL:794 |
| always | MOVE 'ACCTFILE' TO WS-FL-DD | CBSTM03A.CBL:797 |
8400-ACCTFILE-OPEN
| When | Then | At |
|---|---|---|
| always | MOVE 'ACCTFILE' TO WS-M03B-DD | CBSTM03A.CBL:802 |
| DISPLAY 'ERROR OPENING ACCTFILE' | CBSTM03A.CBL:810 |
| DISPLAY 'RETURN CODE: ' WS-M03B-RC | CBSTM03A.CBL:811 |
| PERFORM 9999-ABEND-PROGRAM | CBSTM03A.CBL:812 |
8500-READTRNX-READ
| When | Then | At |
|---|---|---|
| calc ADD 1 TO TR-CNT | CBSTM03A.CBL:820 |
| MOVE TR-CNT TO WS-TRCT (CR-CNT) | CBSTM03A.CBL:822 |
| calc ADD 1 TO CR-CNT | CBSTM03A.CBL:823 |
| MOVE 1 TO TR-CNT | CBSTM03A.CBL:824 |
| always | MOVE 'TRNXFILE' TO WS-M03B-DD | CBSTM03A.CBL:832 |
| MOVE WS-M03B-FLDT TO TRNX-RECORD | CBSTM03A.CBL:839 |
| GO TO 8500-READTRNX-READ | CBSTM03A.CBL:840 |
| GO TO 8599-EXIT | CBSTM03A.CBL:842 |
| DISPLAY 'ERROR READING TRNXFILE' | CBSTM03A.CBL:844 |
| DISPLAY 'RETURN CODE: ' WS-M03B-RC | CBSTM03A.CBL:845 |
| PERFORM 9999-ABEND-PROGRAM | CBSTM03A.CBL:846 |
8599-EXIT
| When | Then | At |
|---|---|---|
| always | MOVE 'XREFFILE' TO WS-FL-DD | CBSTM03A.CBL:851 |
9100-TRNXFILE-CLOSE
| When | Then | At |
|---|---|---|
| always | MOVE 'TRNXFILE' TO WS-M03B-DD | CBSTM03A.CBL:857 |
| DISPLAY 'ERROR CLOSING TRNXFILE' | CBSTM03A.CBL:865 |
| DISPLAY 'RETURN CODE: ' WS-M03B-RC | CBSTM03A.CBL:866 |
| PERFORM 9999-ABEND-PROGRAM | CBSTM03A.CBL:867 |
9200-XREFFILE-CLOSE
| When | Then | At |
|---|---|---|
| always | MOVE 'XREFFILE' TO WS-M03B-DD | CBSTM03A.CBL:874 |
| DISPLAY 'ERROR CLOSING XREFFILE' | CBSTM03A.CBL:882 |
| DISPLAY 'RETURN CODE: ' WS-M03B-RC | CBSTM03A.CBL:883 |
| PERFORM 9999-ABEND-PROGRAM | CBSTM03A.CBL:884 |
9300-CUSTFILE-CLOSE
| When | Then | At |
|---|---|---|
| always | MOVE 'CUSTFILE' TO WS-M03B-DD | CBSTM03A.CBL:890 |
| DISPLAY 'ERROR CLOSING CUSTFILE' | CBSTM03A.CBL:898 |
| DISPLAY 'RETURN CODE: ' WS-M03B-RC | CBSTM03A.CBL:899 |
| PERFORM 9999-ABEND-PROGRAM | CBSTM03A.CBL:900 |
9400-ACCTFILE-CLOSE
| When | Then | At |
|---|---|---|
| always | MOVE 'ACCTFILE' TO WS-M03B-DD | CBSTM03A.CBL:906 |
| DISPLAY 'ERROR CLOSING ACCTFILE' | CBSTM03A.CBL:914 |
| DISPLAY 'RETURN CODE: ' WS-M03B-RC | CBSTM03A.CBL:915 |
| PERFORM 9999-ABEND-PROGRAM | CBSTM03A.CBL:916 |