MFmainframe-rea
WS carddemo · 26f629ef

Business rules · 207 guarded actionsCOTRN00C

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

CDEMO-PGM-REENTERmeans CDEMO-PGM-CONTEXT = 1COCOM01Y.cpy:31 via COTRN00C.cbl:61
ERR-FLG-ONmeans WS-ERR-FLG = 'Y'COTRN00C.cbl:41
NEXT-PAGE-YESmeans CDEMO-CT00-NEXT-PAGE-FLG = 'Y'COTRN00C.cbl:67
TRANSACT-NOT-EOFmeans WS-TRANSACT-EOF = 'N'COTRN00C.cbl:45
ERR-FLG-OFFmeans WS-ERR-FLG = 'N'COTRN00C.cbl:42
TRANSACT-EOFmeans WS-TRANSACT-EOF = 'Y'COTRN00C.cbl:44
SEND-ERASE-YESmeans WS-SEND-ERASE-FLG = 'Y'COTRN00C.cbl:47
17 rules

MAIN-PARA

WhenThenAt
  1. EIBCALEN = 0
MOVE 'COSGN00C' TO CDEMO-TO-PROGRAMCOTRN00C.cbl:108
  1. EIBCALEN = 0
PERFORM RETURN-TO-PREV-SCREENCOTRN00C.cbl:109
  1. NOT (EIBCALEN = 0)
MOVE DFHCOMMAREA(1:EIBCALEN) TO CARDDEMO-COMMAREACOTRN00C.cbl:111
  1. NOT (EIBCALEN = 0)
  2. NOT CDEMO-PGM-REENTER
SET CDEMO-PGM-REENTER TO TRUECOTRN00C.cbl:113
  1. NOT (EIBCALEN = 0)
  2. NOT CDEMO-PGM-REENTER
MOVE LOW-VALUES TO COTRN0AOCOTRN00C.cbl:114
  1. NOT (EIBCALEN = 0)
  2. NOT CDEMO-PGM-REENTER
PERFORM PROCESS-ENTER-KEYCOTRN00C.cbl:115
  1. NOT (EIBCALEN = 0)
  2. NOT CDEMO-PGM-REENTER
PERFORM SEND-TRNLST-SCREENCOTRN00C.cbl:116
  1. NOT (EIBCALEN = 0)
  2. CDEMO-PGM-REENTER
PERFORM RECEIVE-TRNLST-SCREENCOTRN00C.cbl:118
  1. NOT (EIBCALEN = 0)
  2. CDEMO-PGM-REENTER
  3. EIBAID = DFHENTER
PERFORM PROCESS-ENTER-KEYCOTRN00C.cbl:121
  1. NOT (EIBCALEN = 0)
  2. CDEMO-PGM-REENTER
  3. EIBAID = DFHPF3
MOVE 'COMEN01C' TO CDEMO-TO-PROGRAMCOTRN00C.cbl:123
  1. NOT (EIBCALEN = 0)
  2. CDEMO-PGM-REENTER
  3. EIBAID = DFHPF3
PERFORM RETURN-TO-PREV-SCREENCOTRN00C.cbl:124
  1. NOT (EIBCALEN = 0)
  2. CDEMO-PGM-REENTER
  3. EIBAID = DFHPF7
PERFORM PROCESS-PF7-KEYCOTRN00C.cbl:126
  1. NOT (EIBCALEN = 0)
  2. CDEMO-PGM-REENTER
  3. EIBAID = DFHPF8
PERFORM PROCESS-PF8-KEYCOTRN00C.cbl:128
  1. NOT (EIBCALEN = 0)
  2. CDEMO-PGM-REENTER
  3. EIBAID is none of [DFHENTER; DFHPF3; DFHPF7; DFHPF8]
MOVE 'Y' TO WS-ERR-FLGCOTRN00C.cbl:130
  1. NOT (EIBCALEN = 0)
  2. CDEMO-PGM-REENTER
  3. EIBAID is none of [DFHENTER; DFHPF3; DFHPF7; DFHPF8]
MOVE -1 TO TRNIDINL OF COTRN0AICOTRN00C.cbl:131
  1. NOT (EIBCALEN = 0)
  2. CDEMO-PGM-REENTER
  3. EIBAID is none of [DFHENTER; DFHPF3; DFHPF7; DFHPF8]
MOVE CCDA-MSG-INVALID-KEY TO WS-MESSAGECOTRN00C.cbl:132
  1. NOT (EIBCALEN = 0)
  2. CDEMO-PGM-REENTER
  3. EIBAID is none of [DFHENTER; DFHPF3; DFHPF7; DFHPF8]
PERFORM SEND-TRNLST-SCREENCOTRN00C.cbl:133
36 rules

PROCESS-ENTER-KEY

WhenThenAt
  1. SEL0001I OF COTRN0AI NOT = SPACES AND LOW-VALUES
MOVE SEL0001I OF COTRN0AI TO CDEMO-CT00-TRN-SEL-FLGCOTRN00C.cbl:150
  1. SEL0001I OF COTRN0AI NOT = SPACES AND LOW-VALUES
MOVE TRNID01I OF COTRN0AI TO CDEMO-CT00-TRN-SELECTEDCOTRN00C.cbl:151
  1. SEL0002I OF COTRN0AI NOT = SPACES AND LOW-VALUES
