Objective
This example produces two reports:
Procedure
The contents of the input buffer for this run:
|
File 1 (SYS010) |
File 2 (SYS011) |
|---|---|
|
.0500 .0525 .0550 |
rule=no. |
|
.0525 .0550 .0575 |
rule=no. |
|
.0550 .0575 .0600 |
rule=no. |
|
.0550 .0575 .0625 |
rule=no. |
|
|
15060 |
|
|
15999 |
|
|
16070 |
|
|
19235 |
|
|
21056 |
|
|
23055 |
|
|
27777 |
|
|
29557 . . . |
Complete Code
col. 2 ▼ IN 80 $Read first, no match key REC FILE-TEST 0 1 1 REC INTEREST-RATE-DATA 1 GROUP AA 4.3 REC INTEREST-RATE 1 4 2 DP=4 ELMNT AA IN 150 MK=ACCOUNT-NO $Read second, one match key REC ACCOUNT-NO 1 5 'ACCOUNT' 'NUMBER' REC ACCT-TYPE 6 2 2 'ACCOUNT' 'TYPE' REC OPEN-BAL 8 11 2 DP=2 'OPENING' 'BALANCE' REC NAME 19 20 'NAME' REC DATE-OPENED 39 6 2 'DATE' 'OPENED' GW0 RATE.12 DP=4 COUNT ZERO 00OUT 65 D 003 INTEREST RATE TABLE $First report 0051*010 INTEREST-RATE.1 HH ' ' 'RATE CODE 1' '(ACCOUNT TYPE 1)' 0051*020 INTEREST-RATE.2 HH 'RATE CODE 2' '(ACCOUNT TYPE 2)' 0051*030 INTEREST-RATE.3 HH 'RATE CODE 3' '(ACCOUNT TYPE 3)' 92SORT ACCT-TYPE 0 OPEN-BAL D 92OUT 120 D 920 NTH 920 FIRST-MO-INT DP=3 923 FIRST MONTH'S INTEREST $Second report 9241*010 ' ' 9251*010 ACCOUNT-NO HR 9251*020 NAME HR 9251*030 DATE-OPENED FD HR 9251*040 ACCT-TYPE HR 9251*050 RATE.NTH SZ=4 HH 'INTEREST' 'RATE' 9251*060 OPEN-BAL HR 9251*070 FIRST-MO-INT SZ=8 HH 'INTEREST' '(FIRST' 'MONTH)' 007010 IF FILE-TEST EQ 1 DROP 007 COUNT + 1 COUNT 007 MOVE INTEREST-RATE.1 TO RATE.COUNT 007 COUNT + 1 COUNT 007 MOVE INTEREST-RATE.2 TO RATE.COUNT 007 COUNT + 1 COUNT 007 MOVE INTEREST-RATE.3 TO RATE.COUNT 007 IF COUNT GT 12 040 007 TAKE 007040 ZERO DIVIDE ZERO ZERO $Forced buffer dump if more than 12 entries 007 STOP-RUN $Error, stop processing 927 IF FILE-TEST NE 1 DROP 927 IF DATE-OPENED GE mmddyy 100 927 IF DATE-OPENED GE mmddyy 110 927 IF DATE-OPENED GE mmddyy 120 927 IF DATE-OPENED GE mmddyy 130 927 DROP
927100 ACCT-TYPE + 9 NTH 927 B 150 927110 ACCT-TYPE + 6 NTH 927 B 150 927120 ACCT-TYPE + 3 NTH 927 B 150 927130 ACCT-TYPE + 0 NTH 927150 COMPUTE (OPEN-BAL X RATE.NTH) / 12 FIRST-MO-INT
Note: For 'IF DATE-OPENED GE', the code would be actual dates in the format shown.
Result
REPORT NO. 00 INTEREST RATE TABLE mm/dd/yy PAGE 1 RATE CODE 1 RATE CODE 2 RATE CODE 3 (ACCOUNT TYPE 1) (ACCOUNT TYPE 2) (ACCOUNT TYPE 3) .0500 .0525 .0550 .0525 .0550 .0575 .0550 .0575 .0600 .0550 .0575 .0625 REPORT NO. 92 FIRST MONTH'S INTEREST mm/dd/yy PAGE 1 INTEREST ACCOUNT DATE ACCOUNT INTEREST OPENING (FIRST NUMBER NAME OPENED TYPE RATE BALANCE MONTH) 33470 VICTORIA DAY mm/dd/yy 1 .0550 51,954.10 238.123 16070 ARTHUR LINK mm/dd/yy 1 .0550 10,800.45 49.502 99083 HELEN SANTOVEC mm/dd/yy 1 .0550 4,685.28 21.474 69876 BRUCE THORPE mm/dd/yy 2 .0575 6,375.58 30.550 19235 GARY NOBLES mm/dd/yy 2 .0575 3,800.45 18.210 34440 HELEN WRIGHT mm/dd/yy 2 .0575 1,950.10 9.344 36682 JEAN WREN mm/dd/yy 3 .0575 40,007.80 191.704 15999 SHELLY BROWN mm/dd/yy 3 .0550 852.45 3.907 30115 IRMA DOONES mm/dd/yy 3 .0625 366.29 1.908 31113 MARY CATREY mm/dd/yy 3 .0600 360.00 1.800 15060 SHARON ARMSTRONG mm/dd/yy 3 .0625 21056 AMOS JOHNSON mm/dd/yy 3 .0625 23055 JACK JACKSON mm/dd/yy 3 .0625 27777 ANDY PIGGOTT mm/dd/yy 3 .0625 29557 IRWIN TRIMBLE mm/dd/yy 3 .0625 31275 FOR ANOTHER mm/dd/yy 3 .0625 32115 BOB DATO mm/dd/yy 3 .0625
Note: The report would show actual dates in the format shown.
|
Copyright © 2014 CA.
All rights reserved.
|
|