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

435 lines
34 KiB
COBOL

00001 IDENTIFICATION DIVISION. 02/19/10
00002 PROGRAM-ID. DTSBU621. DTSBU621
00003 AUTHOR. NGI. LV001
00004 DATE-WRITTEN. DEC 2009. DTSBU621
00005 DATE-COMPILED. DTSBU621
00006 SKIP3 DTSBU621
00007 ****** DTSBU621
00008 * DTSBU621
00009 * CALLING SEQUENCE: DTSBU111 CALLS DTSBU621
00010 * DTSBU112 WHICH FORMATS THE ADDRESS DTSBU621
00011 * DTSBU621
00012 * FUNCTION: FIND AND RETURN EMPLOYER ADDRESS. DTSBU621
00013 * DTSBU621
00014 * MODIFICATION LOG: DTSBU621
00015 * DTSBU621
00016 * DTSBU621
00017 * 08/12/2009 REMOVED OR CHANGED RULES FOR SELECTING EMPLYRS DTSBU621
00018 * AND QUARTERS ON BILLS. DTSBU621
00019 * - SEND BILL ONLY IF TOTAL BALANCE DUE IS DTSBU621
00020 * MORE THAN $15.00 DTSBU621
00021 * REFERENCE: RULE CHANGES PROGRAMMER: ZL1 DTSBU621
00022 * DTSBU621
00023 * XX/XX/XXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSBU621
00024 * XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSBU621
00025 * WORK ORDER: PROGRAMMER: XXX DTSBU621
00026 * DTSBU621
00027 * DTSBU621
00028 * DESCRIPTION: DTSBU621
00029 * DTSBU621
00030 * DTSBU621
00031 * INITIATION: DTSBU621
00032 * DTSBU621
00033 * DTSBU621
00034 * NO PARAMETERS ARE INPUT. DTSBU621
00035 * DTSBU621
00036 * DTSBU621
00037 * RECORDS READ: DTSBU621
00038 * DTSBU621
00039 * MASTER: DTSBU621
00040 * DTSBU621
00041 * MTAD DTSBU621
00042 * MTAA DTSBU621
00043 * MOPO DTSBU621
00044 * DTSBU621
00045 * DTSBU621
00046 * ALTERNATE INDEX: DTSBU621
00047 * DTSBU621
00048 * NONE. DTSBU621
00049 * DTSBU621
00050 * DTSBU621
00051 * REFERENCE: DTSBU621
00052 * DTSBU621
00053 * NONE. DTSBU621
00054 * DTSBU621
00055 * DTSBU621
00056 * RECORDS UPDATED: DTSBU621
00057 * DTSBU621
00058 * NONE DTSBU621
00059 * DTSBU621
00060 * DTSBU621
00061 * DTSBU621
00062 * BATCH TRANSACTION COLLECTION RECORDS WRITTEN: DTSBU621
00063 * DTSBU621
00064 * NONE. DTSBU621
00065 * DTSBU621
00066 * DTSBU621
00067 * MODULES CALLED: DTSBU621
00068 * DTSBU621
00069 * DTSBU111 FIND EMPLOYER ADDRESS DTSBU621
00070 * DTSBU112 ADDRESS FORMAT. DTSBU621
00071 * DTSBU910 MASTER FILE I/O DRIVER. DTSBU621
00072 * DTSBU621
00073 * DTSBU621
00074 SKIP3 DTSBU621
00075 ENVIRONMENT DIVISION. DTSBU621
00076 EJECT DTSBU621
00077 DATA DIVISION. DTSBU621
00078 SKIP3 DTSBU621
00079 WORKING-STORAGE SECTION. DTSBU621
000795 77 PAN-VALET PICTURE X(24) VALUE '001DTSBU621 02/19/10'. DTSBU621
00080 SKIP3 DTSBU621
00081 01 WRK-AREA. DTSBU621
00082 *& DTSBU621
00083 05 WRK-ABEND-CD PIC S9(04) COMP VALUE +621.DTSBU621
00084 SKIP1 DTSBU621
00085 05 WRK-MOD-NAME PIC X(08) VALUE 'DTSBU621'.DTSBU621
00086 SKIP3 DTSBU621
00087 05 ABEND-MSG PIC X(60). DTSBU621
00088 DTSBU621
00089 05 TAD-FORM-CNT PIC S9(04) COMP. DTSBU621
00090 05 TAA-FORM-CNT PIC S9(04) COMP. DTSBU621
00091 05 OPO-FORM-CNT PIC S9(04) COMP. DTSBU621
00092 DTSBU621
00093 05 WRK-SUB PIC S9(04) COMP. DTSBU621
00094 DTSBU621
00095 01 L111-LINK-AREA. DTSBU621
00096 ++INCLUDE DTSIL111 DTSBU621
00097 EJECT DTSBU621
00098 01 L112-LINK-AREA. DTSBU621
00099 ++INCLUDE DTSIL112 DTSBU621
00100 EJECT DTSBU621
00101 01 L910-LINK-AREA. DTSBU621
00102 ++INCLUDE DTSIL910 DTSBU621
00103 EJECT DTSBU621
00104 01 MSKL-REC. DTSBU621
00105 ++INCLUDE DTSIMSKL DTSBU621
00106 SKIP3 DTSBU621
00107 01 MTAD-REC. DTSBU621
00108 ++INCLUDE DTSIMTAD DTSBU621
00109 SKIP3 DTSBU621
00110 01 MTAA-REC. DTSBU621
00111 ++INCLUDE DTSIMTAA DTSBU621
00112 SKIP3 DTSBU621
00113 01 MOPO-REC. DTSBU621
00114 ++INCLUDE DTSIMOPO DTSBU621
00115 EJECT DTSBU621
00116 01 MBAA-REC. DTSBU621
00117 ++INCLUDE DTSIMBAA DTSBU621
00118 EJECT DTSBU621
00119 LINKAGE SECTION. DTSBU621
00120 01 L621-LINK-AREA. DTSBU621
00121 ++INCLUDE DTSIL621 DTSBU621
00122 EJECT DTSBU621
00123 *************************************************************** DTSBU621
00124 * THE PROCEDURE DIVISION FOR DTSBE621 STARTS HERE. DTSBU621
00125 *************************************************************** DTSBU621
00126 DTSBU621
00127 PROCEDURE DIVISION USING L621-LINK-AREA. DTSBU621
00128 DTSBU621
00129 SET L621-ADDR-NOT-FOUND-88 TO TRUE. DTSBU621
00130 MOVE SPACE TO L621-RETURN-AREA DTSBU621
00131 L621-MSG-AREA. DTSBU621
00132 DTSBU621
00133 EVALUATE TRUE DTSBU621
00134 WHEN L621-LOOKUP-TAD-88 DTSBU621
00135 DISPLAY 'TAD' DTSBU621
00136 PERFORM P1000-MTAD THRU P1000-EXIT DTSBU621
00137 WHEN L621-LOOKUP-OPO-88 DTSBU621
00138 DISPLAY 'OPO' DTSBU621
00139 PERFORM P3000-MOPO THRU P3000-EXIT DTSBU621
00140 WHEN L621-LOOKUP-TAA-88 DTSBU621
00141 PERFORM P4000-MTAA THRU P4000-EXIT DTSBU621
00142 WHEN L621-LOOKUP-BAA-88 DTSBU621
00143 PERFORM P5000-BAA THRU P5000-EXIT DTSBU621
00144 WHEN OTHER DTSBU621
00145 PERFORM S999-ABEND THRU S999-EXIT. DTSBU621
00146 GOBACK. DTSBU621
00147 EJECT DTSBU621
00148 DTSBU621
00149 *************************************************************** DTSBU621
00150 * THIS PARAGRAPH CAUSES THE MTAD RECORDS TO BE PROCESSED. DTSBU621
00151 *************************************************************** DTSBU621
00152 DTSBU621
00153 P1000-MTAD. DTSBU621
00154 DISPLAY '1000 TAD' DTSBU621
00155 MOVE LOW-VALUES TO MTAD-KEY-AREA. DTSBU621
00156 MOVE L621-EMP-NO TO MTAD-EMP-NO. DTSBU621
00157 SET MTAD-TAD-88 TO TRUE. DTSBU621
00158 MOVE MTAD-KEY-AREA TO MSKL-KEY-AREA. DTSBU621
00159 DTSBU621
00160 PERFORM S910-START-BROWSE THRU S910-EXIT. DTSBU621
00161 DTSBU621
00162 PERFORM P1100-SCAN-MTAD THRU P1100-EXIT DTSBU621
00163 UNTIL L910-NO-REC-88. DTSBU621
00164 DTSBU621
00165 P1000-EXIT. DTSBU621
00166 EXIT. DTSBU621
00167 EJECT DTSBU621
00168 *************************************************************** DTSBU621
00169 * THIS PARAGRAPH SCANS THE MTAD RECORDS. DTSBU621
00170 *************************************************************** DTSBU621
00171 DTSBU621
00172 P1100-SCAN-MTAD. DTSBU621
00173 DISPLAY '1100 TAD' DTSBU621
00174 DTSBU621
00175 MOVE MSKL-REC TO MTAD-REC. DTSBU621
00176 DTSBU621
00177 PERFORM P1200-WRITE-MTAD-REC THRU P1200-EXIT. DTSBU621
00178 DTSBU621
00179 PERFORM S910-READ-NEXT THRU S910-EXIT. DTSBU621
00180 DTSBU621
00181 P1100-EXIT. DTSBU621
00182 EXIT. DTSBU621
00183 EJECT DTSBU621
00184 *************************************************************** DTSBU621
00185 * THIS PARAGRAPH FORMATS AND WRITES THE EXTRACT RECORDS DTSBU621
00186 * FOR THE MTAD RECORDS. DTSBU621
00187 *************************************************************** DTSBU621
00188 DTSBU621
00189 P1200-WRITE-MTAD-REC. DTSBU621
00190 MOVE MTAD-UC223-IND TO L621-UC223-IND. DTSBU621
00191 MOVE LOW-VALUES TO L111-RETURN-AREA. DTSBU621
00192 MOVE MTAD-EMP-NO TO L111-EMP-NO. DTSBU621
00193 SET L111-LOOKUP-TAD-88 TO TRUE. DTSBU621
00194 MOVE MTAD-ID-NO TO L111-ID-NO. DTSBU621
00195 DTSBU621
00196 DISPLAY '1200 TAD' DTSBU621
00197 PERFORM S111-LOOKUP-ADDR THRU S111-EXIT. DTSBU621
00198 DTSBU621
00199 IF L111-ADDR-FOUND-88 DTSBU621
00200 SET L621-ADDR-FOUND-88 TO TRUE DTSBU621
00201 SET L112-TAD-ADDR-88 TO TRUE DTSBU621
00202 MOVE L111-RETURN-AREA TO L112-NAME-ADDRESS-AREA DTSBU621
00203 PERFORM P2000-FORMAT-ADDR THRU P2000-EXIT DTSBU621
00204 ELSE DTSBU621
00205 MOVE ALL '?' TO L621-FMT-ADDR DTSBU621
00206 L621-ZIP DTSBU621
00207 L621-ADVANCED-BARCODE. DTSBU621
00208 DTSBU621
00209 MOVE MTAD-KEY-AREA TO MSKL-KEY-AREA. DTSBU621
00210 PERFORM S910-READ THRU S910-EXIT. DTSBU621
00211 IF L910-NO-REC-88 DTSBU621
00212 PERFORM S999-ABEND THRU S999-EXIT. DTSBU621
00213 DTSBU621
00214 P1200-EXIT. DTSBU621
00215 EXIT. DTSBU621
00216 EJECT DTSBU621
00217 *************************************************************** DTSBU621
00218 * THIS PARAGRAPH FORMATS THE ADDRESS. DTSBU621
00219 *************************************************************** DTSBU621
00220 DTSBU621
00221 P2000-FORMAT-ADDR. DTSBU621
00222 DTSBU621
00223 DISPLAY '2000 TAD' DTSBU621
00224 SET L112-ANCHOR-FIRST-88 TO TRUE. DTSBU621
00225 MOVE L621-NAME TO L112-PRIMARY-NAME. DTSBU621
00226 DTSBU621
00227 PERFORM S112-FORMAT-ADDR THRU S112-EXIT. DTSBU621
00228 DTSBU621
00229 MOVE L112-MAILING-ADDRESS TO L621-FMT-ADDR. DTSBU621
00230 MOVE L112-ZIP TO L621-ZIP. DTSBU621
00231 MOVE L112-ADVANCED-BARCODE TO L621-ADVANCED-BARCODE. DTSBU621
00232 DTSBU621
00233 P2000-EXIT. DTSBU621
00234 EXIT. DTSBU621
00235 EJECT DTSBU621
00236 *************************************************************** DTSBU621
00237 * THIS PARAGRAPH CAUSES THE MOPO RECORDS TO BE PROCESSED. DTSBU621
00238 *************************************************************** DTSBU621
00239 DTSBU621
00240 P3000-MOPO. DTSBU621
00241 DTSBU621
00242 MOVE LOW-VALUES TO MOPO-KEY-AREA. DTSBU621
00243 MOVE L621-EMP-NO TO MOPO-EMP-NO. DTSBU621
00244 SET MOPO-OPO-88 TO TRUE. DTSBU621
00245 MOVE MOPO-KEY-AREA TO MSKL-KEY-AREA. DTSBU621
00246 DTSBU621
00247 PERFORM S910-START-BROWSE THRU S910-EXIT. DTSBU621
00248 DTSBU621
00249 PERFORM P3100-SCAN-MOPO THRU P3100-EXIT DTSBU621
00250 UNTIL L910-NO-REC-88. DTSBU621
00251 DTSBU621
00252 P3000-EXIT. DTSBU621
00253 EXIT. DTSBU621
00254 EJECT DTSBU621
00255 *************************************************************** DTSBU621
00256 * THIS PARAGRAPH SCANS THE MOPO RECORDS. DTSBU621
00257 *************************************************************** DTSBU621
00258 DTSBU621
00259 P3100-SCAN-MOPO. DTSBU621
00260 DTSBU621
00261 MOVE MSKL-REC TO MOPO-REC. DTSBU621
00262 DTSBU621
00263 PERFORM P3200-WRITE-MOPO-REC THRU P3200-EXIT. DTSBU621
00264 DTSBU621
00265 PERFORM S910-READ-NEXT THRU S910-EXIT. DTSBU621
00266 DTSBU621
00267 P3100-EXIT. DTSBU621
00268 EXIT. DTSBU621
00269 EJECT DTSBU621
00270 *************************************************************** DTSBU621
00271 * THIS PARAGRAPH WRITES THE EXTRACT RECORDS FOR MOPO RECORDS. DTSBU621
00272 *************************************************************** DTSBU621
00273 DTSBU621
00274 P3200-WRITE-MOPO-REC. DTSBU621
00275 DTSBU621
00276 SET L621-ADDR-FOUND-88 TO TRUE DTSBU621
00277 MOVE LOW-VALUES TO L112-NAME-ADDRESS-AREA. DTSBU621
00278 SET L112-OPO-ADDR-88 TO TRUE. DTSBU621
00279 MOVE MOPO-NAME TO L112-NAME. DTSBU621
00280 MOVE MOPO-TITLE TO L112-TITLE. DTSBU621
00281 MOVE MOPO-ADDRESS TO L112-ADDRESS. DTSBU621
00282 DTSBU621
00283 PERFORM P2000-FORMAT-ADDR THRU P2000-EXIT. DTSBU621
00284 DTSBU621
00285 MOVE MOPO-KEY-AREA TO MSKL-KEY-AREA. DTSBU621
00286 PERFORM S910-READ THRU S910-EXIT. DTSBU621
00287 IF L910-NO-REC-88 DTSBU621
00288 PERFORM S999-ABEND THRU S999-EXIT. DTSBU621
00289 DTSBU621
00290 P3200-EXIT. DTSBU621
00291 EXIT. DTSBU621
00292 EJECT DTSBU621
00293 *************************************************************** DTSBU621
00294 * THIS PARAGRAPH CAUSES THE MTAA RECORDS TO BE PROCESSED. DTSBU621
00295 *************************************************************** DTSBU621
00296 DTSBU621
00297 P4000-MTAA. DTSBU621
00298 DTSBU621
00299 MOVE LOW-VALUES TO MTAA-KEY-AREA. DTSBU621
00300 MOVE L621-EMP-NO TO MTAA-EMP-NO. DTSBU621
00301 SET MTAA-TAA-88 TO TRUE. DTSBU621
00302 MOVE MTAA-KEY-AREA TO MSKL-KEY-AREA. DTSBU621
00303 DTSBU621
00304 PERFORM S910-START-BROWSE THRU S910-EXIT. DTSBU621
00305 DTSBU621
00306 PERFORM P4100-SCAN-MTAA THRU P4100-EXIT DTSBU621
00307 UNTIL L910-NO-REC-88. DTSBU621
00308 DTSBU621
00309 P4000-EXIT. DTSBU621
00310 EXIT. DTSBU621
00311 EJECT DTSBU621
00312 *************************************************************** DTSBU621
00313 * THIS PARAGRAPH SCANS THE MTAA RECORDS. DTSBU621
00314 *************************************************************** DTSBU621
00315 DTSBU621
00316 P4100-SCAN-MTAA. DTSBU621
00317 DTSBU621
00318 MOVE MSKL-REC TO MTAA-REC. DTSBU621
00319 DTSBU621
00320 PERFORM P4200-WRITE-MTAA-REC THRU P4200-EXIT. DTSBU621
00321 DTSBU621
00322 PERFORM S910-READ-NEXT THRU S910-EXIT. DTSBU621
00323 DTSBU621
00324 P4100-EXIT. DTSBU621
00325 EXIT. DTSBU621
00326 EJECT DTSBU621
00327 *************************************************************** DTSBU621
00328 * THIS PARAGRAPH WRITES THE EXTRACT RECORDS FOR MTAA RECORDS. DTSBU621
00329 *************************************************************** DTSBU621
00330 DTSBU621
00331 P4200-WRITE-MTAA-REC. DTSBU621
00332 DTSBU621
00333 DTSBU621
00334 SET L621-ADDR-FOUND-88 TO TRUE DTSBU621
00335 MOVE LOW-VALUES TO L112-NAME-ADDRESS-AREA. DTSBU621
00336 SET L112-TAA-ADDR-88 TO TRUE. DTSBU621
00337 IF MTAA-NAME = SPACES DTSBU621
00338 MOVE L621-NAME TO L112-NAME DTSBU621
00339 ELSE DTSBU621
00340 MOVE MTAA-NAME TO L112-NAME. DTSBU621
00341 MOVE MTAA-ADDRESS TO L112-ADDRESS. DTSBU621
00342 DTSBU621
00343 PERFORM P2000-FORMAT-ADDR THRU P2000-EXIT. DTSBU621
00344 DTSBU621
00345 MOVE MTAA-KEY-AREA TO MSKL-KEY-AREA. DTSBU621
00346 PERFORM S910-READ THRU S910-EXIT. DTSBU621
00347 IF L910-NO-REC-88 DTSBU621
00348 PERFORM S999-ABEND THRU S999-EXIT. DTSBU621
00349 DTSBU621
00350 P4200-EXIT. DTSBU621
00351 EXIT. DTSBU621
00352 EJECT DTSBU621
00353 *************************************************************** DTSBU621
00354 * THIS PARAGRAPH READS THE BAA ADDRESS RECORD DTSBU621
00355 *************************************************************** DTSBU621
00356 P5000-BAA. DTSBU621
00357 MOVE LOW-VALUES TO MBAA-KEY-AREA. DTSBU621
00358 DTSBU621
00359 MOVE L621-EMP-NO TO MBAA-EMP-NO. DTSBU621
00360 DTSBU621
00361 SET MBAA-BAA-88 TO TRUE. DTSBU621
00362 DTSBU621
00363 MOVE L621-ID-NO TO MBAA-ID-NO. DTSBU621
00364 DTSBU621
00365 MOVE MBAA-KEY-AREA TO MSKL-KEY-AREA. DTSBU621
00366 DTSBU621
00367 PERFORM S910-READ THRU S910-EXIT. DTSBU621
00368 IF L910-OK-88 DTSBU621
00369 MOVE MSKL-REC TO MBAA-REC DTSBU621
00370 IF MBAA-ADDRESS = SPACES OR LOW-VALUES DTSBU621
00371 SET L621-ADDR-NOT-FOUND-88 TO TRUE DTSBU621
00372 ELSE DTSBU621
00373 SET L621-ADDR-FOUND-88 TO TRUE DTSBU621
00374 MOVE MBAA-NAME TO L112-NAME DTSBU621
00375 MOVE MBAA-ADDRESS TO L112-ADDRESS DTSBU621
00376 SET L112-BAA-ADDR-88 TO TRUE DTSBU621
00377 PERFORM P2000-FORMAT-ADDR THRU P2000-EXIT. DTSBU621
00378 P5000-EXIT. DTSBU621
00379 EXIT. DTSBU621
00380 EJECT DTSBU621
00381 DTSBU621
00382 DTSBU621
00383 S111-LOOKUP-ADDR. DTSBU621
00384 CALL 'DTSBU111' USING L111-LINK-AREA. DTSBU621
00385 S111-EXIT. DTSBU621
00386 EXIT. DTSBU621
00387 SKIP3 DTSBU621
00388 S112-FORMAT-ADDR. DTSBU621
00389 CALL 'DTSBU112' USING L112-LINK-AREA. DTSBU621
00390 S112-EXIT. DTSBU621
00391 EXIT. DTSBU621
00392 SKIP3 DTSBU621
00393 S910-READ. DTSBU621
00394 SET L910-READ-88 TO TRUE. DTSBU621
00395 GO TO S910-MSTR-IO. DTSBU621
00396 SKIP1 DTSBU621
00397 S910-START-BROWSE. DTSBU621
00398 SET L910-START-BROWSE-88 TO TRUE. DTSBU621
00399 GO TO S910-MSTR-IO. DTSBU621
00400 SKIP1 DTSBU621
00401 S910-READ-NEXT. DTSBU621
00402 SET L910-READ-NEXT-88 TO TRUE. DTSBU621
00403 GO TO S910-MSTR-IO. DTSBU621
00404 SKIP1 DTSBU621
00405 S910-COUNT. DTSBU621
00406 SET L910-COUNT-88 TO TRUE. DTSBU621
00407 GO TO S910-MSTR-IO. DTSBU621
00408 SKIP1 DTSBU621
00409 S910-WRITE. DTSBU621
00410 SET L910-WRITE-88 TO TRUE. DTSBU621
00411 GO TO S910-MSTR-IO. DTSBU621
00412 SKIP1 DTSBU621
00413 S910-REWRITE. DTSBU621
00414 SET L910-REWRITE-88 TO TRUE. DTSBU621
00415 GO TO S910-MSTR-IO. DTSBU621
00416 SKIP1 DTSBU621
00417 S910-DELETE. DTSBU621
00418 SET L910-DELETE-88 TO TRUE. DTSBU621
00419 GO TO S910-MSTR-IO. DTSBU621
00420 SKIP1 DTSBU621
00421 S910-MSTR-IO. DTSBU621
00422 CALL 'DTSBU910' USING L910-LINK-AREA DTSBU621
00423 MSKL-REC. DTSBU621
00424 S910-EXIT. DTSBU621
00425 EXIT. DTSBU621
00426 SKIP3 DTSBU621
00427 S999-ABEND. DTSBU621
00428 DISPLAY '*** DTSBU621 ABENDING. ' DTSBU621
00429 ABEND-MSG. DTSBU621
00430 SKIP1 DTSBU621
00431 CALL 'DTSBU999' USING WRK-ABEND-CD. DTSBU621
00432 S999-EXIT. DTSBU621
00433 EXIT. DTSBU621