MOVE SEL0002I OF COTRN0AI TO CDEMO-CT00-TRN-SEL-FLGCOTRN00C.cbl:153
  1. SEL0002I OF COTRN0AI NOT = SPACES AND LOW-VALUES
MOVE TRNID02I OF COTRN0AI TO CDEMO-CT00-TRN-SELECTEDCOTRN00C.cbl:154
  1. SEL0003I OF COTRN0AI NOT = SPACES AND LOW-VALUES
MOVE SEL0003I OF COTRN0AI TO CDEMO-CT00-TRN-SEL-FLGCOTRN00C.cbl:156
  1. SEL0003I OF COTRN0AI NOT = SPACES AND LOW-VALUES
MOVE TRNID03I OF COTRN0AI TO CDEMO-CT00-TRN-SELECTEDCOTRN00C.cbl:157
  1. SEL0004I OF COTRN0AI NOT = SPACES AND LOW-VALUES
MOVE SEL0004I OF COTRN0AI TO CDEMO-CT00-TRN-SEL-FLGCOTRN00C.cbl:159
  1. SEL0004I OF COTRN0AI NOT = SPACES AND LOW-VALUES
MOVE TRNID04I OF COTRN0AI TO CDEMO-CT00-TRN-SELECTEDCOTRN00C.cbl:160
  1. SEL0005I OF COTRN0AI NOT = SPACES AND LOW-VALUES
MOVE SEL0005I OF COTRN0AI TO CDEMO-CT00-TRN-SEL-FLGCOTRN00C.cbl:162
  1. SEL0005I OF COTRN0AI NOT = SPACES AND LOW-VALUES
MOVE TRNID05I OF COTRN0AI TO CDEMO-CT00-TRN-SELECTEDCOTRN00C.cbl:163
  1. SEL0006I OF COTRN0AI NOT = SPACES AND LOW-VALUES
MOVE SEL0006I OF COTRN0AI TO CDEMO-CT00-TRN-SEL-FLGCOTRN00C.cbl:165
  1. SEL0006I OF COTRN0AI NOT = SPACES AND LOW-VALUES
MOVE TRNID06I OF COTRN0AI TO CDEMO-CT00-TRN-SELECTEDCOTRN00C.cbl:166
  1. SEL0007I OF COTRN0AI NOT = SPACES AND LOW-VALUES
MOVE SEL0007I OF COTRN0AI TO CDEMO-CT00-TRN-SEL-FLGCOTRN00C.cbl:168
  1. SEL0007I OF COTRN0AI NOT = SPACES AND LOW-VALUES
MOVE TRNID07I OF COTRN0AI TO CDEMO-CT00-TRN-SELECTEDCOTRN00C.cbl:169
  1. SEL0008I OF COTRN0AI NOT = SPACES AND LOW-VALUES
MOVE SEL0008I OF COTRN0AI TO CDEMO-CT00-TRN-SEL-FLGCOTRN00C.cbl:171
  1. SEL0008I OF COTRN0AI NOT = SPACES AND LOW-VALUES
MOVE TRNID08I OF COTRN0AI TO CDEMO-CT00-TRN-SELECTEDCOTRN00C.cbl:172
  1. SEL0009I OF COTRN0AI NOT = SPACES AND LOW-VALUES
MOVE SEL0009I OF COTRN0AI TO CDEMO-CT00-TRN-SEL-FLGCOTRN00C.cbl:174
  1. SEL0009I OF COTRN0AI NOT = SPACES AND LOW-VALUES
MOVE TRNID09I OF COTRN0AI TO CDEMO-CT00-TRN-SELECTEDCOTRN00C.cbl:175
  1. SEL0010I OF COTRN0AI NOT = SPACES AND LOW-VALUES
MOVE SEL0010I OF COTRN0AI TO CDEMO-CT00-TRN-SEL-FLGCOTRN00C.cbl:177
  1. SEL0010I OF COTRN0AI NOT = SPACES AND LOW-VALUES
MOVE TRNID10I OF COTRN0AI TO CDEMO-CT00-TRN-SELECTEDCOTRN00C.cbl:178
  1. TRUE is none of [SEL0001I OF COTRN0AI NOT = SPACES AND LOW-VALUES; SEL0002I OF COTRN0AI NOT = SPACES AND LOW-VALUES; SEL0003I OF COTRN0AI NOT = SPACES AND LOW-VALUES; SEL0004I OF COTRN0AI NOT = SPACES AND LOW-VALUES; SEL0005I OF COTRN0AI NOT = SPACES AND LOW-VALUES; SEL0006I OF COTRN0AI NOT = SPACES AND LOW-VALUES; SEL0007I OF COTRN0AI NOT = SPACES AND LOW-VALUES; SEL0008I OF COTRN0AI NOT = SPACES AND LOW-VALUES; SEL0009I OF COTRN0AI NOT = SPACES AND LOW-VALUES; SEL0010I OF COTRN0AI NOT = SPACES AND LOW-VALUES]
MOVE SPACES TO CDEMO-CT00-TRN-SEL-FLGCOTRN00C.cbl:180
  1. TRUE is none of [SEL0001I OF COTRN0AI NOT = SPACES AND LOW-VALUES; SEL0002I OF COTRN0AI NOT = SPACES AND LOW-VALUES; SEL0003I OF COTRN0AI NOT = SPACES AND LOW-VALUES; SEL0004I OF COTRN0AI NOT = SPACES AND LOW-VALUES; SEL0005I OF COTRN0AI NOT = SPACES AND LOW-VALUES; SEL0006I OF COTRN0AI NOT = SPACES AND LOW-VALUES; SEL0007I OF COTRN0AI NOT = SPACES AND LOW-VALUES; SEL0008I OF COTRN0AI NOT = SPACES AND LOW-VALUES; SEL0009I OF COTRN0AI NOT = SPACES AND LOW-VALUES; SEL0010I OF COTRN0AI NOT = SPACES AND LOW-VALUES]
