Files
DUTAS/Batch/DTSBD525.cob
2025-07-21 11:20:11 -04:00

377 lines
30 KiB
COBOL

00001 IDENTIFICATION DIVISION. 03/23/16
00002 PROGRAM-ID. DTSBD525. DTSBD525
00003 AUTHOR. NGC. LV007
00004 DATE-WRITTEN. SEPTEMBER 2006. DTSBD525
00005 DATE-COMPILED. DTSBD525
00006 SKIP3 DTSBD525
00007 ***** DTSBD525
00008 * DTSBD525
00009 * DTSBD525
00010 * FUNCTION: ADD MEVL RECORDS WHEN A SELF-INSURED BILL DTSBD525
00011 * FOR ADMINISTRATIVE ASSESSMENT IS PRINTED. DTSBD525
00012 * DTSBD525
00013 * MODIFICATION HISTORY: DTSBD525
00014 * DTSBD525
00015 * 09-21-2006 INITIAL DEVELOPMENT. DTSBD525
00016 * REFERENCE RFP # ADMIN ASSESS PROGRAMMER: GD DTSBD525
00017 * DTSBD525
00018 * MM-DD-CCYY XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXDTSBD525
00019 * XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXDTSBD525
00020 * REFERENCE RFP #**** PROGRAMMER: XXXDTSBD525
00021 * DTSBD525
00022 * DTSBD525
00023 * DESCRIPTION: DTSBD525
00024 * DTSBD525
00025 * THIS PROGRAM RUNS AT THE END OF THE DAILY UPDATE. DTSBD525
00026 * BEFORE THE UPDATE, DTSBE325 CREATES T026 ACCOUNTING DTSBD525
00027 * TRANSACTIONS AND R325 REPORT RECORDS FOR SELF-INSURED DTSBD525
00028 * EMPLOYERS WHO OWE ADMINISTRATIVE ASSESSMENT. DTSBD525
00029 * DTSBD525 READS THE REPORT RECORDS. FOR EACH, IT FINDS DTSBD525
00030 * THE MQTR RECORDS AND DETERMINES THE ACTUAL BALANCE DUE DTSBD525
00031 * (TAKING ACCOUNT OF ANY CREDITS THE EMPLOYER MAY HAVE DTSBD525
00032 * HAD). IF THERE IS STILL A BALANCE DUE, IT UPDATES THE DTSBD525
00033 * R325 RECORD, ADDING THE ACTUAL AMOUNT OWED, AND ADDS DTSBD525
00034 * AN MEVL RECORD. DTSBD525
00035 * DTSBD525
00036 * PROCESSING: DTSBD525
00037 * DTSBD525
00038 * DETAIL: DTSBD525
00039 * DTSBD525
00040 * DTSBD525
00041 * RECORDS READ: DTSBD525
00042 * DTSBD525
00043 * MQTR. DTSBD525
00044 * DTSBD525
00045 * DTSBD525
00046 * PRINTED OUTPUTS: DTSBD525
00047 * DTSBD525
00048 * R325 UPDATED REPORT RECORD. DTSBD525
00049 * DTSBD525
00050 * RECORDS WRITTEN: DTSBD525
00051 * DTSBD525
00052 * NONE. DTSBD525
00053 * DTSBD525
00054 * DTSBD525
00055 * MODULES CALLED: DTSBD525
00056 * DTSBD525
00057 * DTSBU001 DATE EDIT/CONVERSION. DTSBD525
00058 * DTSBD525
00059 ***** DTSBD525
00060 EJECT DTSBD525
00061 ENVIRONMENT DIVISION. DTSBD525
00062 SKIP2 DTSBD525
00063 CONFIGURATION SECTION. DTSBD525
00064 SPECIAL-NAMES. C01 IS TOP-OF-PAGE. DTSBD525
00065 INPUT-OUTPUT SECTION. DTSBD525
00066 SKIP2 DTSBD525
00067 FILE-CONTROL. DTSBD525
00068 DTSBD525
00069 SELECT R325-FILE ASSIGN TO DTSFR325 DTSBD525
00070 FILE STATUS IS R325-STATUS. DTSBD525
00071 DTSBD525
00072 DATA DIVISION. DTSBD525
00073 DTSBD525
00074 FILE SECTION. DTSBD525
00075 DTSBD525
00076 FD R325-FILE DTSBD525
00077 RECORDING MODE IS V DTSBD525
00078 LABEL RECORDS ARE STANDARD. DTSBD525
00079 01 FILE-REC. DTSBD525
00080 ++INCLUDE DTSIRVAR DTSBD525
00081 SKIP3 DTSBD525
00082 01 R325-REC. DTSBD525
00083 ++INCLUDE DTSIR325 DTSBD525
00084 DTSBD525
00085 WORKING-STORAGE SECTION. DTSBD525
000855 77 PAN-VALET PICTURE X(24) VALUE '007DTSBD525 03/23/16'. DTSBD525
00086 77 PAN-VALET PICTURE X(24) VALUE '003DTSBD525 03/23/16'. DTSBD525
00087 77 PAN-VALET PICTURE X(24) VALUE '005DTSBD525 05/28/14'. DTSBD525
00088 77 PAN-VALET PICTURE X(24) VALUE '012DTSBD525 05/28/14'. DTSBD525
00089 77 PAN-VALET PICTURE X(24) VALUE '003DTSBD525 06/18/13'. DTSBD525
00090 77 PAN-VALET PICTURE X(24) VALUE '002DTSBD525 06/17/13'. DTSBD525
00091 77 PAN-VALET PICTURE X(24) VALUE '001DTSBD525 10/04/06'. DTSBD525
00092 DTSBD525
00093 01 WRK-AREA-CONSTANTS. DTSBD525
00094 05 WRK-ABEND-CD PIC S9(04) COMP DTSBD525
00095 VALUE +525. DTSBD525
00096 05 WRK-TRACE-IND PIC X(01). DTSBD525
00097 05 WRK-ABEND-MSG PIC X(60) VALUE SPACES. DTSBD525
00098 05 WRK-MOD-NAME PIC X(08) VALUE 'DTSBD525'.DTSBD525
00099 DTSBD525
00100 05 R325-STATUS PIC X(02). DTSBD525
00101 88 R325-STATUS-OK-88 VALUE '00'. DTSBD525
00102 88 R325-STATUS-EOF-88 VALUE '10'. DTSBD525
00103 DTSBD525
00104 05 WRK-ERROR-IND PIC X(01). DTSBD525
00105 88 WRK-ERROR-YES-88 VALUE 'Y'. DTSBD525
00106 88 WRK-ERROR-NO-88 VALUE 'N'. DTSBD525
00107 DTSBD525
00108 05 VAR-CHAR-CNT PIC S9(04) COMP VALUE +0. DTSBD525
00109 DTSBD525
00110 05 WRK-BALANCE PIC S9(11)V9(02) COMP-3 VALUE +0. DTSBD525
00111 05 WRK-EMP-NO PIC S9(07) COMP-3 VALUE +0. DTSBD525
00112 05 WRK-YRQ PIC S9(05) COMP-3 VALUE +0. DTSBD525
00113 05 WRK-AMT-DISP PIC ZZZ,ZZZ,ZZ9.99. DTSBD525
00114 DTSBD525
00115 05 WRK-READ-CNT PIC S9(07) COMP-3 VALUE +0. DTSBD525
00116 05 WRK-UPDATE-CNT PIC S9(07) COMP-3 VALUE +0. DTSBD525
00117 DTSBD525
00118 05 AMT-DISP1 PIC ---------9.99. DTSBD525
00119 05 AMT-DISP2 PIC ---------9.99. DTSBD525
00120 EJECT DTSBD525
00121 01 L001-LINK-AREA. DTSBD525
00122 ++INCLUDE DTSIL001 DTSBD525
00123 EJECT DTSBD525
00124 01 L004-LINK-AREA. DTSBD525
00125 ++INCLUDE DTSIL004 DTSBD525
00126 EJECT DTSBD525
00127 01 L005-LINK-AREA. DTSBD525
00128 ++INCLUDE DTSIL005 DTSBD525
00129 EJECT DTSBD525
00130 01 L910-LINK-AREA. DTSBD525
00131 ++INCLUDE DTSIL910 DTSBD525
00132 EJECT DTSBD525
00133 01 MSKL-REC. DTSBD525
00134 ++INCLUDE DTSIMSKL DTSBD525
00135 EJECT DTSBD525
00136 01 MHDR-REC. DTSBD525
00137 ++INCLUDE DTSIMHDR DTSBD525
00138 EJECT DTSBD525
00139 01 MQTR-REC. DTSBD525
00140 ++INCLUDE DTSIMQTR DTSBD525
00141 EJECT DTSBD525
00142 01 MEVL-REC. DTSBD525
00143 ++INCLUDE DTSIMEVL DTSBD525
00144 EJECT DTSBD525
00145 DTSBD525
00146 PROCEDURE DIVISION. DTSBD525
00147 PERFORM I0000-INITIATE THRU I0000-EXIT. DTSBD525
00148 DTSBD525
00149 PERFORM P0000-PROCESS THRU P0000-EXIT. DTSBD525
00150 DTSBD525
00151 PERFORM T0000-TERMINATE THRU T0000-EXIT. DTSBD525
00152 DTSBD525
00153 SKIP2 DTSBD525
00154 GOBACK. DTSBD525
00155 EJECT DTSBD525
00156 I0000-INITIATE. DTSBD525
00157 DTSBD525
00158 MOVE 'N' TO WRK-TRACE-IND. DTSBD525
00159 SET WRK-ERROR-NO-88 TO TRUE. DTSBD525
00160 DTSBD525
00161 PERFORM I2000-OPEN-FILES THRU I2000-EXIT. DTSBD525
00162 DTSBD525
00163 PERFORM I3000-CURRENT-DATE THRU I3000-EXIT. DTSBD525
00164 I0000-EXIT. DTSBD525
00165 EXIT. DTSBD525
00166 DTSBD525
00167 I2000-OPEN-FILES. DTSBD525
00168 OPEN I-O R325-FILE. DTSBD525
00169 IF NOT R325-STATUS-OK-88 DTSBD525
00170 DISPLAY 'CANNOT OPEN R325 FILE ' R325-STATUS DTSBD525
00171 SET WRK-ERROR-YES-88 TO TRUE DTSBD525
00172 GO TO I2000-EXIT DTSBD525
00173 END-IF. DTSBD525
00174 DTSBD525
00175 PERFORM S910-OPEN-UPDATE THRU S910-EXIT. DTSBD525
00176 DTSBD525
00177 I2000-EXIT. DTSBD525
00178 EXIT. DTSBD525
00179 DTSBD525
00180 I3000-CURRENT-DATE. DTSBD525
00181 MOVE LOW-VALUES TO MSKL-REC. DTSBD525
00182 MOVE +0 TO MSKL-EMP-NO. DTSBD525
00183 SET MSKL-HDR-88 TO TRUE. DTSBD525
00184 DTSBD525
00185 PERFORM S910-READ THRU S910-EXIT. DTSBD525
00186 IF L910-NO-REC-88 DTSBD525
00187 DISPLAY 'DTSBE325: MHDR RECORD IS MISSING' DTSBD525
00188 SET WRK-ERROR-YES-88 TO TRUE DTSBD525
00189 GO TO I3000-EXIT DTSBD525
00190 ELSE DTSBD525
00191 MOVE MSKL-REC TO MHDR-REC DTSBD525
00192 END-IF. DTSBD525
00193 DTSBD525
00194 MOVE MHDR-PRIOR-RUN-DATE TO L001-FED-8-DATE-9. DTSBD525
00195 PERFORM S001-FROM-FED-8 THRU S001-EXIT. DTSBD525
00196 DISPLAY 'DTSBD325 CURRENT DATE: ' L001-SLASH-8-DATE. DTSBD525
00197 DTSBD525
00198 PERFORM S005-SYS-DATE THRU S005-EXIT. DTSBD525
00199 I3000-EXIT. DTSBD525
00200 EXIT. DTSBD525
00201 DTSBD525
00202 P0000-PROCESS. DTSBD525
00203 READ R325-FILE. DTSBD525
00204 PERFORM UNTIL R325-STATUS-EOF-88 DTSBD525
00205 ADD +1 TO WRK-READ-CNT DTSBD525
00206 IF R325-RPT-CHG-ASSESS-88 DTSBD525
00207 AND R325-STMT-DATE = MHDR-PRIOR-RUN-DATE DTSBD525
00208 MOVE R325-EMP-NO TO WRK-EMP-NO DTSBD525
00209 MOVE R325-QTR TO WRK-YRQ DTSBD525
00210 PERFORM P1000-PROCESS-R325 THRU P1000-EXIT DTSBD525
00211 END-IF DTSBD525
00212 READ R325-FILE DTSBD525
00213 END-PERFORM. DTSBD525
00214 DTSBD525
00215 P0000-EXIT. DTSBD525
00216 EXIT. DTSBD525
00217 DTSBD525
00218 P1000-PROCESS-R325. DTSBD525
00219 MOVE +0 TO WRK-BALANCE. DTSBD525
00220 DTSBD525
00221 MOVE LOW-VALUES TO MQTR-KEY-AREA. DTSBD525
00222 SET MQTR-QTR-88 TO TRUE. DTSBD525
00223 MOVE R325-EMP-NO TO MQTR-EMP-NO. DTSBD525
00224 MOVE R325-QTR TO MQTR-YRQ. DTSBD525
00225 MOVE MQTR-KEY-AREA TO MSKL-KEY-AREA DTSBD525
00226 PERFORM S910-READ THRU S910-EXIT. DTSBD525
00227 IF L910-OK-88 DTSBD525
00228 MOVE MSKL-REC TO MQTR-REC DTSBD525
00229 PERFORM DTSBD525
00230 VARYING MQTR-ACCT-IDX FROM +1 BY +1 DTSBD525
00231 UNTIL MQTR-ACCT-IDX > MQTR-ACCT-CNT DTSBD525
00232 IF MQTR-ACCT-SUR-88 (MQTR-ACCT-IDX) DTSBD525
00233 ADD MQTR-BALANCE-AMT (MQTR-ACCT-IDX) DTSBD525
00234 TO WRK-BALANCE DTSBD525
00235 END-IF DTSBD525
00236 END-PERFORM DTSBD525
00237 IF WRK-BALANCE > +1 DTSBD525
00238 PERFORM P1100-UPDATE-R325 THRU P1100-EXIT DTSBD525
00239 PERFORM P1200-ADD-MEVL THRU P1200-EXIT DTSBD525
00240 ADD +1 TO WRK-UPDATE-CNT DTSBD525
00241 **NH TESTING CREDIT BALANCE FOR SI DTSBD525
00242 ELSE DTSBD525
00243 IF WRK-BALANCE < +1 DTSBD525
00244 PERFORM P1100-UPDATE-R325 THRU P1100-EXIT DTSBD525
00245 PERFORM P1200-ADD-MEVL THRU P1200-EXIT DTSBD525
00246 END-IF DTSBD525
00247 END-IF. DTSBD525
00248 DTSBD525
00249 P1000-EXIT. DTSBD525
00250 EXIT. DTSBD525
00251 DTSBD525
00252 DTSBD525
00253 P1100-UPDATE-R325. DTSBD525
00254 MOVE R325-CALC-ASSESS-DUE TO AMT-DISP1. DTSBD525
00255 DISPLAY SPACE. DTSBD525
00256 DISPLAY WRK-EMP-NO ' ' AMT-DISP1 ' ' R325-QTR. DTSBD525
00257 MOVE WRK-BALANCE TO R325-FINAL-ASSESS-DUE. DTSBD525
00258 MOVE R325-FINAL-ASSESS-DUE TO AMT-DISP2. DTSBD525
00259 DISPLAY ' ' AMT-DISP2. DTSBD525
00260 REWRITE R325-REC. DTSBD525
00261 DTSBD525
00262 P1100-EXIT. DTSBD525
00263 EXIT. DTSBD525
00264 DTSBD525
00265 P1200-ADD-MEVL. DTSBD525
00266 MOVE LOW-VALUES TO MEVL-REC. DTSBD525
00267 MOVE L005-DATE TO MEVL-ESTB-DATE DTSBD525
00268 MEVL-CHNG-DATE DTSBD525
00269 MEVL-DATE. DTSBD525
00270 DTSBD525
00271 ADD +1000 TO L005-ABSTIME. DTSBD525
00272 PERFORM S005-FROM-ABSTIME THRU S005-EXIT. DTSBD525
00273 DTSBD525
00274 MOVE WRK-EMP-NO TO MEVL-EMP-NO. DTSBD525
00275 SET MEVL-EVL-88 TO TRUE. DTSBD525
00276 MOVE +0 TO MEVL-PURGE-DATE. DTSBD525
00277 MOVE WRK-BALANCE TO WRK-AMT-DISP. DTSBD525
00278 MOVE WRK-YRQ TO L004-QTR-5-9. DTSBD525
00279 PERFORM S004-FROM-5 THRU S004-EXIT. DTSBD525
00280 IF L004-INVALID-QTR DTSBD525
00281 DISPLAY 'INVALID QUARTER ' R325-QTR DTSBD525
00282 GO TO P1200-EXIT DTSBD525
00283 END-IF. DTSBD525
00284 DTSBD525
00285 STRING DTSBD525
00286 'SI ADMIN ASSESS BILL SENT: ', DTSBD525
00287 WRK-AMT-DISP, DTSBD525
00288 ' ', DTSBD525
00289 L004-SLASH-5-QTR DTSBD525
00290 DELIMITED BY SIZE DTSBD525
00291 INTO MEVL-TEXT DTSBD525
00292 END-STRING. DTSBD525
00293 MOVE 'DTSBE327' TO MEVL-SOURCE. DTSBD525
00294 SET MEVL-NOT-CONVERTED-88 TO TRUE. DTSBD525
00295 MOVE L005-TIME TO MEVL-TIME. DTSBD525
00296 MOVE MEVL-REC TO MSKL-REC. DTSBD525
00297 PERFORM S910-WRITE THRU S910-EXIT. DTSBD525
00298 DTSBD525
00299 P1200-EXIT. DTSBD525
00300 EXIT. DTSBD525
00301 DTSBD525
00302 T0000-TERMINATE. DTSBD525
00303 DISPLAY ' '. DTSBD525
00304 DTSBD525
00305 DISPLAY '*** DTSBD525 (SI ASSESSMENT MEVL ) ' DTSBD525
00306 'TERMINATION STATISTICS'. DTSBD525
00307 DISPLAY ' '. DTSBD525
00308 DISPLAY ' R325 RECORDS SELECTED : ' WRK-READ-CNT. DTSBD525
00309 DISPLAY ' R325 RECORDS UPDATED : ' WRK-UPDATE-CNT. DTSBD525
00310 DISPLAY ' '. DTSBD525
00311 DTSBD525
00312 CLOSE R325-FILE. DTSBD525
00313 PERFORM S910-CLOSE THRU S910-EXIT. DTSBD525
00314 DTSBD525
00315 T0000-EXIT. DTSBD525
00316 EXIT. DTSBD525
00317 EJECT DTSBD525
00318 S001-FROM-FED-8. DTSBD525
00319 SET L001-FROM-FED-8 TO TRUE. DTSBD525
00320 GO TO S001-DATE. DTSBD525
00321 DTSBD525
00322 S001-DATE. DTSBD525
00323 CALL 'DTSBU001' USING L001-LINK-AREA. DTSBD525
00324 S001-EXIT. DTSBD525
00325 EXIT. DTSBD525
00326 DTSBD525
00327 S004-FROM-5. DTSBD525
00328 SET L004-FROM-5 TO TRUE. DTSBD525
00329 GO TO S004-EDIT-QTR. DTSBD525
00330 DTSBD525
00331 S004-FROM-ABS. DTSBD525
00332 SET L004-FROM-ABS TO TRUE. DTSBD525
00333 GO TO S004-EDIT-QTR. DTSBD525
00334 DTSBD525
00335 S004-EDIT-QTR. DTSBD525
00336 CALL 'DTSBU004' USING L004-LINK-AREA. DTSBD525
00337 DTSBD525
00338 S004-EXIT. DTSBD525
00339 EXIT. DTSBD525
00340 DTSBD525
00341 S005-SYS-DATE. DTSBD525
00342 SET L005-FROM-SYS TO TRUE DTSBD525
00343 GO TO S005-ABSTIME. DTSBD525
00344 S005-FROM-ABSTIME. DTSBD525
00345 SET L005-FROM-ABSTIME TO TRUE. DTSBD525
00346 GO TO S005-ABSTIME. DTSBD525
00347 S005-ABSTIME. DTSBD525
00348 CALL 'DTSBU005' USING L005-LINK-AREA. DTSBD525
00349 S005-EXIT. DTSBD525
00350 EXIT. DTSBD525
00351 DTSBD525
00352 S910-OPEN-UPDATE. DTSBD525
00353 SET L910-OPEN-UPDATE-88 TO TRUE. DTSBD525
00354 GO TO S910-MSTR-IO. DTSBD525
00355 S910-READ. DTSBD525
00356 SET L910-READ-88 TO TRUE. DTSBD525
00357 GO TO S910-MSTR-IO. DTSBD525
00358 S910-WRITE. DTSBD525
00359 SET L910-WRITE-88 TO TRUE DTSBD525
00360 GO TO S910-MSTR-IO. DTSBD525
00361 S910-CLOSE. DTSBD525
00362 SET L910-CLOSE-88 TO TRUE DTSBD525
00363 GO TO S910-MSTR-IO. DTSBD525
00364 S910-MSTR-IO. DTSBD525
00365 CALL 'DTSBU910' USING L910-LINK-AREA DTSBD525
00366 MSKL-REC. DTSBD525
00367 S910-EXIT. DTSBD525
00368 EXIT. DTSBD525
00369 DTSBD525
00370 S999-ABEND. DTSBD525
00371 DISPLAY WRK-ABEND-MSG. DTSBD525
00372 DTSBD525
00373 CALL 'DTSBU999' USING WRK-ABEND-CD. DTSBD525
00374 S999-EXIT. DTSBD525
00375 EXIT. DTSBD525