MFmainframe-rea
WS carddemo · 26f629ef

Business rules · 30 guarded actionsPAUDBUNL

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.

4 rules

1000-INITIALIZE

WhenThenAt
  1. NOT (WS-OUTFL1-STATUS = SPACES OR '00')
DISPLAY 'ERROR IN OPENING OPFILE1:' WS-OUTFL1-STATUSPAUDBUNL.CBL:190
  1. NOT (WS-OUTFL1-STATUS = SPACES OR '00')
PERFORM 9999-ABENDPAUDBUNL.CBL:191
  1. NOT (WS-OUTFL2-STATUS = SPACES OR '00')
DISPLAY 'ERROR IN OPENING OPFILE2:' WS-OUTFL2-STATUSPAUDBUNL.CBL:198
  1. NOT (WS-OUTFL2-STATUS = SPACES OR '00')
PERFORM 9999-ABENDPAUDBUNL.CBL:199
14 rules

2000-FIND-NEXT-AUTH-SUMMARY

WhenThenAt
  1. PAUT-PCB-STATUS = SPACES
calc ADD 1 TO WS-NO-SUMRY-READPAUDBUNL.CBL:225
  1. PAUT-PCB-STATUS = SPACES
calc ADD 1 TO WS-AUTH-SMRY-PROC-CNTPAUDBUNL.CBL:226
  1. PAUT-PCB-STATUS = SPACES
MOVE PENDING-AUTH-SUMMARY TO OPFIL1-RECPAUDBUNL.CBL:227
  1. PAUT-PCB-STATUS = SPACES
INITIALIZE ROOT-SEG-KEYPAUDBUNL.CBL:228
  1. PAUT-PCB-STATUS = SPACES
INITIALIZE CHILD-SEG-RECPAUDBUNL.CBL:229
  1. PAUT-PCB-STATUS = SPACES
MOVE PA-ACCT-ID TO ROOT-SEG-KEYPAUDBUNL.CBL:230
  1. PAUT-PCB-STATUS = SPACES
  2. PA-ACCT-ID IS NUMERIC
WRITE OPFIL1-RECPAUDBUNL.CBL:233
  1. PAUT-PCB-STATUS = SPACES
  2. PA-ACCT-ID IS NUMERIC
INITIALIZE WS-END-OF-CHILD-SEGPAUDBUNL.CBL:234
  1. PAUT-PCB-STATUS = SPACES
  2. PA-ACCT-ID IS NUMERIC
PERFORM 3000-FIND-NEXT-AUTH-DTL THRU 3000-EXIT UNTIL WS-END-OF-CHILD-SEG='Y'PAUDBUNL.CBL:235–236
  1. PAUT-PCB-STATUS = 'GB'
SET END-OF-AUTHDB TO TRUEPAUDBUNL.CBL:240
  1. PAUT-PCB-STATUS = 'GB'
MOVE 'Y' TO WS-END-OF-ROOT-SEGPAUDBUNL.CBL:241
  1. PAUT-PCB-STATUS NOT EQUAL TO SPACES AND 'GB'
DISPLAY 'AUTH SUM GN FAILED :' PAUT-PCB-STATUSPAUDBUNL.CBL:244
  1. PAUT-PCB-STATUS NOT EQUAL TO SPACES AND 'GB'
DISPLAY 'KEY FEEDBACK AREA :' PAUT-KEYFBPAUDBUNL.CBL:245
  1. PAUT-PCB-STATUS NOT EQUAL TO SPACES AND 'GB'
PERFORM 9999-ABENDPAUDBUNL.CBL:246
10 rules

3000-FIND-NEXT-AUTH-DTL

WhenThenAt
  1. PAUT-PCB-STATUS = SPACES
SET MORE-AUTHS TO TRUEPAUDBUNL.CBL:267
  1. PAUT-PCB-STATUS = SPACES
calc ADD 1 TO WS-NO-SUMRY-READPAUDBUNL.CBL:268
  1. PAUT-PCB-STATUS = SPACES
calc ADD 1 TO WS-AUTH-SMRY-PROC-CNTPAUDBUNL.CBL:269
  1. PAUT-PCB-STATUS = SPACES
MOVE PENDING-AUTH-DETAILS TO CHILD-SEG-RECPAUDBUNL.CBL:270
  1. PAUT-PCB-STATUS = SPACES
WRITE OPFIL2-RECPAUDBUNL.CBL:271
  1. PAUT-PCB-STATUS = 'GE'
MOVE 'Y' TO WS-END-OF-CHILD-SEGPAUDBUNL.CBL:275
  1. PAUT-PCB-STATUS = 'GE'
DISPLAY 'CHILD SEG FLAG GE : ' WS-END-OF-CHILD-SEGPAUDBUNL.CBL:276–277
  1. PAUT-PCB-STATUS NOT EQUAL TO SPACES AND 'GE'
DISPLAY 'GNP CALL FAILED :' PAUT-PCB-STATUSPAUDBUNL.CBL:280
  1. PAUT-PCB-STATUS NOT EQUAL TO SPACES AND 'GE'
DISPLAY 'KFB AREA IN CHILD:' PAUT-KEYFBPAUDBUNL.CBL:281
  1. PAUT-PCB-STATUS NOT EQUAL TO SPACES AND 'GE'
PERFORM 9999-ABENDPAUDBUNL.CBL:282
2 rules

4000-FILE-CLOSE

WhenThenAt
  1. NOT (WS-OUTFL1-STATUS = SPACES OR '00')
DISPLAY 'ERROR IN CLOSING 1ST FILE:'WS-OUTFL1-STATUSPAUDBUNL.CBL:296
  1. NOT (WS-OUTFL2-STATUS = SPACES OR '00')
DISPLAY 'ERROR IN CLOSING 2ND FILE:'WS-OUTFL2-STATUSPAUDBUNL.CBL:303