MOVE SPACES TO CDEMO-CT00-TRN-SELECTEDCOTRN00C.cbl:181
  1. (CDEMO-CT00-TRN-SEL-FLG NOT = SPACES AND LOW-VALUES) AND (CDEMO-CT00-TRN-SELECTED NOT = SPACES AND LOW-VALUES)
  2. CDEMO-CT00-TRN-SEL-FLG = 'S' OR CDEMO-CT00-TRN-SEL-FLG = 's'
MOVE 'COTRN01C' TO CDEMO-TO-PROGRAMCOTRN00C.cbl:188
  1. (CDEMO-CT00-TRN-SEL-FLG NOT = SPACES AND LOW-VALUES) AND (CDEMO-CT00-TRN-SELECTED NOT = SPACES AND LOW-VALUES)
  2. CDEMO-CT00-TRN-SEL-FLG = 'S' OR CDEMO-CT00-TRN-SEL-FLG = 's'
MOVE WS-TRANID TO CDEMO-FROM-TRANIDCOTRN00C.cbl:189
  1. (CDEMO-CT00-TRN-SEL-FLG NOT = SPACES AND LOW-VALUES) AND (CDEMO-CT00-TRN-SELECTED NOT = SPACES AND LOW-VALUES)
  2. CDEMO-CT00-TRN-SEL-FLG = 'S' OR CDEMO-CT00-TRN-SEL-FLG = 's'
MOVE WS-PGMNAME TO CDEMO-FROM-PROGRAMCOTRN00C.cbl:190
  1. (CDEMO-CT00-TRN-SEL-FLG NOT = SPACES AND LOW-VALUES) AND (CDEMO-CT00-TRN-SELECTED NOT = SPACES AND LOW-VALUES)
  2. CDEMO-CT00-TRN-SEL-FLG = 'S' OR CDEMO-CT00-TRN-SEL-FLG = 's'
MOVE 0 TO CDEMO-PGM-CONTEXTCOTRN00C.cbl:191
  1. (CDEMO-CT00-TRN-SEL-FLG NOT = SPACES AND LOW-VALUES) AND (CDEMO-CT00-TRN-SELECTED NOT = SPACES AND LOW-VALUES)
  2. CDEMO-CT00-TRN-SEL-FLG = 'S' OR CDEMO-CT00-TRN-SEL-FLG = 's'
EXEC CICS XCTL PROGRAM(CDEMO-TO-PROGRAM) COMMAREA(CARDDEMO-COMMAREA) END-EXECCOTRN00C.cbl:192–195
  1. (CDEMO-CT00-TRN-SEL-FLG NOT = SPACES AND LOW-VALUES) AND (CDEMO-CT00-TRN-SELECTED NOT = SPACES AND LOW-VALUES)
  2. CDEMO-CT00-TRN-SEL-FLG is none of ['S'; 's']
MOVE 'Invalid selection. Valid value is S' TO WS-MESSAGECOTRN00C.cbl:198–200
  1. (CDEMO-CT00-TRN-SEL-FLG NOT = SPACES AND LOW-VALUES) AND (CDEMO-CT00-TRN-SELECTED NOT = SPACES AND LOW-VALUES)
  2. CDEMO-CT00-TRN-SEL-FLG is none of ['S'; 's']
MOVE -1 TO TRNIDINL OF COTRN0AICOTRN00C.cbl:201
  1. TRNIDINI OF COTRN0AI = SPACES OR LOW-VALUES
MOVE LOW-VALUES TO TRAN-IDCOTRN00C.cbl:207
  1. NOT (TRNIDINI OF COTRN0AI = SPACES OR LOW-VALUES)
  2. TRNIDINI OF COTRN0AI IS NUMERIC
MOVE TRNIDINI OF COTRN0AI TO TRAN-IDCOTRN00C.cbl:210
  1. NOT (TRNIDINI OF COTRN0AI = SPACES OR LOW-VALUES)
  2. NOT (TRNIDINI OF COTRN0AI IS NUMERIC)
MOVE 'Y' TO WS-ERR-FLGCOTRN00C.cbl:212
  1. NOT (TRNIDINI OF COTRN0AI = SPACES OR LOW-VALUES)
  2. NOT (TRNIDINI OF COTRN0AI IS NUMERIC)
MOVE 'Tran ID must be Numeric ...' TO WS-MESSAGECOTRN00C.cbl:213–215
  1. NOT (TRNIDINI OF COTRN0AI = SPACES OR LOW-VALUES)
  2. NOT (TRNIDINI OF COTRN0AI IS NUMERIC)
MOVE -1 TO TRNIDINL OF COTRN0AICOTRN00C.cbl:216
  1. NOT (TRNIDINI OF COTRN0AI = SPACES OR LOW-VALUES)
  2. NOT (TRNIDINI OF COTRN0AI IS NUMERIC)
PERFORM SEND-TRNLST-SCREENCOTRN00C.cbl:217
  1. NOT ERR-FLG-ON
