00001 IDENTIFICATION DIVISION. 01/29/02 00002 PROGRAM-ID. DTSCU381. DTSCU381 00003 AUTHOR. TRICOASTAL CONSULTING LTD. LV006 00004 DATE-WRITTEN. MAY 1994. DTSCU381 00005 DATE-COMPILED. DTSCU381 00006 SKIP3 DTSCU381 00007 ***** DTSCU381 00008 * DTSCU381 00009 * FUNCTION: FOR A GIVEN EMPLOYER AND QUARTER, DETERMINE DTSCU381 00010 * LIABILITY, DEFAULT DUE DATE, AND UI RATE. DTSCU381 00011 * DTSCU381 00012 * DTSCU381 00013 * MODIFICATION LOG: DTSCU381 00014 * DTSCU381 00015 * 05/16/94 INITIAL DEVELOPMENT. DTSCU381 00016 * WORK ORDER: PROGRAMMER: EHH DTSCU381 00017 * DTSCU381 00018 * 06/05/95 CHANGE DUE DATE LOGIC. DTSCU381 00019 * WORK ORDER: CR092 PROGRAMMER: RHC DTSCU381 00020 * DTSCU381 00021 * 11/05/1998 REVIEWED AND MODIFIED FOR DC. DTSCU381 00022 * REFERENCE: DC DEVELOPMENT PROGRAMMER: EHH DTSCU381 00023 * DTSCU381 00024 * DTSCU381 00025 * 02/26/1999 TO SUPPORT DC SELF INSURED TAX DUE DATE DTSCU381 00026 * REQUIREMENTS, CHANGED L381-DEFAULT-DUE-DATE DTSCU381 00027 * TO L381-DEFAULT-RPT-DUE-DATE AND ADDED DTSCU381 00028 * L381-DEFAULT-TAX-DUE-DATE. ADDED LOGIC DTSCU381 00029 * TO LOOKUP DEFAULT SELF INSURED TAX DUE DATE DTSCU381 00030 * ON THE REFERENCE FILE. DTSCU381 00031 * REFERENCE: DC DEVELOPMENT PROGRAMMER: EHH DTSCU381 00032 * DTSCU381 00033 * MM/DD/YYYY XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSCU381 00034 * XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSCU381 00035 * REFERENCE: XXXXXXXXXXXXXXX PROGRAMMER: XXX DTSCU381 00036 * DTSCU381 00037 * DTSCU381 00038 * DESCRIPTION: DTSCU381 00039 * DTSCU381 00040 * BROWSE MSOL RECORDS TO DETERMINE WHETHER OR NOT THE DTSCU381 00041 * EMPLOYER WAS LIABLE DURING THE SUBJECT QUARTER. DTSCU381 00042 * DTSCU381 00043 * IF THE EMPLOYER IS LIABLE, THEN USE THE MSOL RECORD AND DTSCU381 00044 * DTSCU004 TO DETERMINE THE DEFAULT REPORT DUE DATE. DTSCU381 00045 * DTSCU381 00046 * IF THE EMPLOYER IS TAXABLE, THEN CALL DTSCU006 TO DETERMINEDTSCU381 00047 * THE RATE EFFECTIVE YRQ AND READ THE MRTE RECORD TO FIND DTSCU381 00048 * THE UI RATE FOR THE SUBJECT QUARTER. DTSCU381 00049 * DTSCU381 00050 * DTSCU381 00051 * MASTER FILE RECORDS READ: DTSCU381 00052 * DTSCU381 00053 * MSOL DTSCU381 00054 * MRTE DTSCU381 00055 * DTSCU381 00056 * DTSCU381 00057 * MASTER FILE RECORDS UPDATED: DTSCU381 00058 * DTSCU381 00059 * NONE. DTSCU381 00060 * DTSCU381 00061 * DTSCU381 00062 * REFERENCE FILE RECORDS READ: DTSCU381 00063 * DTSCU381 00064 * FQTR DTSCU381 00065 * DTSCU381 00066 * DTSCU381 00067 * REPORT RECORDS WRITTEN: DTSCU381 00068 * DTSCU381 00069 * NONE DTSCU381 00070 * DTSCU381 00071 * DTSCU381 00072 * MODULES CALLED: DTSCU381 00073 * DTSCU381 00074 * DTSCU004 QUARTER EDIT/CONVERSION. DTSCU381 00075 * DTSCU006 RATE YEAR PERIOD START/END. DTSCU381 00076 * DTSCU810 MASTER FILE I/O. DTSCU381 00077 * DTSCU831 REFERENCE FILE I/O. DTSCU381 00078 * DTSCU381 00079 * DTSCU381 00080 ***** DTSCU381 00081 SKIP3 DTSCU381 00082 ENVIRONMENT DIVISION. DTSCU381 00083 EJECT DTSCU381 00084 DATA DIVISION. DTSCU381 00085 SKIP3 DTSCU381 00086 WORKING-STORAGE SECTION. DTSCU381 000865 77 PAN-VALET PICTURE X(24) VALUE '006DTSCU381 01/29/02'. DTSCU381 00087 SKIP3 DTSCU381 00088 01 WRK-AREA. DTSCU381 00089 05 WRK-ABEND-CD PIC X(04) VALUE 'U381'. DTSCU381 00090 EJECT DTSCU381 00091 01 L810-LINK-AREA. DTSCU381 00092 05 L810-CONTROL-BLOCK. DTSCU381 00093 ++INCLUDE DTSIL810 DTSCU381 00094 SKIP3 DTSCU381 00095 05 MSKL-REC. DTSCU381 00096 ++INCLUDE DTSIMSKL DTSCU381 00097 EJECT DTSCU381 00098 01 MSOL-REC. DTSCU381 00099 ++INCLUDE DTSIMSOL DTSCU381 00100 SKIP3 DTSCU381 00101 01 MRTE-REC. DTSCU381 00102 ++INCLUDE DTSIMRTE DTSCU381 00103 EJECT DTSCU381 00104 01 L831-LINK-AREA. DTSCU381 00105 05 L831-CONTROL-BLOCK. DTSCU381 00106 ++INCLUDE DTSIL831 DTSCU381 00107 SKIP3 DTSCU381 00108 05 FSKL-REC. DTSCU381 00109 ++INCLUDE DTSIFSKL DTSCU381 00110 EJECT DTSCU381 00111 01 FQTR-REC. DTSCU381 00112 ++INCLUDE DTSIFQTR DTSCU381 00113 EJECT DTSCU381 00114 01 L004-LINK-AREA. DTSCU381 00115 ++INCLUDE DTSIL004 DTSCU381 00116 SKIP3 DTSCU381 00117 01 L006-LINK-AREA. DTSCU381 00118 ++INCLUDE DTSIL006 DTSCU381 00119 EJECT DTSCU381 00120 01 L410-LINK-AREA. DTSCU381 00121 ++INCLUDE DTSIL410 DTSCU381 00122 EJECT DTSCU381 00123 LINKAGE SECTION. DTSCU381 00124 SKIP3 DTSCU381 00125 01 DFHCOMMAREA. DTSCU381 00126 ++INCLUDE DTSIL381 DTSCU381 00127 EJECT DTSCU381 00128 PROCEDURE DIVISION. DTSCU381 00129 DTSCU381 00130 DTSCU381 00131 SET L381-NOT-LIABLE-88 TO TRUE. DTSCU381 00132 DTSCU381 00133 SET L381-UI-RATE-NOT-FOUND-88 TO TRUE. DTSCU381 00134 DTSCU381 00135 MOVE +0 TO L381-DEFAULT-RPT-DUE-DATE DTSCU381 00136 L381-DEFAULT-TAX-DUE-DATE DTSCU381 00137 L381-UI-RATE. DTSCU381 00138 DTSCU381 00139 SET L381-SCHED-NULL-88 TO TRUE. DTSCU381 00140 DTSCU381 00141 PERFORM P0000-PROCESS THRU P0000-EXIT. DTSCU381 00142 DTSCU381 00143 DTSCU381 00144 MAINLINE-RETURN. DTSCU381 00145 EXEC CICS DTSCU381 00146 RETURN DTSCU381 00147 END-EXEC. DTSCU381 00148 DTSCU381 00149 DTSCU381 00150 GOBACK. DTSCU381 00151 EJECT DTSCU381 00152 P0000-PROCESS. DTSCU381 00153 MOVE LOW-VALUES TO MSOL-KEY-AREA. DTSCU381 00154 DTSCU381 00155 MOVE L381-EMP-NO TO MSOL-EMP-NO. DTSCU381 00156 DTSCU381 00157 SET MSOL-SOL-88 TO TRUE. DTSCU381 00158 DTSCU381 00159 MOVE +0 TO MSOL-LIAB-DATE. DTSCU381 00160 DTSCU381 00161 MOVE MSOL-KEY-AREA TO MSKL-KEY-AREA. DTSCU381 00162 DTSCU381 00163 PERFORM S810-START-BROWSE THRU S810-EXIT. DTSCU381 00164 DTSCU381 00165 PERFORM P1000-MSOL-SCAN THRU P1000-EXIT DTSCU381 00166 UNTIL (L381-LIABLE-88) DTSCU381 00167 OR DTSCU381 00168 (L810-NO-REC-88). DTSCU381 00169 DTSCU381 00170 IF L381-LIABLE-88 DTSCU381 00171 PERFORM S810-END-BROWSE THRU S810-EXIT. DTSCU381 00172 DTSCU381 00173 DTSCU381 00174 PERFORM P2000-DUE-DATE THRU P2000-EXIT. DTSCU381 00175 DTSCU381 00176 DTSCU381 00177 PERFORM P3000-UI-RATE THRU P3000-EXIT. DTSCU381 00178 P0000-EXIT. DTSCU381 00179 EXIT. DTSCU381 00180 EJECT DTSCU381 00181 P1000-MSOL-SCAN. DTSCU381 00182 MOVE MSKL-REC TO MSOL-REC. DTSCU381 00183 DTSCU381 00184 IF (L381-YRQ < MSOL-FIRST-LIAB-YRQ) DTSCU381 00185 OR DTSCU381 00186 (L381-YRQ > MSOL-LAST-LIAB-YRQ) DTSCU381 00187 PERFORM S810-READ-NEXT THRU S810-EXIT DTSCU381 00188 ELSE DTSCU381 00189 SET L381-LIABLE-88 TO TRUE. DTSCU381 00190 P1000-EXIT. DTSCU381 00191 EXIT. DTSCU381 00192 EJECT DTSCU381 00193 P2000-DUE-DATE. DTSCU381 00194 IF L381-HOUSEHOLD-YES-88 DTSCU381 00195 PERFORM P2100-CHK-FILE-SCHED THRU P2100-EXIT DTSCU381 00196 IF L410-QTRLY-SCHED-88 DTSCU381 00197 PERFORM P2200-QTRLY-DUE-DATE THRU P2200-EXIT DTSCU381 00198 ELSE DTSCU381 00199 IF L410-ANN-SCHED-88 DTSCU381 00200 PERFORM P2300-ANN-DUE-DATE THRU P2300-EXIT DTSCU381 00201 ELSE DTSCU381 00202 PERFORM P2400-NO-SCHEDULE THRU P2400-EXIT DTSCU381 00203 END-IF DTSCU381 00204 END-IF DTSCU381 00205 ELSE DTSCU381 00206 PERFORM P2200-QTRLY-DUE-DATE THRU P2200-EXIT DTSCU381 00207 END-IF. DTSCU381 00208 P2000-EXIT. DTSCU381 00209 EXIT. DTSCU381 00210 DTSCU381 00211 P2100-CHK-FILE-SCHED. DTSCU381 00212 SET L410-MODE-INPUT-YRQ-88 TO TRUE. DTSCU381 00213 MOVE L381-EMP-NO TO L410-EMP-NO. DTSCU381 00214 MOVE L381-YRQ TO L410-YRQ. DTSCU381 00215 DTSCU381 00216 PERFORM S410-FILING-SCHEDULE THRU S410-EXIT. DTSCU381 00217 P2100-EXIT. DTSCU381 00218 EXIT. DTSCU381 00219 DTSCU381 00220 P2200-QTRLY-DUE-DATE. DTSCU381 00221 SET L004-FROM-5 TO TRUE. DTSCU381 00222 DTSCU381 00223 MOVE L381-YRQ TO L004-QTR-5-9. DTSCU381 00224 DTSCU381 00225 PERFORM S004-YRQ THRU S004-EXIT. DTSCU381 00226 DTSCU381 00227 IF L004-INVALID-QTR DTSCU381 00228 GO TO S899-ABEND. DTSCU381 00229 DTSCU381 00230 MOVE L004-QTR-DEFAULT-DUE-DATE DTSCU381 00231 TO L381-DEFAULT-RPT-DUE-DATE DTSCU381 00232 L381-DEFAULT-TAX-DUE-DATE. DTSCU381 00233 DTSCU381 00234 IF L381-CLASS-SELF-INS-88 DTSCU381 00235 NEXT SENTENCE DTSCU381 00236 ELSE DTSCU381 00237 GO TO P2200-EXIT. DTSCU381 00238 DTSCU381 00239 MOVE LOW-VALUES TO FQTR-KEY-AREA. DTSCU381 00240 DTSCU381 00241 SET FQTR-QTR-88 TO TRUE. DTSCU381 00242 DTSCU381 00243 MOVE L381-YRQ TO FQTR-YRQ. DTSCU381 00244 DTSCU381 00245 MOVE FQTR-KEY-AREA TO FSKL-KEY-AREA. DTSCU381 00246 DTSCU381 00247 PERFORM S831-READ THRU S831-EXIT. DTSCU381 00248 DTSCU381 00249 IF L831-NO-REC-88 DTSCU381 00250 GO TO P2200-EXIT. DTSCU381 00251 DTSCU381 00252 MOVE FSKL-REC TO FQTR-REC. DTSCU381 00253 DTSCU381 00254 IF (FQTR-SELF-INS-TAX-DUE-DATE NOT NUMERIC) DTSCU381 00255 OR DTSCU381 00256 (FQTR-SELF-INS-TAX-DUE-DATE = +0) DTSCU381 00257 GO TO P2200-EXIT. DTSCU381 00258 DTSCU381 00259 MOVE FQTR-SELF-INS-TAX-DUE-DATE DTSCU381 00260 TO L381-DEFAULT-TAX-DUE-DATE. DTSCU381 00261 P2200-EXIT. DTSCU381 00262 EXIT. DTSCU381 00263 DTSCU381 00264 P2300-ANN-DUE-DATE. DTSCU381 00265 DTSCU381 00266 MOVE L381-YRQ TO L004-QTR-5-9. DTSCU381 00267 DTSCU381 00268 SET L004-FROM-5 TO TRUE. DTSCU381 00269 PERFORM S004-YRQ THRU S004-EXIT. DTSCU381 00270 DTSCU381 00271 IF L004-INVALID-QTR DTSCU381 00272 PERFORM S899-ABEND THRU S899-EXIT. DTSCU381 00273 DTSCU381 00274 MOVE L004-ANN-DEFAULT-DUE-DATE DTSCU381 00275 TO L381-DEFAULT-RPT-DUE-DATE DTSCU381 00276 L381-DEFAULT-TAX-DUE-DATE. DTSCU381 00277 P2300-EXIT. DTSCU381 00278 EXIT. DTSCU381 00279 DTSCU381 00280 P2400-NO-SCHEDULE. DTSCU381 00281 IF L410-PENDING-SCHED-88 DTSCU381 00282 OR L410-NULL-SCHED-88 DTSCU381 00283 IF L381-FORCE-QTRLY-88 DTSCU381 00284 PERFORM P2200-QTRLY-DUE-DATE THRU P2200-EXIT DTSCU381 00285 ELSE DTSCU381 00286 IF L381-FORCE-ANN-88 DTSCU381 00287 PERFORM P2300-ANN-DUE-DATE THRU P2300-EXIT DTSCU381 00288 ELSE DTSCU381 00289 PERFORM P2200-QTRLY-DUE-DATE THRU P2200-EXIT DTSCU381 00290 END-IF DTSCU381 00291 END-IF DTSCU381 00292 ELSE DTSCU381 00293 PERFORM P2200-QTRLY-DUE-DATE THRU P2200-EXIT DTSCU381 00294 END-IF. DTSCU381 00295 DTSCU381 00296 P2400-EXIT. DTSCU381 00297 EXIT. DTSCU381 00298 DTSCU381 00299 EJECT DTSCU381 00300 P3000-UI-RATE. DTSCU381 00301 IF L381-CLASS-RATED-88 DTSCU381 00302 NEXT SENTENCE DTSCU381 00303 ELSE DTSCU381 00304 GO TO P3000-EXIT. DTSCU381 00305 DTSCU381 00306 SET L006-FROM-QTR TO TRUE. DTSCU381 00307 DTSCU381 00308 MOVE L381-YRQ TO L006-YRQ. DTSCU381 00309 DTSCU381 00310 PERFORM S006-RATE-YRQ THRU S006-EXIT. DTSCU381 00311 DTSCU381 00312 DTSCU381 00313 MOVE LOW-VALUES TO MRTE-KEY-AREA. DTSCU381 00314 DTSCU381 00315 MOVE L381-EMP-NO TO MRTE-EMP-NO. DTSCU381 00316 DTSCU381 00317 SET MRTE-RTE-88 TO TRUE. DTSCU381 00318 DTSCU381 00319 MOVE L006-RTE-YR-START-YRQ TO MRTE-EFF-YRQ. DTSCU381 00320 DTSCU381 00321 MOVE MRTE-KEY-AREA TO MSKL-KEY-AREA. DTSCU381 00322 DTSCU381 00323 PERFORM S810-READ THRU S810-EXIT. DTSCU381 00324 DTSCU381 00325 IF L810-OK-88 DTSCU381 00326 MOVE MSKL-REC TO MRTE-REC DTSCU381 00327 MOVE MRTE-UI-RATE TO L381-UI-RATE DTSCU381 00328 SET L381-UI-RATE-OK-88 TO TRUE. DTSCU381 00329 P3000-EXIT. DTSCU381 00330 EXIT. DTSCU381 00331 EJECT DTSCU381 00332 S004-YRQ. DTSCU381 00333 EXEC CICS DTSCU381 00334 LINK DTSCU381 00335 PROGRAM ('DTSCU004') DTSCU381 00336 COMMAREA (L004-LINK-AREA) DTSCU381 00337 END-EXEC. DTSCU381 00338 S004-EXIT. DTSCU381 00339 EXIT. DTSCU381 00340 SKIP3 DTSCU381 00341 S006-RATE-YRQ. DTSCU381 00342 EXEC CICS DTSCU381 00343 LINK DTSCU381 00344 PROGRAM ('DTSCU006') DTSCU381 00345 COMMAREA (L006-LINK-AREA) DTSCU381 00346 END-EXEC. DTSCU381 00347 S006-EXIT. DTSCU381 00348 EXIT. DTSCU381 00349 SKIP3 DTSCU381 00350 S410-FILING-SCHEDULE. DTSCU381 00351 EXEC CICS DTSCU381 00352 LINK DTSCU381 00353 PROGRAM ('DTSCU410') DTSCU381 00354 COMMAREA (L410-LINK-AREA) DTSCU381 00355 END-EXEC. DTSCU381 00356 DTSCU381 00357 S410-EXIT. DTSCU381 00358 EXIT. DTSCU381 00359 S810-READ. DTSCU381 00360 SET L810-READ-88 TO TRUE. DTSCU381 00361 GO TO S810-IO. DTSCU381 00362 DTSCU381 00363 S810-START-BROWSE. DTSCU381 00364 SET L810-START-BROWSE-88 TO TRUE. DTSCU381 00365 GO TO S810-IO. DTSCU381 00366 DTSCU381 00367 S810-READ-NEXT. DTSCU381 00368 SET L810-READ-NEXT-88 TO TRUE. DTSCU381 00369 GO TO S810-IO. DTSCU381 00370 DTSCU381 00371 S810-END-BROWSE. DTSCU381 00372 SET L810-END-BROWSE-88 TO TRUE. DTSCU381 00373 GO TO S810-IO. DTSCU381 00374 DTSCU381 00375 S810-IO. DTSCU381 00376 EXEC CICS DTSCU381 00377 LINK DTSCU381 00378 PROGRAM ('DTSCU810') DTSCU381 00379 COMMAREA (L810-LINK-AREA) DTSCU381 00380 END-EXEC. DTSCU381 00381 DTSCU381 00382 IF L810-FILE-CLOSED-88 DTSCU381 00383 MOVE L810-MSG-AREA TO L381-MSG-AREA DTSCU381 00384 SET L381-FILE-CLOSED-88 TO TRUE DTSCU381 00385 GO TO MAINLINE-RETURN. DTSCU381 00386 S810-EXIT. DTSCU381 00387 EXIT. DTSCU381 00388 SKIP3 DTSCU381 00389 S831-READ. DTSCU381 00390 SET L831-READ-88 TO TRUE. DTSCU381 00391 GO TO S831-IO. DTSCU381 00392 DTSCU381 00393 S831-IO. DTSCU381 00394 EXEC CICS DTSCU381 00395 LINK DTSCU381 00396 PROGRAM ('DTSCU831') DTSCU381 00397 COMMAREA (L831-LINK-AREA) DTSCU381 00398 END-EXEC. DTSCU381 00399 DTSCU381 00400 IF L831-FILE-CLOSED-88 DTSCU381 00401 MOVE L831-MSG-AREA TO L381-MSG-AREA DTSCU381 00402 SET L381-FILE-CLOSED-88 TO TRUE DTSCU381 00403 GO TO MAINLINE-RETURN. DTSCU381 00404 S831-EXIT. DTSCU381 00405 EXIT. DTSCU381 00406 SKIP3 DTSCU381 00407 S899-ABEND. DTSCU381 00408 EXEC CICS DTSCU381 00409 ABEND DTSCU381 00410 ABCODE (WRK-ABEND-CD) DTSCU381 00411 END-EXEC. DTSCU381 00412 S899-EXIT. DTSCU381 00413 EXIT. DTSCU381