662 lines
52 KiB
COBOL
662 lines
52 KiB
COBOL
00001 IDENTIFICATION DIVISION. 08/31/05
|
|
00002 PROGRAM-ID. DTSBE331. DTSBE331
|
|
00003 AUTHOR. NGC. LV001
|
|
00004 DATE-WRITTEN. OCTOBER 2004. DTSBE331
|
|
00005 DATE-COMPILED. DTSBE331
|
|
00006 SKIP3 DTSBE331
|
|
00007 ***** DTSBE331
|
|
00008 * DTSBE331
|
|
00009 * FUNCTION: EXTRACT CREDIT/DEBIT DATA FOR WEB CREDIT/DEBIT DTSBE331
|
|
00010 * APPLICATION. DTSBE331
|
|
00011 * DTSBE331
|
|
00012 * MODIFICATION LOG: DTSBE331
|
|
00013 * DTSBE331
|
|
00014 * 10/28/2004 INITIAL DEVELOPMENT. DTSBE331
|
|
00015 * REFERENCE: PROGRAMMER: GD DTSBE331
|
|
00016 * DTSBE331
|
|
00017 * MM/DD/YYYY XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSBE331
|
|
00018 * XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSBE331
|
|
00019 * REFERENCE: XXXXXXXXXXXXXXX PROGRAMMER: XXX DTSBE331
|
|
00020 * DTSBE331
|
|
00021 * DTSBE331
|
|
00022 * DESCRIPTION: DTSBE331
|
|
00023 * DTSBE331
|
|
00024 * DTSBE331
|
|
00025 * INITIATION: DTSBE331
|
|
00026 * DTSBE331
|
|
00027 * SET LECM-MST-OPEN-READ-88 TO TRUE. DTSBE331
|
|
00028 * SET LECM-REF-OPEN-READ-88 TO TRUE. DTSBE331
|
|
00029 * DTSBE331
|
|
00030 * EDIT AND DEFAULT PARAMETERS. DTSBE331
|
|
00031 * DTSBE331
|
|
00032 * DTSBE331
|
|
00033 * PROCESSING: DTSBE331
|
|
00034 * DTSBE331
|
|
00035 * SEE PRINTED OUTPUTS DESCRIPTION AND LAYOUTS (DTSBX331) DTSBE331
|
|
00036 * DTSBE331
|
|
00037 * THIS PROGRAM RUNS DAILY, FOLLOWING THE DAILY UPDATE. DTSBE331
|
|
00038 * IT SELECTS EMPLOYERS WITH EITHER A BALANCE DUE OR A CREDIT.DTSBE331
|
|
00039 * FOR EACH EMPLOYER SELECTED, IT READS MJRN RECORDS CREATED DTSBE331
|
|
00040 * DURING THE MOST RECENT DAILY UPDATE. IT SUMMARIZES THE DTSBE331
|
|
00041 * RESULTS OF EACH TRANSACTION, AND WRITES AN OUTPUT RECORD DTSBE331
|
|
00042 * (DTSIX331) FOR EACH THAT RESULTED IN EITHER A DEBIT OR DTSBE331
|
|
00043 * CREDIT. THESE RECORDS ARE PASSED TO DTSBX331, WHICH DTSBE331
|
|
00044 * PRODUCES DTSIR330 REPORT RECORDS. DTSBE331
|
|
00045 * DTSBE331
|
|
00046 * TERMINATION: DTSBE331
|
|
00047 * DTSBE331
|
|
00048 * DTSBE331
|
|
00049 * DTSBE331
|
|
00050 * RECORDS READ: DTSBE331
|
|
00051 * DTSBE331
|
|
00052 * MASTER: DTSBE331
|
|
00053 * DTSBE331
|
|
00054 * MSOL DTSBE331
|
|
00055 * MQTR DTSBE331
|
|
00056 * DTSBE331
|
|
00057 * DTSBE331
|
|
00058 * ALTERNATE INDEX: DTSBE331
|
|
00059 * DTSBE331
|
|
00060 * NONE. DTSBE331
|
|
00061 * DTSBE331
|
|
00062 * DTSBE331
|
|
00063 * REFERENCE: DTSBE331
|
|
00064 * DTSBE331
|
|
00065 * DTSBE331
|
|
00066 * DTSBE331
|
|
00067 * RECORDS UPDATED: DTSBE331
|
|
00068 * DTSBE331
|
|
00069 * NONE DTSBE331
|
|
00070 * DTSBE331
|
|
00071 * DTSBE331
|
|
00072 * OUTPUT RECORDS WRITTEN: DTSBE331
|
|
00073 * DTSBE331
|
|
00074 * DTSBX331 DTSBE331
|
|
00075 * DTSBE331
|
|
00076 * DTSBE331
|
|
00077 * BATCH TRANSACTION COLLECTION RECORDS WRITTEN: DTSBE331
|
|
00078 * DTSBE331
|
|
00079 * NONE. DTSBE331
|
|
00080 * DTSBE331
|
|
00081 * DTSBE331
|
|
00082 * MODULES CALLED: DTSBE331
|
|
00083 * DTSBE331
|
|
00084 * DTSBU001 DATE EDIT/CONVERSION. DTSBE331
|
|
00085 * DTSBU004 QUARTER EDIT/CONVERSION. DTSBE331
|
|
00086 * DTSBU910 MASTER FILE I/O. DTSBE331
|
|
00087 * DTSBE331
|
|
00088 * DTSBE331
|
|
00089 * DTSBE331
|
|
00090 ***** DTSBE331
|
|
00091 SKIP3 DTSBE331
|
|
00092 ENVIRONMENT DIVISION. DTSBE331
|
|
00093 INPUT-OUTPUT SECTION. DTSBE331
|
|
00094 FILE-CONTROL. DTSBE331
|
|
00095 SELECT X331-FILE ASSIGN TO X331FILE DTSBE331
|
|
00096 FILE STATUS IS X331-STATUS. DTSBE331
|
|
00097 DTSBE331
|
|
00098 SELECT BE331-PARM-FILE ASSIGN TO BE331PRM DTSBE331
|
|
00099 FILE STATUS IS PARM-STATUS. DTSBE331
|
|
00100 DTSBE331
|
|
00101 DATA DIVISION. DTSBE331
|
|
00102 FILE SECTION. DTSBE331
|
|
00103 FD X331-FILE DTSBE331
|
|
00104 RECORDING MODE IS F DTSBE331
|
|
00105 LABEL RECORDS ARE STANDARD DTSBE331
|
|
00106 BLOCK CONTAINS 0 CHARACTERS. DTSBE331
|
|
00107 DTSBE331
|
|
00108 01 X331-REC. DTSBE331
|
|
00109 ++INCLUDE DTSIX331 DTSBE331
|
|
00110 DTSBE331
|
|
00111 FD BE331-PARM-FILE DTSBE331
|
|
00112 RECORDING MODE IS F DTSBE331
|
|
00113 LABEL RECORDS ARE STANDARD DTSBE331
|
|
00114 BLOCK CONTAINS 0 CHARACTERS. DTSBE331
|
|
00115 DTSBE331
|
|
00116 01 BE331-PARM-REC PIC S9(09) COMP-3. DTSBE331
|
|
00117 DTSBE331
|
|
00118 WORKING-STORAGE SECTION. DTSBE331
|
|
001185 77 PAN-VALET PICTURE X(24) VALUE '001DTSBE331 08/31/05'. DTSBE331
|
|
00119 SKIP3 DTSBE331
|
|
00120 01 WRK-AREA. DTSBE331
|
|
00121 05 WRK-ABEND-CD PIC S9(04) COMP VALUE +331.DTSBE331
|
|
00122 DTSBE331
|
|
00123 05 WRK-MOD-NAME PIC X(08) VALUE 'DTSBE331'.DTSBE331
|
|
00124 DTSBE331
|
|
00125 05 ABEND-MSG PIC X(60). DTSBE331
|
|
00126 DTSBE331
|
|
00127 05 X331-STATUS PIC X(02). DTSBE331
|
|
00128 88 X331-STATUS-OK-88 VALUE '00'. DTSBE331
|
|
00129 DTSBE331
|
|
00130 05 PARM-STATUS PIC X(02). DTSBE331
|
|
00131 88 PARM-STATUS-OK-88 VALUE '00'. DTSBE331
|
|
00132 DTSBE331
|
|
00133 05 WRK-SUBJECT-DATE PIC S9(09) COMP-3 VALUE +0. DTSBE331
|
|
00134 05 WRK-ABSTIME PIC S9(15) COMP-3 VALUE +0. DTSBE331
|
|
00135 DTSBE331
|
|
00136 05 QTR-FIRST PIC S9(04) COMP VALUE +400. DTSBE331
|
|
00137 05 QTR-LAST PIC S9(04) COMP VALUE +0. DTSBE331
|
|
00138 05 QTR-SUB PIC S9(04) COMP. DTSBE331
|
|
00139 05 WRK-JRN-TABLE OCCURS 400 TIMES. DTSBE331
|
|
00140 10 WRK-JRN-YRQ PIC S9(05) COMP-3. DTSBE331
|
|
00141 10 WRK-JRN-AMT PIC S9(09)V99 COMP-3. DTSBE331
|
|
00142 DTSBE331
|
|
00143 05 CR-LAST PIC S9(04) COMP VALUE +0. DTSBE331
|
|
00144 05 CR-MAX PIC S9(04) COMP VALUE +400. DTSBE331
|
|
00145 05 CR-SUB PIC S9(04) COMP. DTSBE331
|
|
00146 05 WRK-CREDIT-TABLE OCCURS 400 TIMES. DTSBE331
|
|
00147 10 WRK-CREDIT-AMT PIC S9(09)V99 COMP-3. DTSBE331
|
|
00148 DTSBE331
|
|
00149 05 WRK-MJRN-READ-CNT PIC S9(07) COMP-3 DTSBE331
|
|
00150 VALUE +0. DTSBE331
|
|
00151 DTSBE331
|
|
00152 05 WRK-AMT PIC S9(09)V99 COMP-3. DTSBE331
|
|
00153 05 WRK-QTR-BAL PIC S9(11)V99 COMP-3. DTSBE331
|
|
00154 DTSBE331
|
|
00155 DTSBE331
|
|
00156 05 WRK-X331-CNT PIC S9(07) COMP-3 DTSBE331
|
|
00157 VALUE +0. DTSBE331
|
|
00158 DTSBE331
|
|
00159 05 WRK-DISP-EMP PIC S9(07) COMP-3 DTSBE331
|
|
00160 VALUE +010169. DTSBE331
|
|
00161 DTSBE331
|
|
00162 05 DISPLAY-CNT PIC Z(06)9. DTSBE331
|
|
00163 DTSBE331
|
|
00164 05 DISPLAY-AMT-X PIC X(15). DTSBE331
|
|
00165 05 DISPLAY-AMT REDEFINES DISPLAY-AMT-X DTSBE331
|
|
00166 PIC ZZZ,ZZZ,ZZ9.99-. DTSBE331
|
|
00167 EJECT DTSBE331
|
|
00168 01 L001-LINK-AREA. DTSBE331
|
|
00169 ++INCLUDE DTSIL001 DTSBE331
|
|
00170 EJECT DTSBE331
|
|
00171 01 L004-LINK-AREA. DTSBE331
|
|
00172 ++INCLUDE DTSIL004 DTSBE331
|
|
00173 EJECT DTSBE331
|
|
00174 01 L005-LINK-AREA. DTSBE331
|
|
00175 ++INCLUDE DTSIL005 DTSBE331
|
|
00176 DTSBE331
|
|
00177 01 L910-LINK-AREA. DTSBE331
|
|
00178 ++INCLUDE DTSIL910 DTSBE331
|
|
00179 SKIP3 DTSBE331
|
|
00180 01 MSKL-REC. DTSBE331
|
|
00181 ++INCLUDE DTSIMSKL DTSBE331
|
|
00182 SKIP3 DTSBE331
|
|
00183 01 MQTR-REC. DTSBE331
|
|
00184 ++INCLUDE DTSIMQTR DTSBE331
|
|
00185 SKIP3 DTSBE331
|
|
00186 01 MJRN-REC. DTSBE331
|
|
00187 ++INCLUDE DTSIMJRN DTSBE331
|
|
00188 SKIP3 DTSBE331
|
|
00189 01 L931-LINK-AREA. DTSBE331
|
|
00190 ++INCLUDE DTSIL931 DTSBE331
|
|
00191 SKIP3 DTSBE331
|
|
00192 01 FSKL-REC. DTSBE331
|
|
00193 ++INCLUDE DTSIFSKL DTSBE331
|
|
00194 SKIP3 DTSBE331
|
|
00195 01 FQTR-REC. DTSBE331
|
|
00196 ++INCLUDE DTSIFQTR DTSBE331
|
|
00197 DTSBE331
|
|
00198 LINKAGE SECTION. DTSBE331
|
|
00199 SKIP3 DTSBE331
|
|
00200 01 LECM-LINK-AREA. DTSBE331
|
|
00201 ++INCLUDE DTSILECM DTSBE331
|
|
00202 SKIP3 DTSBE331
|
|
00203 10 FILLER REDEFINES LECM-EXTRACT-PARMS. DTSBE331
|
|
00204 15 LECM-PARM-SUBJECT-DATE PIC X(06). DTSBE331
|
|
00205 15 FILLER PIC X(62). DTSBE331
|
|
00206 EJECT DTSBE331
|
|
00207 01 MPRF-LINK-REC. DTSBE331
|
|
00208 ++INCLUDE DTSIMPRF DTSBE331
|
|
00209 EJECT DTSBE331
|
|
00210 PROCEDURE DIVISION USING LECM-LINK-AREA DTSBE331
|
|
00211 MPRF-LINK-REC. DTSBE331
|
|
00212 DTSBE331
|
|
00213 IF LECM-PROCESS-88 DTSBE331
|
|
00214 PERFORM P0000-PROCESS THRU P0000-EXIT DTSBE331
|
|
00215 ELSE DTSBE331
|
|
00216 IF LECM-INITIALIZE-88 DTSBE331
|
|
00217 PERFORM I0000-INITIALIZE THRU I0000-EXIT DTSBE331
|
|
00218 ELSE DTSBE331
|
|
00219 IF LECM-TERMINATE-88 DTSBE331
|
|
00220 PERFORM T0000-TERMINATE THRU T0000-EXIT DTSBE331
|
|
00221 ELSE DTSBE331
|
|
00222 MOVE 'INVALID LECM-CALL-TYPE-IND ENCOUNTERED' DTSBE331
|
|
00223 TO ABEND-MSG DTSBE331
|
|
00224 PERFORM S999-ABEND THRU S999-EXIT. DTSBE331
|
|
00225 SKIP2 DTSBE331
|
|
00226 GOBACK. DTSBE331
|
|
00227 EJECT DTSBE331
|
|
00228 I0000-INITIALIZE. DTSBE331
|
|
00229 SKIP2 DTSBE331
|
|
00230 MOVE LECM-TRACE-IND TO L910-TRACE-IND. DTSBE331
|
|
00231 DTSBE331
|
|
00232 MOVE WRK-MOD-NAME TO L910-MOD-NAME. DTSBE331
|
|
00233 DTSBE331
|
|
00234 DTSBE331
|
|
00235 PERFORM I1000-EDIT-AND-DEFAULT-PARMS THRU I1000-EXIT. DTSBE331
|
|
00236 DTSBE331
|
|
00237 PERFORM I2000-OPEN-FILES THRU I2000-EXIT. DTSBE331
|
|
00238 DTSBE331
|
|
00239 PERFORM I3000-WRITE-PARM THRU I3000-EXIT. DTSBE331
|
|
00240 DTSBE331
|
|
00241 SET LECM-MST-OPEN-READ-88 TO TRUE. DTSBE331
|
|
00242 DTSBE331
|
|
00243 SET LECM-REF-OPEN-READ-88 TO TRUE. DTSBE331
|
|
00244 DTSBE331
|
|
00245 I0000-EXIT. DTSBE331
|
|
00246 EXIT. DTSBE331
|
|
00247 EJECT DTSBE331
|
|
00248 I1000-EDIT-AND-DEFAULT-PARMS. DTSBE331
|
|
00249 IF LECM-PARM-SUBJECT-DATE = SPACES DTSBE331
|
|
00250 PERFORM I1200-DEFAULT-DATE THRU I1200-EXIT DTSBE331
|
|
00251 PERFORM I1100-SET-DATES THRU I1100-EXIT DTSBE331
|
|
00252 ELSE DTSBE331
|
|
00253 MOVE LECM-PARM-SUBJECT-DATE TO L001-CAL-6-DATE-X DTSBE331
|
|
00254 PERFORM S001-FROM-CAL-6 THRU S001-EXIT DTSBE331
|
|
00255 IF L001-VALID-DATE DTSBE331
|
|
00256 IF L001-FED-8-DATE-9 <= LECM-PRIOR-RUN-DATE DTSBE331
|
|
00257 MOVE L001-FED-8-DATE-9 TO WRK-SUBJECT-DATE DTSBE331
|
|
00258 PERFORM I1100-SET-DATES THRU I1100-EXIT DTSBE331
|
|
00259 ELSE DTSBE331
|
|
00260 PERFORM I1002-ERROR THRU I1002-EXIT DTSBE331
|
|
00261 ELSE DTSBE331
|
|
00262 PERFORM I1001-ERROR THRU I1001-EXIT DTSBE331
|
|
00263 END-IF DTSBE331
|
|
00264 END-IF. DTSBE331
|
|
00265 DTSBE331
|
|
00266 DTSBE331
|
|
00267 I1000-EXIT. DTSBE331
|
|
00268 EXIT. DTSBE331
|
|
00269 DTSBE331
|
|
00270 I1001-ERROR. DTSBE331
|
|
00271 DISPLAY 'INVALID PARM DATE ' L001-FED-8-DATE-X. DTSBE331
|
|
00272 MOVE 'INVALID PARM DATE' TO ABEND-MSG. DTSBE331
|
|
00273 PERFORM S999-ABEND THRU S999-EXIT. DTSBE331
|
|
00274 I1001-EXIT. DTSBE331
|
|
00275 EXIT. DTSBE331
|
|
00276 DTSBE331
|
|
00277 DTSBE331
|
|
00278 I1002-ERROR. DTSBE331
|
|
00279 DISPLAY 'SUBJECT DATE CANNOT BE > PRIOR RUN DATE ' DTSBE331
|
|
00280 L001-FED-8-DATE-X. DTSBE331
|
|
00281 MOVE 'FUTURE DATE' TO ABEND-MSG. DTSBE331
|
|
00282 PERFORM S999-ABEND THRU S999-EXIT. DTSBE331
|
|
00283 I1002-EXIT. DTSBE331
|
|
00284 EXIT. DTSBE331
|
|
00285 DTSBE331
|
|
00286 I1100-SET-DATES. DTSBE331
|
|
00287 MOVE WRK-SUBJECT-DATE TO L005-DATE. DTSBE331
|
|
00288 MOVE ZERO TO L005-TIME. DTSBE331
|
|
00289 PERFORM S005-FROM-DATE-TIME THRU S005-EXIT. DTSBE331
|
|
00290 MOVE L005-ABSTIME TO WRK-ABSTIME. DTSBE331
|
|
00291 DTSBE331
|
|
00292 DISPLAY 'SUBJECT DATE ' WRK-SUBJECT-DATE. DTSBE331
|
|
00293 DISPLAY 'ABSTIME ' WRK-ABSTIME. DTSBE331
|
|
00294 I1100-EXIT. DTSBE331
|
|
00295 EXIT. DTSBE331
|
|
00296 DTSBE331
|
|
00297 I1200-DEFAULT-DATE. DTSBE331
|
|
00298 MOVE LECM-PRIOR-RUN-DATE TO L001-FED-8-DATE-9. DTSBE331
|
|
00299 PERFORM S001-FROM-FED-8 THRU S001-EXIT. DTSBE331
|
|
00300 SUBTRACT 3 FROM L001-FED-8-YR. DTSBE331
|
|
00301 PERFORM S001-FROM-FED-8 THRU S001-EXIT. DTSBE331
|
|
00302 MOVE L001-FED-8-DATE-9 TO WRK-SUBJECT-DATE. DTSBE331
|
|
00303 I1200-EXIT. DTSBE331
|
|
00304 EXIT. DTSBE331
|
|
00305 DTSBE331
|
|
00306 I2000-OPEN-FILES. DTSBE331
|
|
00307 OPEN OUTPUT X331-FILE. DTSBE331
|
|
00308 IF NOT X331-STATUS-OK-88 DTSBE331
|
|
00309 DISPLAY 'X331 FILE OPEN ERROR: ' X331-STATUS DTSBE331
|
|
00310 MOVE 'FILE OPEN ERROR' DTSBE331
|
|
00311 TO ABEND-MSG DTSBE331
|
|
00312 PERFORM S999-ABEND THRU S999-EXIT DTSBE331
|
|
00313 END-IF. DTSBE331
|
|
00314 DTSBE331
|
|
00315 I2000-EXIT. DTSBE331
|
|
00316 EXIT. DTSBE331
|
|
00317 DTSBE331
|
|
00318 I3000-WRITE-PARM. DTSBE331
|
|
00319 OPEN OUTPUT BE331-PARM-FILE. DTSBE331
|
|
00320 IF NOT PARM-STATUS-OK-88 DTSBE331
|
|
00321 DISPLAY 'PARM FILE OPEN ERROR: ' PARM-STATUS DTSBE331
|
|
00322 PERFORM S999-ABEND THRU S999-EXIT DTSBE331
|
|
00323 END-IF. DTSBE331
|
|
00324 DTSBE331
|
|
00325 WRITE BE331-PARM-REC FROM WRK-SUBJECT-DATE. DTSBE331
|
|
00326 IF NOT PARM-STATUS-OK-88 DTSBE331
|
|
00327 DISPLAY 'PARM FILE WRITE ERROR: ' PARM-STATUS DTSBE331
|
|
00328 PERFORM S999-ABEND THRU S999-EXIT DTSBE331
|
|
00329 END-IF. DTSBE331
|
|
00330 DTSBE331
|
|
00331 CLOSE BE331-PARM-FILE. DTSBE331
|
|
00332 IF NOT PARM-STATUS-OK-88 DTSBE331
|
|
00333 DISPLAY 'PARM FILE CLOSE ERROR: ' PARM-STATUS DTSBE331
|
|
00334 PERFORM S999-ABEND THRU S999-EXIT DTSBE331
|
|
00335 END-IF. DTSBE331
|
|
00336 DTSBE331
|
|
00337 I3000-EXIT. DTSBE331
|
|
00338 EXIT. DTSBE331
|
|
00339 DTSBE331
|
|
00340 P0000-PROCESS. DTSBE331
|
|
00341 IF MPRF-TOT-BALANCE-AMT > ZERO DTSBE331
|
|
00342 OR MPRF-TOT-CREDIT-AMT > ZERO DTSBE331
|
|
00343 NEXT SENTENCE DTSBE331
|
|
00344 ELSE DTSBE331
|
|
00345 GO TO P0000-EXIT. DTSBE331
|
|
00346 DTSBE331
|
|
00347 PERFORM P4000-ACCTS-RECEIVABLE THRU P4000-EXIT. DTSBE331
|
|
00348 DTSBE331
|
|
00349 P0000-EXIT. DTSBE331
|
|
00350 EXIT. DTSBE331
|
|
00351 DTSBE331
|
|
00352 P4000-ACCTS-RECEIVABLE. DTSBE331
|
|
00353 *& DTSBE331
|
|
00354 * IF MPRF-EMP-NO = 079042 OR 052388 DTSBE331
|
|
00355 * DISPLAY 'P4000 ' MPRF-EMP-NO ' ' MJRN-BATCH-NO DTSBE331
|
|
00356 * ' ' MJRN-ITEM-NO ' ' MJRN-ESTB-DATE DTSBE331
|
|
00357 * END-IF. DTSBE331
|
|
00358 *& DTSBE331
|
|
00359 MOVE LOW-VALUES TO MJRN-KEY-AREA. DTSBE331
|
|
00360 MOVE MPRF-EMP-NO TO MJRN-EMP-NO. DTSBE331
|
|
00361 MOVE WRK-ABSTIME TO MJRN-ESTB-ABSTIME. DTSBE331
|
|
00362 SET MJRN-JRN-88 TO TRUE. DTSBE331
|
|
00363 MOVE MJRN-KEY-AREA TO MSKL-KEY-AREA. DTSBE331
|
|
00364 PERFORM S910-START-BROWSE THRU S910-EXIT. DTSBE331
|
|
00365 PERFORM UNTIL L910-NO-REC-88 DTSBE331
|
|
00366 MOVE MSKL-REC TO MJRN-REC DTSBE331
|
|
00367 ADD +1 TO WRK-MJRN-READ-CNT DTSBE331
|
|
00368 IF MJRN-ESTB-DATE >= WRK-SUBJECT-DATE DTSBE331
|
|
00369 PERFORM P4200-ACCT-TABLE THRU P4200-EXIT DTSBE331
|
|
00370 END-IF DTSBE331
|
|
00371 PERFORM S910-READ-NEXT THRU S910-EXIT DTSBE331
|
|
00372 END-PERFORM. DTSBE331
|
|
00373 DTSBE331
|
|
00374 DTSBE331
|
|
00375 P4000-EXIT. DTSBE331
|
|
00376 EXIT. DTSBE331
|
|
00377 DTSBE331
|
|
00378 P4200-ACCT-TABLE. DTSBE331
|
|
00379 MOVE +400 TO QTR-FIRST DTSBE331
|
|
00380 MOVE +0 TO QTR-LAST DTSBE331
|
|
00381 CR-LAST DTSBE331
|
|
00382 CR-SUB. DTSBE331
|
|
00383 DTSBE331
|
|
00384 PERFORM DTSBE331
|
|
00385 VARYING QTR-SUB FROM +1 BY +1 DTSBE331
|
|
00386 UNTIL QTR-SUB > +400 DTSBE331
|
|
00387 MOVE +0 TO WRK-JRN-YRQ (QTR-SUB) DTSBE331
|
|
00388 WRK-JRN-AMT (QTR-SUB) DTSBE331
|
|
00389 WRK-CREDIT-AMT (QTR-SUB) DTSBE331
|
|
00390 END-PERFORM. DTSBE331
|
|
00391 DTSBE331
|
|
00392 IF MJRN-TRAN-CNVR-88 DTSBE331
|
|
00393 OR MJRN-REFUND-PAY-88 DTSBE331
|
|
00394 GO TO P4200-EXIT. DTSBE331
|
|
00395 DTSBE331
|
|
00396 PERFORM P4210-ACCT-ENTRY THRU P4210-EXIT DTSBE331
|
|
00397 VARYING MJRN-OCC-IDX FROM +1 BY +1 DTSBE331
|
|
00398 UNTIL MJRN-OCC-IDX > MJRN-OCC-CNT. DTSBE331
|
|
00399 DTSBE331
|
|
00400 PERFORM P4300-WRITE-DEBITS THRU P4300-EXIT. DTSBE331
|
|
00401 DTSBE331
|
|
00402 PERFORM P4400-WRITE-CREDITS THRU P4400-EXIT. DTSBE331
|
|
00403 DTSBE331
|
|
00404 P4200-EXIT. DTSBE331
|
|
00405 EXIT. DTSBE331
|
|
00406 DTSBE331
|
|
00407 DTSBE331
|
|
00408 P4210-ACCT-ENTRY. DTSBE331
|
|
00409 IF MJRN-YRQ (MJRN-OCC-IDX) = LECM-PICKUP-YRQ DTSBE331
|
|
00410 GO TO P4210-EXIT. DTSBE331
|
|
00411 DTSBE331
|
|
00412 IF MJRN-ROW-UI-88 (MJRN-OCC-IDX) DTSBE331
|
|
00413 PERFORM P4211-TAX THRU P4211-EXIT DTSBE331
|
|
00414 ELSE DTSBE331
|
|
00415 IF MJRN-YRQ-CREDIT-88 (MJRN-OCC-IDX) DTSBE331
|
|
00416 PERFORM P4212-CREDIT THRU P4212-EXIT DTSBE331
|
|
00417 GO TO P4210-EXIT DTSBE331
|
|
00418 END-IF DTSBE331
|
|
00419 END-IF. DTSBE331
|
|
00420 DTSBE331
|
|
00421 P4210-EXIT. DTSBE331
|
|
00422 EXIT. DTSBE331
|
|
00423 DTSBE331
|
|
00424 P4211-TAX. DTSBE331
|
|
00425 MOVE MJRN-YRQ (MJRN-OCC-IDX) TO L004-QTR-5-9. DTSBE331
|
|
00426 PERFORM S004-FROM-5 THRU S004-EXIT. DTSBE331
|
|
00427 MOVE L004-ABS-QTR TO QTR-SUB. DTSBE331
|
|
00428 MOVE L004-QTR-5-9 TO WRK-JRN-YRQ (QTR-SUB). DTSBE331
|
|
00429 DTSBE331
|
|
00430 IF QTR-SUB < QTR-FIRST DTSBE331
|
|
00431 MOVE QTR-SUB TO QTR-FIRST DTSBE331
|
|
00432 END-IF. DTSBE331
|
|
00433 DTSBE331
|
|
00434 IF QTR-SUB > QTR-LAST DTSBE331
|
|
00435 MOVE QTR-SUB TO QTR-LAST DTSBE331
|
|
00436 END-IF. DTSBE331
|
|
00437 DTSBE331
|
|
00438 IF MJRN-COL-PAID-88 (MJRN-OCC-IDX) DTSBE331
|
|
00439 OR MJRN-COL-TOLERATED-88 (MJRN-OCC-IDX) DTSBE331
|
|
00440 OR MJRN-COL-WAIVED-88 (MJRN-OCC-IDX) DTSBE331
|
|
00441 OR MJRN-COL-WRITTEN-OFF-88 (MJRN-OCC-IDX) DTSBE331
|
|
00442 SUBTRACT MJRN-AMT (MJRN-OCC-IDX) DTSBE331
|
|
00443 FROM WRK-JRN-AMT (QTR-SUB) DTSBE331
|
|
00444 ELSE DTSBE331
|
|
00445 ADD MJRN-AMT (MJRN-OCC-IDX) DTSBE331
|
|
00446 TO WRK-JRN-AMT (QTR-SUB) DTSBE331
|
|
00447 END-IF. DTSBE331
|
|
00448 DTSBE331
|
|
00449 P4211-EXIT. DTSBE331
|
|
00450 EXIT. DTSBE331
|
|
00451 DTSBE331
|
|
00452 P4212-CREDIT. DTSBE331
|
|
00453 IF CR-SUB < CR-MAX DTSBE331
|
|
00454 ADD +1 TO CR-SUB DTSBE331
|
|
00455 MOVE CR-SUB TO CR-LAST DTSBE331
|
|
00456 ELSE DTSBE331
|
|
00457 DISPLAY 'CREDIT TABLE LENGTH EXCEEDED ' DTSBE331
|
|
00458 MJRN-EMP-NO ' ' MJRN-BATCH-NO ' ' MJRN-ITEM-NO DTSBE331
|
|
00459 GO TO P4212-EXIT DTSBE331
|
|
00460 END-IF. DTSBE331
|
|
00461 DTSBE331
|
|
00462 ADD MJRN-AMT (MJRN-OCC-IDX) TO WRK-CREDIT-AMT (CR-SUB). DTSBE331
|
|
00463 DTSBE331
|
|
00464 *& DTSBE331
|
|
00465 * MOVE MJRN-AMT (MJRN-OCC-IDX) TO DISPLAY-AMT. DTSBE331
|
|
00466 * DISPLAY 'P4412 ' MJRN-EMP-NO ' ' MJRN-BATCH-NO DTSBE331
|
|
00467 * ' ' MJRN-ITEM-NO ' ' DISPLAY-AMT. DTSBE331
|
|
00468 * DISPLAY SPACE. DTSBE331
|
|
00469 *& DTSBE331
|
|
00470 P4212-EXIT. DTSBE331
|
|
00471 EXIT. DTSBE331
|
|
00472 DTSBE331
|
|
00473 DTSBE331
|
|
00474 P4300-WRITE-DEBITS. DTSBE331
|
|
00475 PERFORM DTSBE331
|
|
00476 VARYING QTR-SUB FROM QTR-FIRST BY +1 DTSBE331
|
|
00477 UNTIL QTR-SUB > QTR-LAST DTSBE331
|
|
00478 IF WRK-JRN-AMT (QTR-SUB) NOT = ZERO DTSBE331
|
|
00479 PERFORM P4310-WRITE-X331 THRU P4310-EXIT DTSBE331
|
|
00480 END-IF DTSBE331
|
|
00481 END-PERFORM. DTSBE331
|
|
00482 DTSBE331
|
|
00483 P4300-EXIT. DTSBE331
|
|
00484 EXIT. DTSBE331
|
|
00485 DTSBE331
|
|
00486 P4310-WRITE-X331. DTSBE331
|
|
00487 MOVE MPRF-EMP-NO TO X331-EMP-NO. DTSBE331
|
|
00488 MOVE WRK-JRN-YRQ (QTR-SUB) TO X331-YRQ. DTSBE331
|
|
00489 MOVE MJRN-ESTB-DATE TO X331-ESTB-DATE. DTSBE331
|
|
00490 MOVE MJRN-BATCH-NO TO X331-BATCH-NO. DTSBE331
|
|
00491 MOVE MJRN-ITEM-NO TO X331-ITEM-NO. DTSBE331
|
|
00492 MOVE MJRN-TRAN-TYPE TO X331-TRAN-TYPE. DTSBE331
|
|
00493 MOVE MJRN-TRAN-CATEGORY TO X331-TRAN-CATEGORY. DTSBE331
|
|
00494 MOVE MJRN-EMP-CLASS TO X331-EMP-CLASS. DTSBE331
|
|
00495 DTSBE331
|
|
00496 MOVE WRK-JRN-AMT (QTR-SUB) TO X331-AMT. DTSBE331
|
|
00497 *& DTSBE331
|
|
00498 * IF MPRF-EMP-NO = 079042 OR 052388 DTSBE331
|
|
00499 * DISPLAY 'P4311 ' X331-EMP-NO ' ' X331-BATCH-NO DTSBE331
|
|
00500 * ' ' X331-ITEM-NO ' ' X331-AMT DTSBE331
|
|
00501 * DISPLAY SPACE DTSBE331
|
|
00502 * END-IF. DTSBE331
|
|
00503 *& DTSBE331
|
|
00504 WRITE X331-REC. DTSBE331
|
|
00505 IF X331-STATUS-OK-88 DTSBE331
|
|
00506 ADD +1 TO WRK-X331-CNT DTSBE331
|
|
00507 ELSE DTSBE331
|
|
00508 DISPLAY 'CANNOT WRITE X331 ' MPRF-EMP-NO DTSBE331
|
|
00509 ' ' MJRN-BATCH-NO ' ' MJRN-ITEM-NO DTSBE331
|
|
00510 END-IF. DTSBE331
|
|
00511 DTSBE331
|
|
00512 P4310-EXIT. DTSBE331
|
|
00513 EXIT. DTSBE331
|
|
00514 DTSBE331
|
|
00515 P4400-WRITE-CREDITS. DTSBE331
|
|
00516 PERFORM DTSBE331
|
|
00517 VARYING CR-SUB FROM +1 BY +1 DTSBE331
|
|
00518 UNTIL CR-SUB > CR-LAST DTSBE331
|
|
00519 IF WRK-CREDIT-AMT (CR-SUB) > +1 DTSBE331
|
|
00520 PERFORM P4410-WRITE-X331 THRU P4410-EXIT DTSBE331
|
|
00521 END-IF DTSBE331
|
|
00522 END-PERFORM. DTSBE331
|
|
00523 DTSBE331
|
|
00524 P4400-EXIT. DTSBE331
|
|
00525 EXIT. DTSBE331
|
|
00526 DTSBE331
|
|
00527 P4410-WRITE-X331. DTSBE331
|
|
00528 MOVE MPRF-EMP-NO TO X331-EMP-NO. DTSBE331
|
|
00529 MOVE +99999 TO X331-YRQ. DTSBE331
|
|
00530 MOVE MJRN-ESTB-DATE TO X331-ESTB-DATE. DTSBE331
|
|
00531 MOVE MJRN-BATCH-NO TO X331-BATCH-NO. DTSBE331
|
|
00532 MOVE MJRN-ITEM-NO TO X331-ITEM-NO. DTSBE331
|
|
00533 MOVE MJRN-TRAN-TYPE TO X331-TRAN-TYPE. DTSBE331
|
|
00534 MOVE MJRN-TRAN-CATEGORY TO X331-TRAN-CATEGORY. DTSBE331
|
|
00535 MOVE MJRN-EMP-CLASS TO X331-EMP-CLASS. DTSBE331
|
|
00536 DTSBE331
|
|
00537 MOVE WRK-CREDIT-AMT (CR-SUB) TO X331-AMT. DTSBE331
|
|
00538 *& DTSBE331
|
|
00539 * DISPLAY 'P4410 ' X331-EMP-NO ' ' X331-BATCH-NO DTSBE331
|
|
00540 * ' ' X331-ITEM-NO ' ' X331-AMT ' ' X331-YRQ. DTSBE331
|
|
00541 * DISPLAY SPACE. DTSBE331
|
|
00542 *& DTSBE331
|
|
00543 WRITE X331-REC. DTSBE331
|
|
00544 IF X331-STATUS-OK-88 DTSBE331
|
|
00545 ADD +1 TO WRK-X331-CNT DTSBE331
|
|
00546 ELSE DTSBE331
|
|
00547 DISPLAY 'CANNOT WRITE X331 ' MPRF-EMP-NO DTSBE331
|
|
00548 ' ' MJRN-BATCH-NO ' ' MJRN-ITEM-NO DTSBE331
|
|
00549 END-IF. DTSBE331
|
|
00550 DTSBE331
|
|
00551 P4410-EXIT. DTSBE331
|
|
00552 EXIT. DTSBE331
|
|
00553 DTSBE331
|
|
00554 T0000-TERMINATE. DTSBE331
|
|
00555 CLOSE X331-FILE. DTSBE331
|
|
00556 DTSBE331
|
|
00557 MOVE WRK-X331-CNT TO DISPLAY-CNT. DTSBE331
|
|
00558 DTSBE331
|
|
00559 DISPLAY '*********************************************'. DTSBE331
|
|
00560 DISPLAY '** DTSBE331 TERMINATION STATISTICS **'. DTSBE331
|
|
00561 DISPLAY '** **'. DTSBE331
|
|
00562 DISPLAY '** X331 COUNT ' DISPLAY-CNT DTSBE331
|
|
00563 ' **'. DTSBE331
|
|
00564 DISPLAY '** **'. DTSBE331
|
|
00565 DISPLAY '*********************************************'. DTSBE331
|
|
00566 DTSBE331
|
|
00567 T0000-EXIT. DTSBE331
|
|
00568 EXIT. DTSBE331
|
|
00569 DTSBE331
|
|
00570 S001-FROM-FED-8. DTSBE331
|
|
00571 SET L001-FROM-FED-8 TO TRUE. DTSBE331
|
|
00572 GO TO S001-DATE. DTSBE331
|
|
00573 DTSBE331
|
|
00574 S001-FROM-ABS-DAY. DTSBE331
|
|
00575 SET L001-FROM-ABS-DAY TO TRUE. DTSBE331
|
|
00576 GO TO S001-DATE. DTSBE331
|
|
00577 DTSBE331
|
|
00578 S001-FROM-CAL-6. DTSBE331
|
|
00579 SET L001-FROM-CAL-6 TO TRUE. DTSBE331
|
|
00580 GO TO S001-DATE. DTSBE331
|
|
00581 DTSBE331
|
|
00582 S001-DATE. DTSBE331
|
|
00583 CALL 'DTSBU001' USING L001-LINK-AREA. DTSBE331
|
|
00584 S001-EXIT. DTSBE331
|
|
00585 EXIT. DTSBE331
|
|
00586 SKIP3 DTSBE331
|
|
00587 S004-FROM-5. DTSBE331
|
|
00588 SET L004-FROM-5 TO TRUE. DTSBE331
|
|
00589 GO TO S004-QTR. DTSBE331
|
|
00590 DTSBE331
|
|
00591 S004-FROM-ABS. DTSBE331
|
|
00592 SET L004-FROM-ABS TO TRUE. DTSBE331
|
|
00593 GO TO S004-QTR. DTSBE331
|
|
00594 DTSBE331
|
|
00595 S004-FROM-3. DTSBE331
|
|
00596 SET L004-FROM-3 TO TRUE. DTSBE331
|
|
00597 GO TO S004-QTR. DTSBE331
|
|
00598 DTSBE331
|
|
00599 S004-FROM-DATE. DTSBE331
|
|
00600 SET L004-FROM-DATE TO TRUE. DTSBE331
|
|
00601 GO TO S004-QTR. DTSBE331
|
|
00602 DTSBE331
|
|
00603 S004-QTR. DTSBE331
|
|
00604 DTSBE331
|
|
00605 CALL 'DTSBU004' USING L004-LINK-AREA. DTSBE331
|
|
00606 DTSBE331
|
|
00607 S004-EXIT. DTSBE331
|
|
00608 EXIT. DTSBE331
|
|
00609 SKIP3 DTSBE331
|
|
00610 S005-FROM-DATE-TIME. DTSBE331
|
|
00611 SET L005-FROM-DATE-TIME TO TRUE. DTSBE331
|
|
00612 CALL 'DTSBU005' USING L005-LINK-AREA. DTSBE331
|
|
00613 S005-EXIT. DTSBE331
|
|
00614 EXIT. DTSBE331
|
|
00615 DTSBE331
|
|
00616 S910-READ. DTSBE331
|
|
00617 SET L910-READ-88 TO TRUE. DTSBE331
|
|
00618 GO TO S910-MSTR-IO. DTSBE331
|
|
00619 DTSBE331
|
|
00620 S910-START-BROWSE. DTSBE331
|
|
00621 SET L910-START-BROWSE-88 TO TRUE. DTSBE331
|
|
00622 GO TO S910-MSTR-IO. DTSBE331
|
|
00623 DTSBE331
|
|
00624 S910-READ-NEXT. DTSBE331
|
|
00625 SET L910-READ-NEXT-88 TO TRUE. DTSBE331
|
|
00626 GO TO S910-MSTR-IO. DTSBE331
|
|
00627 DTSBE331
|
|
00628 *S910-COUNT. DTSBE331
|
|
00629 *****SET L910-COUNT-88 TO TRUE. DTSBE331
|
|
00630 *****GO TO S910-MSTR-IO. DTSBE331
|
|
00631 DTSBE331
|
|
00632 S910-REWRITE. DTSBE331
|
|
00633 SET L910-REWRITE-88 TO TRUE. DTSBE331
|
|
00634 SET LECM-EMP-UPDATED-YES-88 TO TRUE. DTSBE331
|
|
00635 GO TO S910-MSTR-IO. DTSBE331
|
|
00636 DTSBE331
|
|
00637 S910-MSTR-IO. DTSBE331
|
|
00638 CALL 'DTSBU910' USING L910-LINK-AREA DTSBE331
|
|
00639 MSKL-REC. DTSBE331
|
|
00640 S910-EXIT. DTSBE331
|
|
00641 EXIT. DTSBE331
|
|
00642 SKIP3 DTSBE331
|
|
00643 DTSBE331
|
|
00644 S931-READ. DTSBE331
|
|
00645 SET L931-READ-88 TO TRUE. DTSBE331
|
|
00646 GO TO S931-REF-IO. DTSBE331
|
|
00647 DTSBE331
|
|
00648 S931-REF-IO. DTSBE331
|
|
00649 CALL 'DTSBU931' USING L931-LINK-AREA DTSBE331
|
|
00650 FSKL-REC. DTSBE331
|
|
00651 S931-EXIT. DTSBE331
|
|
00652 EXIT. DTSBE331
|
|
00653 DTSBE331
|
|
00654 S999-ABEND. DTSBE331
|
|
00655 DISPLAY '*** DTSBE331 ABENDING. ' DTSBE331
|
|
00656 ABEND-MSG. DTSBE331
|
|
00657 DTSBE331
|
|
00658 CALL 'DTSBU999' USING WRK-ABEND-CD. DTSBE331
|
|
00659 S999-EXIT. DTSBE331
|
|
00660 EXIT. DTSBE331
|