MOVE SPACE TO TRNIDINO OF COTRN0AOCOTRN00C.cbl:228
6 rules

PROCESS-PF7-KEY

WhenThenAt
  1. CDEMO-CT00-TRNID-FIRST = SPACES OR LOW-VALUES
MOVE LOW-VALUES TO TRAN-IDCOTRN00C.cbl:237
  1. NOT (CDEMO-CT00-TRNID-FIRST = SPACES OR LOW-VALUES)
MOVE CDEMO-CT00-TRNID-FIRST TO TRAN-IDCOTRN00C.cbl:239
  1. CDEMO-CT00-PAGE-NUM > 1
PERFORM PROCESS-PAGE-BACKWARDCOTRN00C.cbl:246
  1. NOT (CDEMO-CT00-PAGE-NUM > 1)
MOVE 'You are already at the top of the page...' TO WS-MESSAGECOTRN00C.cbl:248–249
  1. NOT (CDEMO-CT00-PAGE-NUM > 1)
SET SEND-ERASE-NO TO TRUECOTRN00C.cbl:250
  1. NOT (CDEMO-CT00-PAGE-NUM > 1)
PERFORM SEND-TRNLST-SCREENCOTRN00C.cbl:251
6 rules

PROCESS-PF8-KEY

WhenThenAt
  1. CDEMO-CT00-TRNID-LAST = SPACES OR LOW-VALUES
MOVE HIGH-VALUES TO TRAN-IDCOTRN00C.cbl:260
  1. NOT (CDEMO-CT00-TRNID-LAST = SPACES OR LOW-VALUES)
MOVE CDEMO-CT00-TRNID-LAST TO TRAN-IDCOTRN00C.cbl:262
  1. NEXT-PAGE-YES
PERFORM PROCESS-PAGE-FORWARDCOTRN00C.cbl:268
  1. NOT (NEXT-PAGE-YES)
MOVE 'You are already at the bottom of the page...' TO WS-MESSAGECOTRN00C.cbl:270–271
  1. NOT (NEXT-PAGE-YES)
SET SEND-ERASE-NO TO TRUECOTRN00C.cbl:272
  1. NOT (NEXT-PAGE-YES)
PERFORM SEND-TRNLST-SCREENCOTRN00C.cbl:273
18 rules

PROCESS-PAGE-FORWARD

WhenThenAt
  1. NOT ERR-FLG-ON
  2. EIBAID NOT = DFHENTER AND DFHPF7 AND DFHPF3
PERFORM READNEXT-TRANSACT-FILECOTRN00C.cbl:286
  1. NOT ERR-FLG-ON
  2. TRANSACT-NOT-EOF AND ERR-FLG-OFF
PERFORM VARYING WS-IDX FROM 1 BY 1 UNTIL WS-IDX > 10COTRN00C.cbl:290
  1. NOT ERR-FLG-ON
  2. TRANSACT-NOT-EOF AND ERR-FLG-OFF
  3. PERFORM VARYING WS-IDX FROM 1 BY 1 UNTIL WS-IDX > 10
PERFORM INITIALIZE-TRAN-DATACOTRN00C.cbl:291
  1. NOT ERR-FLG-ON
MOVE 1 TO WS-IDXCOTRN00C.cbl:295
  1. NOT ERR-FLG-ON
PERFORM UNTIL WS-IDX >= 11 OR TRANSACT-EOF OR ERR-FLG-ONCOTRN00C.cbl:297
  1. NOT ERR-FLG-ON
  2. PERFORM UNTIL WS-IDX >= 11 OR TRANSACT-EOF OR ERR-FLG-ON
PERFORM READNEXT-TRANSACT-FILECOTRN00C.cbl:298
  1. NOT ERR-FLG-ON
  2. PERFORM UNTIL WS-IDX >= 11 OR TRANSACT-EOF OR ERR-FLG-ON
  3. TRANSACT-NOT-EOF AND ERR-FLG-OFF
PERFORM POPULATE-TRAN-DATACOTRN00C.cbl:300
  1. NOT ERR-FLG-ON
  2. PERFORM UNTIL WS-IDX >= 11 OR TRANSACT-EOF OR ERR-FLG-ON
  3. TRANSACT-NOT-EOF AND ERR-FLG-OFF
calc COMPUTE WS-IDX = WS-IDX + 1COTRN00C.cbl:301
  1. NOT ERR-FLG-ON
  2. TRANSACT-NOT-EOF AND ERR-FLG-OFF
calc COMPUTE CDEMO-CT00-PAGE-NUM = CDEMO-CT00-PAGE-NUM + 1COTRN00C.cbl:306–307
  1. NOT ERR-FLG-ON
  2. TRANSACT-NOT-EOF AND ERR-FLG-OFF
PERFORM READNEXT-TRANSACT-FILECOTRN00C.cbl:308
  1. NOT ERR-FLG-ON
  2. TRANSACT-NOT-EOF AND ERR-FLG-OFF
  3. TRANSACT-NOT-EOF AND ERR-FLG-OFF
SET NEXT-PAGE-YES TO TRUECOTRN00C.cbl:310
  1. NOT ERR-FLG-ON
  2. TRANSACT-NOT-EOF AND ERR-FLG-OFF
  3. NOT (TRANSACT-NOT-EOF AND ERR-FLG-OFF)
SET NEXT-PAGE-NO TO TRUECOTRN00C.cbl:312
  1. NOT ERR-FLG-ON
  2. NOT (TRANSACT-NOT-EOF AND ERR-FLG-OFF)
