home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / viscobv6.zip / vac22os2 / ibmcobol / samples / cstut / modsamp.cbl < prev    next >
Text File  |  1998-03-04  |  33KB  |  408 lines

  1. 000100 IDENTIFICATION DIVISION.                                         MOD00010
  2. 000200 PROGRAM-ID. MODSAMP.                                             MOD00020
  3. 000300 AUTHOR. JOHN C. SMITH                                            MOD00030
  4. 000400                                                                  MOD00040
  5. 000500******************************************************************MOD00050
  6. 000600*     THIS PROGRAM DOES THE MONTH END CALCULATIONS FOR EACH TYPE *MOD00060
  7. 000700*     OF CHECKING ACCOUNT CARRIED BY THE UNIVERSAL BANK.  IT     *MOD00070
  8. 000800*     HANDLES THE FOLLOWING TYPES OF ACCOUNTS.                   *MOD00080
  9. 000900*         CHECKING WITH INTEREST                                 *MOD00090
  10. 001000*         CHECKING WITH NO INTEREST                              *MOD00100
  11. 001100*         MONEY MARKET ACCOUNT (MMA)                             *MOD00110
  12. 001200*         SAVINGS ACCOUNT                                        *MOD00120
  13. 001300*     IT ALSO UPDATES THE ACCOUNT BALANCE, BRANCH BALANCE AND    *MOD00130
  14. 001400*     BANK BALANCE.                                              *MOD00140
  15. 001500******************************************************************MOD00150
  16. 001600                                                                  MOD00160
  17. 001700 ENVIRONMENT DIVISION.                                            MOD00170
  18. 001800 CONFIGURATION SECTION.                                           MOD00180
  19. 001900 SOURCE-COMPUTER. IBM-370.                                        MOD00190
  20. 002000 OBJECT-COMPUTER. IBM-370.                                        MOD00200
  21. 002100 INPUT-OUTPUT SECTION.                                            MOD00210
  22. 002200                                                                  MOD00220
  23. 002300 FILE-CONTROL.                                                    MOD00230
  24. 002400     SELECT ACCT-FILE           ASSIGN TO ACCT                    MOD00240
  25. 002500            ORGANIZATION IS INDEXED                               MOD00250
  26. 002600            ACCESS IS RANDOM                                      MOD00260
  27. 002700            RECORD KEY IS ACCT-KEY.                               MOD00270
  28. 002800     SELECT EXCEPTION-FILE      ASSIGN TO UT-S-EXCEPTS.           MOD00280
  29. 002900     SELECT TRAN-FILE           ASSIGN TO UT-S-TRAN.              MOD00290
  30. 003000     SELECT ACTION-FILE         ASSIGN TO UT-S-ACTIONS.           MOD00300
  31. 003100                                                                  MOD00310
  32. 003200 DATA DIVISION.                                                   MOD00320
  33. 003300                                                                  MOD00330
  34. 003400 FILE SECTION.                                                    MOD00340
  35. 003500 FD  ACCT-FILE                                                    MOD00350
  36. 003600     LABEL RECORDS ARE STANDARD.                                  MOD00360
  37. 003700                                                                  MOD00370
  38. 003800 01  ACCT-RECORD.                                                 MOD00380
  39. 003900     05  ACCT-CONTROL-CODE             PIC 9(6).                  MOD00390
  40. 004000     05  ACCT-KEY.                                                MOD00400
  41. 004100         10  ACCT-NUM                  PIC 9(9).                  MOD00410
  42. 004200         10  ACCT-TYPE                 PIC X(3).                  MOD00420
  43. 004300     05  ACCT-STATUS-CODE              PIC 9(2).                  MOD00430
  44. 004400     05  ACCT-BALANCE                  PIC S9(6)V99.              MOD00440
  45. 004500     05  ACCT-MIN-BALANCE              PIC S9(6)V99.              MOD00450
  46. 004600     05  ACCT-AVG-BALANCE              PIC S9(6)V99.              MOD00460
  47. 004700     05  ACCT-MULTI-ACCT               PIC X(3).                  MOD00470
  48. 004800     05  ACCT-BRANCH-CODE              PIC 9(3).                  MOD00480
  49. 004900     05  ACCT-INTEREST                 PIC S9(6)V99.              MOD00490
  50. 005000     05  ACCT-INT-YTD                  PIC S9(6)V99.              MOD00500
  51. 005100     05  ACCT-SERVICE-CHARGE           PIC S9(6)V99.              MOD00510
  52. 005110     05  ACCT-LAST-UPDATE              PIC 9(6).                  MOD00520
  53. 005120                                                                  MOD00530
  54. 005130 FD  EXCEPTION-FILE                                               MOD00540
  55. 005140     RECORDING MODE IS F                                          MOD00550
  56. 005150     BLOCK CONTAINS 0 RECORDS                                     MOD00560
  57. 005160     LABEL RECORDS ARE STANDARD.                                  MOD00570
  58. 005170 01  EXCEPT-BUF.                                                  MOD00580
  59. 005180     05  FILLER                          PIC X(133).              MOD00590
  60. 005190                                                                  MOD00600
  61. 005200 FD  TRAN-FILE                                                    MOD00610
  62. 005300     RECORDING MODE IS F                                          MOD00620
  63. 005400     BLOCK CONTAINS 0 RECORDS                                     MOD00630
  64. 005500     LABEL RECORDS ARE STANDARD.                                  MOD00640
  65. 005600 01  TRAN-RECORD.                                                 MOD00650
  66. 005700     05  TRAN-CONTROL-CODE             PIC 9(6).                  MOD00660
  67. 005800     05  TRAN-ACCT-KEY.                                           MOD00670
  68. 005900         10  TRAN-ACCT-NUM             PIC 9(9).                  MOD00680
  69. 006000         10  TRAN-ACCT-TYPE            PIC X(3).                  MOD00690
  70. 006100     05  TRAN-ADJ-VALUE                PIC S9(6)V99.              MOD00700
  71. 006200     05  TRAN-TIMESTAMP                PIC 9(15).                 MOD00710
  72. 006300     05  TRAN-LOCATION-CODE            PIC 9(3).                  MOD00720
  73. 006400                                                                  MOD00730
  74. 006500 FD  ACTION-FILE                                                  MOD00740
  75. 006600     RECORDING MODE IS F                                          MOD00750
  76. 006700     BLOCK CONTAINS 0 RECORDS                                     MOD00760
  77. 006800     LABEL RECORDS ARE STANDARD.                                  MOD00770
  78. 006900 01  ACTION-RECORD.                                               MOD00780
  79. 007000     05  ACT-CONTROL-CODE              PIC 9(6).                  MOD00790
  80. 007100     05  ACT-REASON-CODE               PIC 9(4).                  MOD00800
  81. 007200     05  ACT-ACCT-KEY.                                            MOD00810
  82. 007300         10  ACCT-NUM                  PIC 9(18).                 MOD00820
  83. 007400         10  ACCT-TYPE                 PIC X(3).                  MOD00830
  84. 007500     05  ACT-STATUS-CODE               PIC 9(2).                  MOD00840
  85. 007600     05  ACT-ORIGIN-CODE               PIC 9(18).                 MOD00850
  86. 007700     05  ACT-TIMESTAMP                 PIC 9(15).                 MOD00860
  87. 007800     05  ACT-CUR-BALANCE               PIC S9(11)V9(4) COMP-3.    MOD00870
  88. 007900     05  ACT-SIGNATURE                 PIC X(4).                  MOD00880
  89. 008000                                                                  MOD00890
  90. 008100 WORKING-STORAGE SECTION.                                         MOD00900
  91. 008200                                                                  MOD00910
  92. 008300 77  PGM-SIGNATURE                     PIC X(4) VALUE 'MODS'.     MOD00920
  93. 008400 77  TRAN-FILE-FLAG                    PIC X    VALUE ' '.        MOD00930
  94. 008500     88  TRAN-FILE-ENDS                VALUE 'X'.                 MOD00940
  95. 008600                                                                  MOD00950
  96. 008700 77  CHK-INTEREST-RATE                 PIC S9(4)V9(4) COMP-3      MOD00960
  97. 008800                                       VALUE +5.0.                MOD00970
  98. 008900 77  CHK-MULTI-ACCT-RATE               PIC S9(4)V9(4) COMP-3      MOD00980
  99. 009000                                       VALUE +0.5.                MOD00990
  100. 009100 77  SERVICE-INTEREST-RATE             PIC S9(4)V9(4) COMP-3      MOD01000
  101. 009200                                       VALUE +0.5.                MOD01010
  102. 009300 77  MMA-INTEREST-RATE                 PIC S9(4)V9(4) COMP-3      MOD01020
  103. 009400                                       VALUE +7.0.                MOD01030
  104. 009500 77  SAV-INTEREST-RATE                 PIC S9(4)V9(4) COMP-3      MOD01040
  105. 009600                                       VALUE +5.0.                MOD01050
  106. 009700 77  SERVICE-CHARGE                    PIC S9(4)V9(4) COMP-3      MOD01060
  107. 009800                                       VALUE +5.00.               MOD01070
  108. 009900 77  WK-INTEREST                       PIC S9(4)V9(4) COMP-3.     MOD01080
  109. 010000 77  INTEREST-RATE                     PIC S9(4)V9(4) COMP-3.     MOD01090
  110. 010100 77  DAYS-IN-PERIOD                    PIC S9(9)V9(4) COMP-3.     MOD01100
  111. 010200 77  DAYS-IN-YEAR                      PIC S9(9)V9(4) COMP-3.     MOD01110
  112. 010300 77  WORK-ACTION-REASON                PIC 9(4).                  MOD01120
  113. 010400     88  NO-ACTIONS                    VALUE 0000.                MOD01130
  114. 010500     88  NEGATIVE-BALANCE              VALUE 0042.                MOD01140
  115. 010600     88  BELOW-MINIMUM                 VALUE 0056.                MOD01150
  116. 010700     88  MULTI-ACCT                    VALUE 0099.                MOD01160
  117. 010800     88  MISSING-ACCT                  VALUE 2099.                MOD01170
  118. 010900                                                                  MOD01180
  119. 011000 77  ACCT-IO-CNT                       PIC 9(4).                  MOD01190
  120. 011100 77  TRAN-CNT                          PIC 9(4).                  MOD01200
  121. 011200 77  EX-RPT-LINE-CNT                   PIC 9(4) VALUE 0.          MOD01210
  122. 011210 77  EX-RPT-PAGE-CNT                   PIC 9(4) VALUE 0.          MOD01220
  123. 011220 77  ACTION-CNT                        PIC 9(4).                  MOD01230
  124. 011230 77  WORK-CNT                          PIC 9(4).                  MOD01240
  125. 011240 77  WORK-RETURN-CODE                  PIC S9(4) COMP.            MOD01250
  126. 011250                                                                  MOD01260
  127. 011260 01  MONTH-TABLE-INIT.                                            MOD01270
  128. 011270     05  JAN-DAYS                      PIC 9(02) VALUE 31.        MOD01280
  129. 011280     05  FEB-DAYS                      PIC 9(02) VALUE 28.        MOD01290
  130. 011290     05  MAR-DAYS                      PIC 9(02) VALUE 31.        MOD01300
  131. 011300     05  APR-DAYS                      PIC 9(02) VALUE 30.        MOD01310
  132. 011400     05  MAY-DAYS                      PIC 9(02) VALUE 31.        MOD01320
  133. 011500     05  JUN-DAYS                      PIC 9(02) VALUE 30.        MOD01330
  134. 011510     05  JUL-DAYS                      PIC 9(02) VALUE 31.        MOD01340
  135. 011520     05  AUG-DAYS                      PIC 9(02) VALUE 31.        MOD01350
  136. 011530     05  SEP-DAYS                      PIC 9(02) VALUE 30.        MOD01360
  137. 011540     05  OCT-DAYS                      PIC 9(02) VALUE 31.        MOD01370
  138. 011541     05  NOV-DAYS                      PIC 9(02) VALUE 30.        MOD01380
  139. 011542     05  DEC-DAYS                      PIC 9(02) VALUE 31.        MOD01390
  140. 011543                                                                  MOD01400
  141. 011544 01  MONTH-TABLE REDEFINES MONTH-TABLE-INIT.                      MOD01410
  142. 011545     05  MONTH     OCCURS 12 TIMES  PIC 9(02).                    MOD01420
  143. 011546                                                                  MOD01430
  144. 011547 01  TODAY-DATE.                                                  MOD01440
  145. 011548     05  TODAY-YY                      PIC 9(02).                 MOD01450
  146. 011549     05  TODAY-MM                      PIC 9(02).                 MOD01460
  147. 011550     05  TODAY-DD                      PIC 9(02).                 MOD01470
  148. 011560                                                                  MOD01480
  149. 011570 01  PGM-LITERALS.                                                MOD01490
  150. 011580     05  YES-LITERAL                   PIC X    VALUE 'Y'.        MOD01500
  151. 011590     05  NO-LITERAL                    PIC X    VALUE 'N'.        MOD01510
  152. 011600     05  EOF-LITERAL                   PIC X    VALUE 'X'.        MOD01520
  153. 011700                                                                  MOD01530
  154. 011800 01  ACTION-REASON-CODES.                                         MOD01540
  155. 011900     05  ACTION-NEG-BALANCE            PIC 9(4) VALUE 0042.       MOD01550
  156. 012000     05  ACTION-BELOW-MIN              PIC 9(4) VALUE 0056.       MOD01560
  157. 012100     05  ACTION-MULTI-ACCT             PIC 9(4) VALUE 0099.       MOD01570
  158. 012200     05  ACTION-MISSING-ACCT           PIC 9(4) VALUE 2099.       MOD01580
  159. 012300                                                                  MOD01590
  160. 012300                                                                  MOD01600
  161. 012320     COPY MODSCPY1.                                               MOD01610
  162. 012718                                                                  MOD01620
  163. 012719 01  EXCEPT-HEAD-LINE2.                                           MOD01630
  164. 012720     05  EX-HDG2                         PIC X(1).                MOD01640
  165. 012721     05  EXCEPT1-REPORT-DATE             PIC X(8).                MOD01650
  166. 012722     05  FILLER                          PIC X(49)                MOD01660
  167. 012723         VALUE SPACES.                                            MOD01670
  168. 012724     05  FILLER                          PIC X(30)                MOD01680
  169. 012725         VALUE 'SERVICE CHARGE EXCEPTIONS'.                       MOD01690
  170. 012726     05  FILLER                          PIC X(49)                MOD01700
  171. 012727         VALUE SPACES.                                            MOD01710
  172. 012728     05  FILLER                          PIC X(5)                 MOD01720
  173. 012729         VALUE 'PAGE '.                                           MOD01730
  174. 012730     05  EXCEP2-REPORT-PAGE-CNT          PIC 9(4).                MOD01740
  175. 012731                                                                  MOD01750
  176. 012732 01  EXCEPT-DETAIL-LINE2.                                         MOD01760
  177. 012733     05  EX-CC                           PIC X  VALUE ' '.        MOD01770
  178. 012734     05  FILLER                          PIC X(17)                MOD01780
  179. 012735         VALUE 'ACCOUNT-NUMBER:  '.                               MOD01790
  180. 012736     05  EX-NUM                          PIC 9(12).               MOD01800
  181. 012737     05  FILLER                          PIC X(40) VALUE SPACES.  MOD01810
  182. 012738     05  FILLER                          PIC X(16)                MOD01820
  183. 012739         VALUE 'YTD INTEREST:   '.                                MOD01830
  184. 012740     05  EX-YTD-INTEREST                 PIC S9(12)V99.           MOD01840
  185. 012741     05  FILLER                          PIC X(2).                MOD01850
  186. 012742     05  FILLER                          PIC X(17)                MOD01860
  187. 012743         VALUE 'SERVICE CHARGE:  '.                               MOD01870
  188. 012744     05  EX-SERVICE                      PIC 999999.              MOD01880
  189. 012745     05  FILLER                          PIC X(10) VALUE SPACES.  MOD01890
  190. 012746 LINKAGE SECTION.                                                 MOD01900
  191. 012747                                                                  MOD01910
  192. 012748 01  CONTROL-PARAMETERS.                                          MOD01920
  193. 012749     05  FREE-SERVICE-MIN              PIC S9(11)V9(4) COMP-3.    MOD01930
  194. 012750     05  CD-REVIEW-MIN                 PIC S9(11)V9(4) COMP-3.    MOD01940
  195. 012751 01  BRANCH-BALANCE                    PIC S9(11)V9(4) COMP-3.    MOD01950
  196. 012752 01  BANK-BALANCE                      PIC S9(11)V9(4) COMP-3.    MOD01960
  197. 012753                                                                  MOD01970
  198. 012754 PROCEDURE DIVISION USING CONTROL-PARAMETERS, BRANCH-BALANCE,     MOD01980
  199. 012760                          BANK-BALANCE.                           MOD01990
  200. 012770                                                                  MOD02000
  201. 012780     OPEN OUTPUT EXCEPTION-FILE.                                  MOD02010
  202. 012790                                                                  MOD02020
  203. 012800     PERFORM INITIALIZE-PGM.                                      MOD02030
  204. 012900                                                                  MOD02040
  205. 013000     PERFORM ACCT-MAINTENANCE                                     MOD02050
  206. 013100        THRU ACCT-MAINTENANCE-EXIT                                MOD02060
  207. 013200       UNTIL TRAN-FILE-ENDS.                                      MOD02070
  208. 013300                                                                  MOD02080
  209. 013400     PERFORM REPORT-FINAL-CNTRS.                                  MOD02090
  210. 013500                                                                  MOD02100
  211. 013600     PERFORM CLOSE-PGM.                                           MOD02110
  212. 013700                                                                  MOD02120
  213. 013800     GOBACK.                                                      MOD02130
  214. 013900                                                                  MOD02140
  215. 014000                                                                  MOD02150
  216. 014100 ACCT-MAINTENANCE.                                                MOD02160
  217. 014200                                                                  MOD02170
  218. 014300     READ TRAN-FILE                                               MOD02180
  219. 014400         AT END                                                   MOD02190
  220. 014500             MOVE EOF-LITERAL  TO TRAN-FILE-FLAG                  MOD02200
  221. 014600             GO TO ACCT-MAINTENANCE-EXIT.                         MOD02210
  222. 014700                                                                  MOD02220
  223. 014800     ADD  +1    TO TRAN-CNT.                                      MOD02230
  224. 014900                                                                  MOD02240
  225. 015000     MOVE TRAN-ACCT-KEY TO ACCT-KEY.                              MOD02250
  226. 015100                                                                  MOD02260
  227. 015200     READ ACCT-FILE   KEY IS ACCT-KEY                             MOD02270
  228. 015300         INVALID KEY                                              MOD02280
  229. 015400             MOVE ACTION-MISSING-ACCT TO WORK-ACTION-REASON       MOD02290
  230. 015500             MOVE SPACES              TO ACCT-RECORD              MOD02300
  231. 015600             PERFORM INITIATE-ACTION                              MOD02310
  232. 015700             MOVE +4                  TO WORK-RETURN-CODE         MOD02320
  233. 015800             GO TO ACCT-MAINTENANCE-EXIT.                         MOD02330
  234. 015900                                                                  MOD02340
  235. 016000                                                                  MOD02350
  236. 016100     ADD  +1    TO ACCT-IO-CNT.                                   MOD02360
  237. 016200     PERFORM UPDATE-ACCT THRU UPDATE-ACCT-EXIT.                   MOD02370
  238. 016300                                                                  MOD02380
  239. 016400     IF ACCT-MIN-BALANCE IS LESS THAN ACCT-BALANCE                MOD02390
  240. 016500        PERFORM EXCEPTION-REPORT-1.                               MOD02400
  241. 016600                                                                  MOD02410
  242. 016700 ACCT-MAINTENANCE-EXIT.                                           MOD02420
  243. 016800     EXIT.                                                        MOD02430
  244. 016900                                                                  MOD02440
  245. 017000                                                                  MOD02450
  246. 017100 UPDATE-ACCT.                                                     MOD02460
  247. 017200                                                                  MOD02470
  248. 017300     PERFORM INIT-ACTION-RECORD.                                  MOD02480
  249. 017400                                                                  MOD02490
  250. 017500     IF ACCT-TYPE OF ACCT-RECORD = 'INT'                          MOD02500
  251. 017600         MOVE CHK-INTEREST-RATE TO INTEREST-RATE                  MOD02510
  252. 017700     ELSE IF ACCT-TYPE OF ACCT-RECORD = 'CHK'                     MOD02520
  253. 017800         MOVE ZERO TO INTEREST-RATE                               MOD02530
  254. 017900     ELSE IF ACCT-TYPE OF ACCT-RECORD = 'MMA'                     MOD02540
  255. 018000         MOVE MMA-INTEREST-RATE TO INTEREST-RATE                  MOD02550
  256. 018100     ELSE IF ACCT-TYPE OF ACCT-RECORD = 'SAV'                     MOD02560
  257. 018200         MOVE SAV-INTEREST-RATE TO INTEREST-RATE.                 MOD02570
  258. 018300                                                                  MOD02580
  259. 018400     IF ACCT-MULTI-ACCT = 'YES'                                   MOD02590
  260. 018500        ADD CHK-MULTI-ACCT-RATE TO INTEREST-RATE                  MOD02600
  261. 018600        MOVE ACTION-MULTI-ACCT TO WORK-ACTION-REASON              MOD02610
  262. 018700        PERFORM INITIATE-ACTION.                                  MOD02620
  263. 018800                                                                  MOD02630
  264. 018900     IF ACCT-MIN-BALANCE < FREE-SERVICE-MIN                       MOD02640
  265. 019000        MOVE SERVICE-INTEREST-RATE TO INTEREST-RATE               MOD02650
  266. 019100        COMPUTE ACCT-SERVICE-CHARGE = SERVICE-CHARGE              MOD02660
  267. 019200        MOVE ACTION-BELOW-MIN TO WORK-ACTION-REASON               MOD02670
  268. 019300        PERFORM INITIATE-ACTION                                   MOD02680
  269. 019400     ELSE                                                         MOD02690
  270. 019500        MOVE ZEROS TO ACCT-SERVICE-CHARGE.                        MOD02700
  271. 019600                                                                  MOD02710
  272. 019700     IF ACCT-MIN-BALANCE < 0                                      MOD02720
  273. 019800        MOVE ACTION-NEG-BALANCE TO WORK-ACTION-REASON             MOD02730
  274. 019900        PERFORM INITIATE-ACTION.                                  MOD02740
  275. 020000                                                                  MOD02750
  276. 020100     COMPUTE WK-INTEREST =                                        MOD02760
  277. 020200           (ACCT-AVG-BALANCE / DAYS-IN-YEAR) *                    MOD02770
  278. 020300           DAYS-IN-PERIOD * (INTEREST-RATE / 100).                MOD02780
  279. 020400                                                                  MOD02790
  280. 020500     MOVE WK-INTEREST TO ACCT-INTEREST.                           MOD02800
  281. 020600     ADD ACCT-INTEREST TO ACCT-BALANCE.                           MOD02810
  282. 020700     ADD ACCT-INTEREST TO ACCT-INT-YTD.                           MOD02820
  283. 020800                                                                  MOD02830
  284. 020900     SUBTRACT SERVICE-CHARGE FROM ACCT-BALANCE.                   MOD02840
  285. 021000     SUBTRACT ACCT-INTEREST FROM BRANCH-BALANCE.                  MOD02850
  286. 021100     SUBTRACT ACCT-INTEREST FROM BANK-BALANCE.                    MOD02860
  287. 021200                                                                  MOD02870
  288. 021300     ADD SERVICE-CHARGE TO BRANCH-BALANCE.                        MOD02880
  289. 021400     ADD SERVICE-CHARGE TO BANK-BALANCE.                          MOD02890
  290. 021500                                                                  MOD02900
  291. 021600     PERFORM INITIATE-ACTION.                                     MOD02910
  292. 021700                                                                  MOD02920
  293. 021800     MOVE TODAY-DATE  TO ACCT-LAST-UPDATE.                        MOD02930
  294. 021810                                                                  MOD02940
  295. 021820     REWRITE ACCT-RECORD.                                         MOD02950
  296. 021830                                                                  MOD02960
  297. 021840 UPDATE-ACCT-EXIT.                                                MOD02970
  298. 021850     EXIT.                                                        MOD02980
  299. 021860                                                                  MOD02990
  300. 021870 EXCEPTION-REPORT-1.                                              MOD03000
  301. 021880*                                                                 MOD03010
  302. 021890*   EXCEPTION REPORT 1 LIST ALL ACCOUNTS WITH A MINIMUM BALANCE   MOD03020
  303. 021900*   THAT IS LESS THAN THE CURRENT BALANCE.                        MOD03030
  304. 022000*                                                                 MOD03040
  305. 022100     IF EX-RPT-LINE-CNT IS GREATER THAN 60                        MOD03050
  306. 022200        ADD +1 TO EX-RPT-PAGE-CNT                                 MOD03060
  307. 022300        MOVE EX-RPT-PAGE-CNT TO EXCEP1-REPORT-PAGE-CNT.           MOD03070
  308. 022400        WRITE EXCEPT-BUF FROM EXCEPT-HEAD-LINE1.                  MOD03080
  309. 022401        WRITE EXCEPT-BUF FROM EXCEPT-HEAD-LINE2.                  MOD03090
  310. 022402        MOVE 0 TO EX-RPT-LINE-CNT.                                MOD03100
  311. 022403     ADD  +1  TO  EX-RPT-LINE-CNT.                                MOD03110
  312. 022404     MOVE ACCT-BALANCE TO EX-CUR-BAL.                             MOD03120
  313. 022405     MOVE ACCT-MIN-BALANCE TO EX-REPORT-MIN-BAL.                  MOD03130
  314. 022406     WRITE EXCEPT-BUF FROM EXCEPT-DETAIL-LINE1.                   MOD03140
  315. 022407     WRITE EXCEPT-BUF FROM EXCEPT-DETAIL-LINE2.                   MOD03150
  316. 022408                                                                  MOD03160
  317. 022409 INITIATE-ACTION.                                                 MOD03170
  318. 022410                                                                  MOD03180
  319. 022411     MOVE WORK-ACTION-REASON   TO  ACT-REASON-CODE.               MOD03190
  320. 022412     MOVE TRAN-CONTROL-CODE    TO  ACT-CONTROL-CODE.              MOD03200
  321. 022420     MOVE ACCT-KEY             TO  ACT-ACCT-KEY.                  MOD03210
  322. 022430     MOVE ACCT-STATUS-CODE     TO  ACT-STATUS-CODE.               MOD03220
  323. 022440     MOVE TRAN-LOCATION-CODE   TO  ACT-ORIGIN-CODE.               MOD03230
  324. 022450     MOVE TRAN-TIMESTAMP       TO  ACT-TIMESTAMP.                 MOD03240
  325. 022460                                                                  MOD03250
  326. 022470                                                                  MOD03260
  327. 022480     MOVE PGM-SIGNATURE        TO  ACT-SIGNATURE.                 MOD03270
  328. 022490     WRITE ACTION-RECORD.                                         MOD03280
  329. 022500     ADD  +1  TO  ACTION-CNT.                                     MOD03290
  330. 022600                                                                  MOD03300
  331. 022700 GET-NUM-OF-DAYS.                                                 MOD03310
  332. 022800*                                                                 MOD03320
  333. 022900     ACCEPT TODAY-DATE FROM DATE.                                 MOD03330
  334. 023000                                                                  MOD03340
  335. 023100     COMPUTE DAYS-IN-PERIOD =                                     MOD03350
  336. 023200          MONTH (TODAY-MM) - TODAY-DD.                            MOD03360
  337. 023300     MOVE +0  TO  DAYS-IN-YEAR.                                   MOD03370
  338. 023400     PERFORM SUM-TOTAL-DAYS                                       MOD03380
  339. 023500             VARYING  WORK-CNT FROM 1 BY 1                        MOD03390
  340. 023600             UNTIL TODAY-DD = WORK-CNT.                           MOD03400
  341. 023700*                                                                 MOD03410
  342. 023800 SUM-TOTAL-DAYS.                                                  MOD03420
  343. 023900     COMPUTE DAYS-IN-YEAR = DAYS-IN-YEAR + MONTH ( WORK-CNT ).    MOD03430
  344. 024000*                                                                 MOD03440
  345. 024100                                                                  MOD03450
  346. 024200 INITIALIZE-PGM.                                                  MOD03460
  347. 024300                                                                  MOD03470
  348. 024400     PERFORM OPEN-FILES.                                          MOD03480
  349. 024500                                                                  MOD03490
  350. 024600     MOVE  +0          TO ACCT-IO-CNT                             MOD03500
  351. 024700                          TRAN-CNT                                MOD03510
  352. 024800                          ACTION-CNT                              MOD03520
  353. 024900                          WORK-RETURN-CODE.                       MOD03530
  354. 025000                                                                  MOD03540
  355. 025100     IF  FREE-SERVICE-MIN NOT NUMERIC                             MOD03550
  356. 025200         MOVE +0       TO FREE-SERVICE-MIN.                       MOD03560
  357. 025300     IF  CD-REVIEW-MIN    NOT NUMERIC                             MOD03570
  358. 025400         MOVE +0       TO CD-REVIEW-MIN.                          MOD03580
  359. 025500     IF  BRANCH-BALANCE   NOT NUMERIC                             MOD03590
  360. 025600         MOVE +0       TO BRANCH-BALANCE.                         MOD03600
  361. 025700     IF  BANK-BALANCE     NOT NUMERIC                             MOD03610
  362. 025800         MOVE +0       TO BANK-BALANCE.                           MOD03620
  363. 025900                                                                  MOD03630
  364. 026000     MOVE ZEROES       TO WORK-ACTION-REASON.                     MOD03640
  365. 026100                                                                  MOD03650
  366. 026200     PERFORM GET-NUM-OF-DAYS.                                     MOD03660
  367. 026300                                                                  MOD03670
  368. 026400 INIT-ACTION-RECORD.                                              MOD03680
  369. 026500     MOVE ACCT-CONTROL-CODE TO ACT-CONTROL-CODE.                  MOD03690
  370. 026600     MOVE ACCT-KEY TO ACT-ACCT-KEY.                               MOD03700
  371. 026700     MOVE ACCT-NUM OF ACCT-RECORD TO                              MOD03710
  372. 026800          ACCT-NUM OF ACTION-RECORD.                              MOD03720
  373. 026900     MOVE ACCT-TYPE OF ACCT-RECORD TO                             MOD03730
  374. 027000          ACCT-TYPE OF ACTION-RECORD.                             MOD03740
  375. 027100     MOVE ACCT-STATUS-CODE TO ACT-STATUS-CODE.                    MOD03750
  376. 027200     MOVE ACCT-BALANCE TO ACT-CUR-BALANCE.                        MOD03760
  377. 027300                                                                  MOD03770
  378. 027400                                                                  MOD03780
  379. 027500 CLOSE-PGM.                                                       MOD03790
  380. 027600                                                                  MOD03800
  381. 027700     PERFORM CLOSE-FILES.                                         MOD03810
  382. 027800                                                                  MOD03820
  383. 027900     MOVE WORK-RETURN-CODE  TO RETURN-CODE.                       MOD03830
  384. 028000                                                                  MOD03840
  385. 028100                                                                  MOD03850
  386. 028200 REPORT-FINAL-CNTRS.                                              MOD03860
  387. 028300                                                                  MOD03870
  388. 028400     DISPLAY 'TRANSACTION COUNT        =======> ' TRAN-CNT.       MOD03880
  389. 028500     DISPLAY 'ACCOUNT MASTER I/O COUNT =======> ' ACCT-IO-CNT.    MOD03890
  390. 028600     DISPLAY 'ACTION INITIATION COUNT  =======> ' ACTION-CNT.     MOD03900
  391. 028700                                                                  MOD03910
  392. 028800                                                                  MOD03920
  393. 028900 OPEN-FILES.                                                      MOD03930
  394. 029000                                                                  MOD03940
  395. 029100     OPEN  INPUT  TRAN-FILE                                       MOD03950
  396. 029200           I-O    ACCT-FILE                                       MOD03960
  397. 029300           OUTPUT ACTION-FILE.                                    MOD03970
  398. 029400                                                                  MOD03980
  399. 029500                                                                  MOD03990
  400. 029600 CLOSE-FILES.                                                     MOD04000
  401. 029700                                                                  MOD04010
  402. 029800     CLOSE EXCEPTION-FILE.                                        MOD04020
  403. 029900                                                                  MOD04030
  404. 030000     CLOSE TRAN-FILE                                              MOD04040
  405. 030100           ACCT-FILE                                              MOD04050
  406. 030200           ACTION-FILE.                                           MOD04060
  407. 030300                                                                  MOD04070
  408.