SET NEXT-PAGE-NO TO TRUECOTRN00C.cbl:315
  1. NOT ERR-FLG-ON
  2. NOT (TRANSACT-NOT-EOF AND ERR-FLG-OFF)
  3. WS-IDX > 1
calc COMPUTE CDEMO-CT00-PAGE-NUM = CDEMO-CT00-PAGE-NUM + 1COTRN00C.cbl:317–318
  1. NOT ERR-FLG-ON
PERFORM ENDBR-TRANSACT-FILECOTRN00C.cbl:322
  1. NOT ERR-FLG-ON
MOVE CDEMO-CT00-PAGE-NUM TO PAGENUMI OF COTRN0AICOTRN00C.cbl:324
  1. NOT ERR-FLG-ON
MOVE SPACE TO TRNIDINO OF COTRN0AOCOTRN00C.cbl:325
  1. NOT ERR-FLG-ON
PERFORM SEND-TRNLST-SCREENCOTRN00C.cbl:326
14 rules

PROCESS-PAGE-BACKWARD

WhenThenAt
  1. NOT ERR-FLG-ON
  2. EIBAID NOT = DFHENTER AND DFHPF8
PERFORM READPREV-TRANSACT-FILECOTRN00C.cbl:340
  1. NOT ERR-FLG-ON
  2. TRANSACT-NOT-EOF AND ERR-FLG-OFF
PERFORM VARYING WS-IDX FROM 1 BY 1 UNTIL WS-IDX > 10COTRN00C.cbl:344
  1. NOT ERR-FLG-ON
  2. TRANSACT-NOT-EOF AND ERR-FLG-OFF
  3. PERFORM VARYING WS-IDX FROM 1 BY 1 UNTIL WS-IDX > 10
PERFORM INITIALIZE-TRAN-DATACOTRN00C.cbl:345
  1. NOT ERR-FLG-ON
MOVE 10 TO WS-IDXCOTRN00C.cbl:349
  1. NOT ERR-FLG-ON
PERFORM UNTIL WS-IDX <= 0 OR TRANSACT-EOF OR ERR-FLG-ONCOTRN00C.cbl:351
  1. NOT ERR-FLG-ON
  2. PERFORM UNTIL WS-IDX <= 0 OR TRANSACT-EOF OR ERR-FLG-ON
PERFORM READPREV-TRANSACT-FILECOTRN00C.cbl:352
  1. NOT ERR-FLG-ON
  2. PERFORM UNTIL WS-IDX <= 0 OR TRANSACT-EOF OR ERR-FLG-ON
  3. TRANSACT-NOT-EOF AND ERR-FLG-OFF
PERFORM POPULATE-TRAN-DATACOTRN00C.cbl:354
  1. NOT ERR-FLG-ON
  2. PERFORM UNTIL WS-IDX <= 0 OR TRANSACT-EOF OR ERR-FLG-ON
  3. TRANSACT-NOT-EOF AND ERR-FLG-OFF
calc COMPUTE WS-IDX = WS-IDX - 1COTRN00C.cbl:355
  1. NOT ERR-FLG-ON
  2. TRANSACT-NOT-EOF AND ERR-FLG-OFF
PERFORM READPREV-TRANSACT-FILECOTRN00C.cbl:360
  1. NOT ERR-FLG-ON
  2. TRANSACT-NOT-EOF AND ERR-FLG-OFF
  3. NEXT-PAGE-YES
  4. TRANSACT-NOT-EOF AND ERR-FLG-OFF AND CDEMO-CT00-PAGE-NUM > 1
calc SUBTRACT 1 FROM CDEMO-CT00-PAGE-NUMCOTRN00C.cbl:364
  1. NOT ERR-FLG-ON
  2. TRANSACT-NOT-EOF AND ERR-FLG-OFF
  3. NEXT-PAGE-YES
  4. NOT (TRANSACT-NOT-EOF AND ERR-FLG-OFF AND CDEMO-CT00-PAGE-NUM > 1)
MOVE 1 TO CDEMO-CT00-PAGE-NUMCOTRN00C.cbl:366
  1. NOT ERR-FLG-ON
PERFORM ENDBR-TRANSACT-FILECOTRN00C.cbl:371
  1. NOT ERR-FLG-ON
MOVE CDEMO-CT00-PAGE-NUM TO PAGENUMI OF COTRN0AICOTRN00C.cbl:373
  1. NOT ERR-FLG-ON
PERFORM SEND-TRNLST-SCREENCOTRN00C.cbl:374
40 rules

POPULATE-TRAN-DATA

WhenThenAt
  1. WS-IDX = 1
MOVE TRAN-ID TO TRNID01I OF COTRN0AI CDEMO-CT00-TRNID-FIRSTCOTRN00C.cbl:392–393
  1. WS-IDX = 1
MOVE WS-TRAN-DATE TO TDATE01I OF COTRN0AICOTRN00C.cbl:394
  1. WS-IDX = 1
MOVE TRAN-DESC TO TDESC01I OF COTRN0AICOTRN00C.cbl:395
  1. WS-IDX = 1
MOVE WS-TRAN-AMT TO TAMT001I OF COTRN0AICOTRN00C.cbl:396
  1. WS-IDX = 2
MOVE TRAN-ID TO TRNID02I OF COTRN0AICOTRN00C.cbl:398
  1. WS-IDX = 2
MOVE WS-TRAN-DATE TO TDATE02I OF COTRN0AICOTRN00C.cbl:399
  1. WS-IDX = 2
MOVE TRAN-DESC TO TDESC02I OF COTRN0AICOTRN00C.cbl:400
  1. WS-IDX = 2
MOVE WS-TRAN-AMT TO TAMT002I OF COTRN0AICOTRN00C.cbl:401
  1. WS-IDX = 3
MOVE TRAN-ID TO TRNID03I OF COTRN0AICOTRN00C.cbl:403
  1. WS-IDX = 3
MOVE WS-TRAN-DATE TO TDATE03I OF COTRN0AICOTRN00C.cbl:404
  1. WS-IDX = 3
MOVE TRAN-DESC TO TDESC03I OF COTRN0AICOTRN00C.cbl:405
  1. WS-IDX = 3
MOVE WS-TRAN-AMT TO TAMT003I OF COTRN0AICOTRN00C.cbl:406
  1. WS-IDX = 4
MOVE TRAN-ID TO TRNID04I OF COTRN0AICOTRN00C.cbl:408
  1. WS-IDX = 4
MOVE WS-TRAN-DATE TO TDATE04I OF COTRN0AICOTRN00C.cbl:409
  1. WS-IDX = 4
MOVE TRAN-DESC TO TDESC04I OF COTRN0AICOTRN00C.cbl:410
  1. WS-IDX = 4
MOVE WS-TRAN-AMT TO TAMT004I OF COTRN0AICOTRN00C.cbl:411
  1. WS-IDX = 5
MOVE TRAN-ID TO TRNID05I OF COTRN0AICOTRN00C.cbl:413
  1. WS-IDX = 5
MOVE WS-TRAN-DATE TO TDATE05I OF COTRN0AICOTRN00C.cbl:414
  1. WS-IDX = 5
MOVE TRAN-DESC TO TDESC05I OF COTRN0AICOTRN00C.cbl:415
  1. WS-IDX = 5
MOVE WS-TRAN-AMT TO TAMT005I OF COTRN0AICOTRN00C.cbl:416
  1. WS-IDX = 6
MOVE TRAN-ID TO TRNID06I OF COTRN0AICOTRN00C.cbl:418
  1. WS-IDX = 6
MOVE WS-TRAN-DATE TO TDATE06I OF COTRN0AICOTRN00C.cbl:419
  1. WS-IDX = 6
MOVE TRAN-DESC TO TDESC06I OF COTRN0AICOTRN00C.cbl:420
  1. WS-IDX = 6
MOVE WS-TRAN-AMT TO TAMT006I OF COTRN0AICOTRN00C.cbl:421
  1. WS-IDX = 7
MOVE TRAN-ID TO TRNID07I OF COTRN0AICOTRN00C.cbl:423
  1. WS-IDX = 7
MOVE WS-TRAN-DATE TO TDATE07I OF COTRN0AICOTRN00C.cbl:424
  1. WS-IDX = 7
MOVE TRAN-DESC TO TDESC07I OF COTRN0AICOTRN00C.cbl:425
  1. WS-IDX = 7
MOVE WS-TRAN-AMT TO TAMT007I OF COTRN0AICOTRN00C.cbl:426
  1. WS-IDX = 8
MOVE TRAN-ID TO TRNID08I OF COTRN0AICOTRN00C.cbl:428
  1. WS-IDX = 8
MOVE WS-TRAN-DATE TO TDATE08I OF COTRN0AICOTRN00C.cbl:429
  1. WS-IDX = 8
MOVE TRAN-DESC TO TDESC08I OF COTRN0AICOTRN00C.cbl:430
  1. WS-IDX = 8
MOVE WS-TRAN-AMT TO TAMT008I OF COTRN0AICOTRN00C.cbl:431
  1. WS-IDX = 9
MOVE TRAN-ID TO TRNID09I OF COTRN0AICOTRN00C.cbl:433
  1. WS-IDX = 9
MOVE WS-TRAN-DATE TO TDATE09I OF COTRN0AICOTRN00C.cbl:434
  1. WS-IDX = 9
MOVE TRAN-DESC TO TDESC09I OF COTRN0AICOTRN00C.cbl:435
  1. WS-IDX = 9
MOVE WS-TRAN-AMT TO TAMT009I OF COTRN0AICOTRN00C.cbl:436
  1. WS-IDX = 10
MOVE TRAN-ID TO TRNID10I OF COTRN0AI CDEMO-CT00-TRNID-LASTCOTRN00C.cbl:438–439
  1. WS-IDX = 10
MOVE WS-TRAN-DATE TO TDATE10I OF COTRN0AICOTRN00C.cbl:440
  1. WS-IDX = 10
MOVE TRAN-DESC TO TDESC10I OF COTRN0AICOTRN00C.cbl:441
  1. WS-IDX = 10
MOVE WS-TRAN-AMT TO TAMT010I OF COTRN0AICOTRN00C.cbl:442
40 rules

INITIALIZE-TRAN-DATA

WhenThenAt
  1. WS-IDX = 1
MOVE SPACES TO TRNID01I OF COTRN0AICOTRN00C.cbl:454
  1. WS-IDX = 1
MOVE SPACES TO TDATE01I OF COTRN0AICOTRN00C.cbl:455
  1. WS-IDX = 1
MOVE SPACES TO TDESC01I OF COTRN0AICOTRN00C.cbl:456
  1. WS-IDX = 1
MOVE SPACES TO TAMT001I OF COTRN0AICOTRN00C.cbl:457
  1. WS-IDX = 2
MOVE SPACES TO TRNID02I OF COTRN0AICOTRN00C.cbl:459
  1. WS-IDX = 2
MOVE SPACES TO TDATE02I OF COTRN0AICOTRN00C.cbl:460
  1. WS-IDX = 2
MOVE SPACES TO TDESC02I OF COTRN0AICOTRN00C.cbl:461
  1. WS-IDX = 2
MOVE SPACES TO TAMT002I OF COTRN0AICOTRN00C.cbl:462
  1. WS-IDX = 3
MOVE SPACES TO TRNID03I OF COTRN0AICOTRN00C.cbl:464
  1. WS-IDX = 3
MOVE SPACES TO TDATE03I OF COTRN0AICOTRN00C.cbl:465
  1. WS-IDX = 3
MOVE SPACES TO TDESC03I OF COTRN0AICOTRN00C.cbl:466
  1. WS-IDX = 3
MOVE SPACES TO TAMT003I OF COTRN0AICOTRN00C.cbl:467
  1. WS-IDX = 4
MOVE SPACES TO TRNID04I OF COTRN0AICOTRN00C.cbl:469
  1. WS-IDX = 4
MOVE SPACES TO TDATE04I OF COTRN0AICOTRN00C.cbl:470
  1. WS-IDX = 4
MOVE SPACES TO TDESC04I OF COTRN0AICOTRN00C.cbl:471
  1. WS-IDX = 4
MOVE SPACES TO TAMT004I OF COTRN0AICOTRN00C.cbl:472
  1. WS-IDX = 5
MOVE SPACES TO TRNID05I OF COTRN0AICOTRN00C.cbl:474
  1. WS-IDX = 5
MOVE SPACES TO TDATE05I OF COTRN0AICOTRN00C.cbl:475
  1. WS-IDX = 5
MOVE SPACES TO TDESC05I OF COTRN0AICOTRN00C.cbl:476
  1. WS-IDX = 5
MOVE SPACES TO TAMT005I OF COTRN0AICOTRN00C.cbl:477
  1. WS-IDX = 6
MOVE SPACES TO TRNID06I OF COTRN0AICOTRN00C.cbl:479
  1. WS-IDX = 6
MOVE SPACES TO TDATE06I OF COTRN0AICOTRN00C.cbl:480
  1. WS-IDX = 6
MOVE SPACES TO TDESC06I OF COTRN0AICOTRN00C.cbl:481
  1. WS-IDX = 6
MOVE SPACES TO TAMT006I OF COTRN0AICOTRN00C.cbl:482
  1. WS-IDX = 7
MOVE SPACES TO TRNID07I OF COTRN0AICOTRN00C.cbl:484
  1. WS-IDX = 7
MOVE SPACES TO TDATE07I OF COTRN0AICOTRN00C.cbl:485
  1. WS-IDX = 7
MOVE SPACES TO TDESC07I OF COTRN0AICOTRN00C.cbl:486
  1. WS-IDX = 7
MOVE SPACES TO TAMT007I OF COTRN0AICOTRN00C.cbl:487
  1. WS-IDX = 8
MOVE SPACES TO TRNID08I OF COTRN0AICOTRN00C.cbl:489
  1. WS-IDX = 8
MOVE SPACES TO TDATE08I OF COTRN0AICOTRN00C.cbl:490
  1. WS-IDX = 8
MOVE SPACES TO TDESC08I OF COTRN0AICOTRN00C.cbl:491
  1. WS-IDX = 8
MOVE SPACES TO TAMT008I OF COTRN0AICOTRN00C.cbl:492
  1. WS-IDX = 9
MOVE SPACES TO TRNID09I OF COTRN0AICOTRN00C.cbl:494
  1. WS-IDX = 9
MOVE SPACES TO TDATE09I OF COTRN0AICOTRN00C.cbl:495
  1. WS-IDX = 9
MOVE SPACES TO TDESC09I OF COTRN0AICOTRN00C.cbl:496
  1. WS-IDX = 9
MOVE SPACES TO TAMT009I OF COTRN0AICOTRN00C.cbl:497
  1. WS-IDX = 10
MOVE SPACES TO TRNID10I OF COTRN0AICOTRN00C.cbl:499
  1. WS-IDX = 10
MOVE SPACES TO TDATE10I OF COTRN0AICOTRN00C.cbl:500
  1. WS-IDX = 10
MOVE SPACES TO TDESC10I OF COTRN0AICOTRN00C.cbl:501
  1. WS-IDX = 10
MOVE SPACES TO TAMT010I OF COTRN0AICOTRN00C.cbl:502
1 rules

RETURN-TO-PREV-SCREEN

WhenThenAt
  1. CDEMO-TO-PROGRAM = LOW-VALUES OR SPACES
MOVE 'COSGN00C' TO CDEMO-TO-PROGRAMCOTRN00C.cbl:513
2 rules

SEND-TRNLST-SCREEN

WhenThenAt
  1. SEND-ERASE-YES
EXEC CICS SEND MAP('COTRN0A') MAPSET('COTRN00') FROM(COTRN0AO) ERASE CURSOR END-EXECCOTRN00C.cbl:534–540
  1. NOT (SEND-ERASE-YES)
EXEC CICS SEND MAP('COTRN0A') MAPSET('COTRN00') FROM(COTRN0AO) CURSOR END-EXECCOTRN00C.cbl:542–548
9 rules

STARTBR-TRANSACT-FILE

WhenThenAt
  1. WS-RESP-CD = DFHRESP(NOTFND)
SET TRANSACT-EOF TO TRUECOTRN00C.cbl:607
  1. WS-RESP-CD = DFHRESP(NOTFND)
MOVE 'You are at the top of the page...' TO WS-MESSAGECOTRN00C.cbl:608–609
  1. WS-RESP-CD = DFHRESP(NOTFND)
MOVE -1 TO TRNIDINL OF COTRN0AICOTRN00C.cbl:610
  1. WS-RESP-CD = DFHRESP(NOTFND)
PERFORM SEND-TRNLST-SCREENCOTRN00C.cbl:611
  1. WS-RESP-CD is none of [DFHRESP(NORMAL); DFHRESP(NOTFND)]
DISPLAY 'RESP:' WS-RESP-CD 'REAS:' WS-REAS-CDCOTRN00C.cbl:613
  1. WS-RESP-CD is none of [DFHRESP(NORMAL); DFHRESP(NOTFND)]
MOVE 'Y' TO WS-ERR-FLGCOTRN00C.cbl:614
  1. WS-RESP-CD is none of [DFHRESP(NORMAL); DFHRESP(NOTFND)]
MOVE 'Unable to lookup transaction...' TO WS-MESSAGECOTRN00C.cbl:615–616
  1. WS-RESP-CD is none of [DFHRESP(NORMAL); DFHRESP(NOTFND)]
MOVE -1 TO TRNIDINL OF COTRN0AICOTRN00C.cbl:617
  1. WS-RESP-CD is none of [DFHRESP(NORMAL); DFHRESP(NOTFND)]
PERFORM SEND-TRNLST-SCREENCOTRN00C.cbl:618
9 rules

READNEXT-TRANSACT-FILE

WhenThenAt
  1. WS-RESP-CD = DFHRESP(ENDFILE)
SET TRANSACT-EOF TO TRUECOTRN00C.cbl:641
  1. WS-RESP-CD = DFHRESP(ENDFILE)
MOVE 'You have reached the bottom of the page...' TO WS-MESSAGECOTRN00C.cbl:642–643
  1. WS-RESP-CD = DFHRESP(ENDFILE)
MOVE -1 TO TRNIDINL OF COTRN0AICOTRN00C.cbl:644
  1. WS-RESP-CD = DFHRESP(ENDFILE)
PERFORM SEND-TRNLST-SCREENCOTRN00C.cbl:645
  1. WS-RESP-CD is none of [DFHRESP(NORMAL); DFHRESP(ENDFILE)]
DISPLAY 'RESP:' WS-RESP-CD 'REAS:' WS-REAS-CDCOTRN00C.cbl:647
  1. WS-RESP-CD is none of [DFHRESP(NORMAL); DFHRESP(ENDFILE)]
MOVE 'Y' TO WS-ERR-FLGCOTRN00C.cbl:648
  1. WS-RESP-CD is none of [DFHRESP(NORMAL); DFHRESP(ENDFILE)]
MOVE 'Unable to lookup transaction...' TO WS-MESSAGECOTRN00C.cbl:649–650
  1. WS-RESP-CD is none of [DFHRESP(NORMAL); DFHRESP(ENDFILE)]
MOVE -1 TO TRNIDINL OF COTRN0AICOTRN00C.cbl:651
  1. WS-RESP-CD is none of [DFHRESP(NORMAL); DFHRESP(ENDFILE)]
PERFORM SEND-TRNLST-SCREENCOTRN00C.cbl:652
9 rules

READPREV-TRANSACT-FILE

WhenThenAt
  1. WS-RESP-CD = DFHRESP(ENDFILE)
SET TRANSACT-EOF TO TRUECOTRN00C.cbl:675
  1. WS-RESP-CD = DFHRESP(ENDFILE)
MOVE 'You have reached the top of the page...' TO WS-MESSAGECOTRN00C.cbl:676–677
  1. WS-RESP-CD = DFHRESP(ENDFILE)
MOVE -1 TO TRNIDINL OF COTRN0AICOTRN00C.cbl:678
  1. WS-RESP-CD = DFHRESP(ENDFILE)
PERFORM SEND-TRNLST-SCREENCOTRN00C.cbl:679
  1. WS-RESP-CD is none of [DFHRESP(NORMAL); DFHRESP(ENDFILE)]
DISPLAY 'RESP:' WS-RESP-CD 'REAS:' WS-REAS-CDCOTRN00C.cbl:681
  1. WS-RESP-CD is none of [DFHRESP(NORMAL); DFHRESP(ENDFILE)]
MOVE 'Y' TO WS-ERR-FLGCOTRN00C.cbl:682
  1. WS-RESP-CD is none of [DFHRESP(NORMAL); DFHRESP(ENDFILE)]
MOVE 'Unable to lookup transaction...' TO WS-MESSAGECOTRN00C.cbl:683–684
  1. WS-RESP-CD is none of [DFHRESP(NORMAL); DFHRESP(ENDFILE)]
MOVE -1 TO TRNIDINL OF COTRN0AICOTRN00C.cbl:685
  1. WS-RESP-CD is none of [DFHRESP(NORMAL); DFHRESP(ENDFILE)]
PERFORM SEND-TRNLST-SCREENCOTRN00C.cbl:686