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

346 lines
27 KiB
COBOL

00001 IDENTIFICATION DIVISION. 11/11/02
00002 PROGRAM-ID. DTSBU423. DTSBU423
00003 AUTHOR. TRW. LV001
00004 DATE-WRITTEN. FEBRUARY 2002. DTSBU423
00005 DATE-COMPILED. DTSBU423
00006 SKIP3 DTSBU423
00007 ***** DTSBU423
00008 * *** ANNUAL REPORT VERSION *** DTSBU423
00009 * DTSBU423
00010 * FUNCTION: RETURN TOTAL AND TAXABLE WAGES FOR A GIVEN SSN. DTSBU423
00011 * CALCULATE WAGE AMOUNTS FROM WWGH WAGE HISTORY DTSBU423
00012 * AND WAGES FROM A CURRENT REPORT PROVIDED IN DTSBU423
00013 * THE L423 LINKAGE AREA. DTSBU423
00014 * DTSBU423
00015 * THIS PROGRAM IS USED IN USED TO EDIT WAGE AMOUNTS DTSBU423
00016 * IN SUPPLEMENTAL CONTRIBUTION AND WAGE REPORTS. DTSBU423
00017 * DTSBU423
00018 * MODIFICATION LOG: DTSBU423
00019 * DTSBU423
00020 * 02/18/2002 INITIAL DEVELOPMENT. DTSBU423
00021 * WORK ORDER: PROGRAMMER: GD DTSBU423
00022 * DTSBU423
00023 * MM/DD/YYYY XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSBU423
00024 * XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSBU423
00025 * REFERENCE: XXXXXXXXXXXXXXX PROGRAMMER: XXX DTSBU423
00026 * DTSBU423
00027 * DTSBU423
00028 * DESCRIPTION: DTSBU423
00029 * DTSBU423
00030 * THIS PROGRAM WAS CLONED FROM DTSCU423 FOR THE BATCH DTSBU423
00031 * MODE TO CALCULATES AND RETURNS TAXABLE AND TOTAL DTSBU423
00032 * WAGES FOR A GIVEN SSN FOR ALL QUARTERS IN THE DTSBU423
00033 * CALENDAR YEAR. DTSBU423
00034 * DTSBU423
00035 * DTSBU423
00036 * GENERAL SPECIFICATIONS: DTSBU423
00037 * DTSBU423
00038 * COMMAND SPECIFIC SPECIFICATIONS: DTSBU423
00039 * DTSBU423
00040 * DTSBU423
00041 * MODULES CALLED: DTSBU423
00042 * DTSBU423
00043 * DTSBU001 DATE CONVERSION/EDIT. DTSBU423
00044 * DTSBU004 QUARTER CONVERSION/EDIT. DTSBU423
00045 * DTSBU910 MASTER FILE I/O DRIVER. DTSBU423
00046 * DTSBU931 REFERENCE FILE I/O DRIVER. DTSBU423
00047 * DTSBU946 VARIABLE LENGTH RECORDS SEQUENTIAL OUTPUT 1. DTSBU423
00048 * DTSBU423
00049 ***** DTSBU423
00050 SKIP3 DTSBU423
00051 DATA DIVISION. DTSBU423
00052 WORKING-STORAGE SECTION. DTSBU423
000525 77 PAN-VALET PICTURE X(24) VALUE '001DTSBU423 11/11/02'. DTSBU423
00053 SKIP3 DTSBU423
00054 01 WRK-AREA. DTSBU423
00055 05 WRK-ABEND-CD PIC X(04) VALUE 'U423'. DTSBU423
00056 DTSBU423
00057 05 WRK-MOD-NAME PIC X(08) VALUE 'DTSBU423'. DTSBU423
00058 DTSBU423
00059 05 ABEND-MSG PIC X(60). DTSBU423
00060 DTSBU423
00061 05 WRK-TAX-WAGE-BASE PIC S9(07)V99 COMP-3 VALUE +0. DTSBU423
00062 05 WRK-WAGE-BASE-REMAIN PIC S9(07)V99 COMP-3 VALUE +0. DTSBU423
00063 DTSBU423
00064 ** THE FOLLOWING DATA ELEMENTS CONTAIN THE WAGES TO BE PASSED DTSBU423
00065 ** TO P1900 THAT CALCULATES THE TAXABLE WAGE AMOUNT. DTSBU423
00066 05 WRK-WAGES. DTSBU423
00067 10 WRK-QTR1-WAGES PIC S9(09)V99 COMP-3 VALUE +0. DTSBU423
00068 10 WRK-QTR2-WAGES PIC S9(09)V99 COMP-3 VALUE +0. DTSBU423
00069 10 WRK-QTR3-WAGES PIC S9(09)V99 COMP-3 VALUE +0. DTSBU423
00070 10 WRK-QTR4-WAGES PIC S9(09)V99 COMP-3 VALUE +0. DTSBU423
00071 DTSBU423
00072 ** THE FOLLOWING DATA ELEMENTS CONTAIN THE TAXABLE WAGES DTSBU423
00073 ** THAT P1900 RETURNS. DTSBU423
00074 05 WRK-WAGES. DTSBU423
00075 10 WRK-QTR1-TAX-WAGES PIC S9(09)V99 COMP-3 VALUE +0. DTSBU423
00076 10 WRK-QTR2-TAX-WAGES PIC S9(09)V99 COMP-3 VALUE +0. DTSBU423
00077 10 WRK-QTR3-TAX-WAGES PIC S9(09)V99 COMP-3 VALUE +0. DTSBU423
00078 10 WRK-QTR4-TAX-WAGES PIC S9(09)V99 COMP-3 VALUE +0. DTSBU423
00079 DTSBU423
00080 ** THE FOLLOWING DATA ELEMENTS CONTAIN THE TAXABLE WAGE AMOUNT DTSBU423
00081 ** CALCULATED FROM WAGES ALREADY ON FILE. DTSBU423
00082 05 WRK-OLD-TAX-WAGES. DTSBU423
00083 10 WRK-QTR1-OLD-TAX-WAGES PIC S9(09)V99 COMP-3 DTSBU423
00084 VALUE +0. DTSBU423
00085 10 WRK-QTR2-OLD-TAX-WAGES PIC S9(09)V99 COMP-3 DTSBU423
00086 VALUE +0. DTSBU423
00087 10 WRK-QTR3-OLD-TAX-WAGES PIC S9(09)V99 COMP-3 DTSBU423
00088 VALUE +0. DTSBU423
00089 10 WRK-QTR4-OLD-TAX-WAGES PIC S9(09)V99 COMP-3 DTSBU423
00090 VALUE +0. DTSBU423
00091 DTSBU423
00092 ** THE FOLLOWING DATA ELEMENTS CONTAIN THE TAXABLE WAGE AMOUNT DTSBU423
00093 ** CALCULATED FROM THE SUM OF WAGES ALREADY ON FILE AND THE DTSBU423
00094 ** NEW WAGES. DTSBU423
00095 05 WRK-NEW-TAX-WAGES. DTSBU423
00096 10 WRK-QTR1-NEW-TAX-WAGES PIC S9(09)V99 COMP-3 DTSBU423
00097 VALUE +0. DTSBU423
00098 10 WRK-QTR2-NEW-TAX-WAGES PIC S9(09)V99 COMP-3 DTSBU423
00099 VALUE +0. DTSBU423
00100 10 WRK-QTR3-NEW-TAX-WAGES PIC S9(09)V99 COMP-3 DTSBU423
00101 VALUE +0. DTSBU423
00102 10 WRK-QTR4-NEW-TAX-WAGES PIC S9(09)V99 COMP-3 DTSBU423
00103 VALUE +0. DTSBU423
00104 DTSBU423
00105 05 WRK-TAX-BASE-YEAR PIC S9(05) COMP-3 VALUE +0. DTSBU423
00106 05 AMT-DISP1 PIC Z(06)9. DTSBU423
00107 05 AMT-DISP2 PIC Z(06)9. DTSBU423
00108 DTSBU423
00109 05 WRK-FIRST-TIME-IND PIC X(01) VALUE 'Y'. DTSBU423
00110 88 WRK-FIRST-TIME-YES-88 VALUE 'Y'. DTSBU423
00111 88 WRK-FIRST-TIME-NO-88 VALUE 'N'. DTSBU423
00112 DTSBU423
00113 05 WRK-ERROR-IND PIC X(01). DTSBU423
00114 88 WRK-ERROR-YES-88 VALUE 'Y'. DTSBU423
00115 88 WRK-ERROR-NO-88 VALUE 'N'. DTSBU423
00116 DTSBU423
00117 EJECT DTSBU423
00118 01 L004-LINK-AREA. DTSBU423
00119 ++INCLUDE DTSIL004 DTSBU423
00120 SKIP3 DTSBU423
00121 01 L931-LINK-AREA. DTSBU423
00122 ++INCLUDE DTSIL931 DTSBU423
00123 SKIP3 DTSBU423
00124 01 FSKL-REC. DTSBU423
00125 ++INCLUDE DTSIFSKL DTSBU423
00126 SKIP3 DTSBU423
00127 01 FCYR-REC. DTSBU423
00128 ++INCLUDE DTSIFCYR DTSBU423
00129 SKIP3 DTSBU423
00130 LINKAGE SECTION. DTSBU423
00131 SKIP3 DTSBU423
00132 01 L423-LINK-AREA. DTSBU423
00133 ++INCLUDE DTSIL423 DTSBU423
00134 EJECT DTSBU423
00135 PROCEDURE DIVISION DTSBU423
00136 USING L423-LINK-AREA. DTSBU423
00137 DTSBU423
00138 PERFORM I0000-INIT THRU I0000-EXIT. DTSBU423
00139 DTSBU423
00140 PERFORM P0000-PROCESS THRU P0000-EXIT. DTSBU423
00141 DTSBU423
00142 GOBACK. DTSBU423
00143 EJECT DTSBU423
00144 I0000-INIT. DTSBU423
00145 IF WRK-FIRST-TIME-YES-88 DTSBU423
00146 SET WRK-FIRST-TIME-NO-88 TO TRUE DTSBU423
00147 PERFORM I1000-TAX-WAGE-BASE THRU I1000-EXIT. DTSBU423
00148 DTSBU423
00149 I0000-EXIT. DTSBU423
00150 EXIT. DTSBU423
00151 SKIP3 DTSBU423
00152 I1000-TAX-WAGE-BASE. DTSBU423
00153 MOVE LOW-VALUES TO FCYR-KEY-AREA. DTSBU423
00154 DTSBU423
00155 MOVE L423-QTR1 TO L004-QTR-5-9. DTSBU423
00156 MOVE L004-QTR-5-YR TO FCYR-YR. DTSBU423
00157 SET FCYR-CYR-88 TO TRUE. DTSBU423
00158 MOVE FCYR-KEY-AREA TO FSKL-KEY-AREA. DTSBU423
00159 PERFORM S931-READ THRU S931-EXIT. DTSBU423
00160 IF L931-NO-REC-88 DTSBU423
00161 PERFORM S999-ABEND THRU S999-EXIT DTSBU423
00162 ELSE DTSBU423
00163 MOVE FSKL-REC TO FCYR-REC DTSBU423
00164 MOVE FCYR-TAXABLE-WAGE-BASE TO WRK-TAX-WAGE-BASE. DTSBU423
00165 DTSBU423
00166 I1000-EXIT. DTSBU423
00167 EXIT. DTSBU423
00168 SKIP3 DTSBU423
00169 P0000-PROCESS. DTSBU423
00170 MOVE ZERO TO L423-QTR1-TAX-WAGES DTSBU423
00171 L423-QTR2-TAX-WAGES DTSBU423
00172 L423-QTR3-TAX-WAGES DTSBU423
00173 L423-QTR4-TAX-WAGES. DTSBU423
00174 DTSBU423
00175 SET L423-QTR1-VALID-88 TO TRUE. DTSBU423
00176 SET L423-QTR2-VALID-88 TO TRUE. DTSBU423
00177 SET L423-QTR3-VALID-88 TO TRUE. DTSBU423
00178 SET L423-QTR4-VALID-88 TO TRUE. DTSBU423
00179 DTSBU423
00180 PERFORM P1000-CALC-TAXABLE-WAGES THRU P1000-EXIT. DTSBU423
00181 DTSBU423
00182 P0000-EXIT. DTSBU423
00183 EXIT. DTSBU423
00184 DTSBU423
00185 P1000-CALC-TAXABLE-WAGES. DTSBU423
00186 SET WRK-ERROR-NO-88 TO TRUE. DTSBU423
00187 DTSBU423
00188 PERFORM P1100-EDIT-WAGES THRU P1100-EXIT. DTSBU423
00189 IF WRK-ERROR-YES-88 DTSBU423
00190 GO TO P1000-EXIT. DTSBU423
00191 DTSBU423
00192 PERFORM P1200-OLD-TAX-WAGE THRU P1200-EXIT. DTSBU423
00193 DTSBU423
00194 PERFORM P1300-NEW-TAX-WAGE THRU P1300-EXIT. DTSBU423
00195 DTSBU423
00196 PERFORM P1400-NET-TAX-WAGE THRU P1400-EXIT. DTSBU423
00197 DTSBU423
00198 P1000-EXIT. DTSBU423
00199 EXIT. DTSBU423
00200 DTSBU423
00201 P1100-EDIT-WAGES. DTSBU423
00202 IF (L423-QTR1-CURR-WAGE + DTSBU423
00203 L423-QTR1-WAGE-CHNG) < ZERO DTSBU423
00204 SET L423-QTR1-INVLD-NEG-88 TO TRUE DTSBU423
00205 SET WRK-ERROR-YES-88 TO TRUE. DTSBU423
00206 DTSBU423
00207 IF (L423-QTR2-CURR-WAGE + DTSBU423
00208 L423-QTR2-WAGE-CHNG) < ZERO DTSBU423
00209 SET L423-QTR2-INVLD-NEG-88 TO TRUE DTSBU423
00210 SET WRK-ERROR-YES-88 TO TRUE. DTSBU423
00211 DTSBU423
00212 IF (L423-QTR3-CURR-WAGE + DTSBU423
00213 L423-QTR3-WAGE-CHNG) < ZERO DTSBU423
00214 SET L423-QTR3-INVLD-NEG-88 TO TRUE DTSBU423
00215 SET WRK-ERROR-YES-88 TO TRUE. DTSBU423
00216 DTSBU423
00217 IF (L423-QTR4-CURR-WAGE + DTSBU423
00218 L423-QTR4-WAGE-CHNG) < ZERO DTSBU423
00219 SET L423-QTR4-INVLD-NEG-88 TO TRUE DTSBU423
00220 SET WRK-ERROR-YES-88 TO TRUE. DTSBU423
00221 DTSBU423
00222 P1100-EXIT. DTSBU423
00223 EXIT. DTSBU423
00224 DTSBU423
00225 P1200-OLD-TAX-WAGE. DTSBU423
00226 MOVE L423-QTR1-CURR-WAGE TO WRK-QTR1-WAGES. DTSBU423
00227 MOVE L423-QTR2-CURR-WAGE TO WRK-QTR2-WAGES. DTSBU423
00228 MOVE L423-QTR3-CURR-WAGE TO WRK-QTR3-WAGES. DTSBU423
00229 MOVE L423-QTR4-CURR-WAGE TO WRK-QTR4-WAGES. DTSBU423
00230 DTSBU423
00231 PERFORM P1900-CALC-TAX-WAGE THRU P1900-EXIT. DTSBU423
00232 DTSBU423
00233 MOVE WRK-QTR1-TAX-WAGES TO WRK-QTR1-OLD-TAX-WAGES. DTSBU423
00234 MOVE WRK-QTR2-TAX-WAGES TO WRK-QTR2-OLD-TAX-WAGES. DTSBU423
00235 MOVE WRK-QTR3-TAX-WAGES TO WRK-QTR3-OLD-TAX-WAGES. DTSBU423
00236 MOVE WRK-QTR4-TAX-WAGES TO WRK-QTR4-OLD-TAX-WAGES. DTSBU423
00237 DTSBU423
00238 P1200-EXIT. DTSBU423
00239 EXIT. DTSBU423
00240 DTSBU423
00241 P1300-NEW-TAX-WAGE. DTSBU423
00242 COMPUTE WRK-QTR1-WAGES = DTSBU423
00243 (L423-QTR1-WAGE-CHNG + L423-QTR1-CURR-WAGE) DTSBU423
00244 COMPUTE WRK-QTR2-WAGES = DTSBU423
00245 (L423-QTR2-WAGE-CHNG + L423-QTR2-CURR-WAGE) DTSBU423
00246 COMPUTE WRK-QTR3-WAGES = DTSBU423
00247 (L423-QTR3-WAGE-CHNG + L423-QTR3-CURR-WAGE) DTSBU423
00248 COMPUTE WRK-QTR4-WAGES = DTSBU423
00249 (L423-QTR4-WAGE-CHNG + L423-QTR4-CURR-WAGE). DTSBU423
00250 DTSBU423
00251 PERFORM P1900-CALC-TAX-WAGE THRU P1900-EXIT. DTSBU423
00252 DTSBU423
00253 MOVE WRK-QTR1-TAX-WAGES TO WRK-QTR1-NEW-TAX-WAGES. DTSBU423
00254 MOVE WRK-QTR2-TAX-WAGES TO WRK-QTR2-NEW-TAX-WAGES. DTSBU423
00255 MOVE WRK-QTR3-TAX-WAGES TO WRK-QTR3-NEW-TAX-WAGES. DTSBU423
00256 MOVE WRK-QTR4-TAX-WAGES TO WRK-QTR4-NEW-TAX-WAGES. DTSBU423
00257 DTSBU423
00258 P1300-EXIT. DTSBU423
00259 EXIT. DTSBU423
00260 DTSBU423
00261 P1400-NET-TAX-WAGE. DTSBU423
00262 COMPUTE L423-QTR1-TAX-WAGES = DTSBU423
00263 (WRK-QTR1-NEW-TAX-WAGES - WRK-QTR1-OLD-TAX-WAGES). DTSBU423
00264 DTSBU423
00265 COMPUTE L423-QTR2-TAX-WAGES = DTSBU423
00266 (WRK-QTR2-NEW-TAX-WAGES - WRK-QTR2-OLD-TAX-WAGES). DTSBU423
00267 DTSBU423
00268 COMPUTE L423-QTR3-TAX-WAGES = DTSBU423
00269 (WRK-QTR3-NEW-TAX-WAGES - WRK-QTR3-OLD-TAX-WAGES). DTSBU423
00270 DTSBU423
00271 COMPUTE L423-QTR4-TAX-WAGES = DTSBU423
00272 (WRK-QTR4-NEW-TAX-WAGES - WRK-QTR4-OLD-TAX-WAGES). DTSBU423
00273 DTSBU423
00274 P1400-EXIT. DTSBU423
00275 EXIT. DTSBU423
00276 DTSBU423
00277 P1900-CALC-TAX-WAGE. DTSBU423
00278 MOVE WRK-TAX-WAGE-BASE TO WRK-WAGE-BASE-REMAIN. DTSBU423
00279 DTSBU423
00280 IF WRK-QTR1-WAGES > WRK-WAGE-BASE-REMAIN DTSBU423
00281 MOVE WRK-WAGE-BASE-REMAIN TO WRK-QTR1-TAX-WAGES DTSBU423
00282 MOVE ZERO TO WRK-WAGE-BASE-REMAIN DTSBU423
00283 ELSE DTSBU423
00284 MOVE WRK-QTR1-WAGES TO WRK-QTR1-TAX-WAGES DTSBU423
00285 SUBTRACT WRK-QTR1-WAGES FROM WRK-WAGE-BASE-REMAIN. DTSBU423
00286 DTSBU423
00287 IF WRK-QTR2-WAGES > WRK-WAGE-BASE-REMAIN DTSBU423
00288 MOVE WRK-WAGE-BASE-REMAIN TO WRK-QTR2-TAX-WAGES DTSBU423
00289 MOVE ZERO TO WRK-WAGE-BASE-REMAIN DTSBU423
00290 ELSE DTSBU423
00291 MOVE WRK-QTR2-WAGES TO WRK-QTR2-TAX-WAGES DTSBU423
00292 SUBTRACT WRK-QTR2-WAGES FROM WRK-WAGE-BASE-REMAIN. DTSBU423
00293 DTSBU423
00294 IF WRK-QTR3-WAGES > WRK-WAGE-BASE-REMAIN DTSBU423
00295 MOVE WRK-WAGE-BASE-REMAIN TO WRK-QTR3-TAX-WAGES DTSBU423
00296 MOVE ZERO TO WRK-WAGE-BASE-REMAIN DTSBU423
00297 ELSE DTSBU423
00298 MOVE WRK-QTR3-WAGES TO WRK-QTR3-TAX-WAGES DTSBU423
00299 SUBTRACT WRK-QTR3-WAGES FROM WRK-WAGE-BASE-REMAIN. DTSBU423
00300 DTSBU423
00301 IF WRK-QTR4-WAGES > WRK-WAGE-BASE-REMAIN DTSBU423
00302 MOVE WRK-WAGE-BASE-REMAIN TO WRK-QTR4-TAX-WAGES DTSBU423
00303 MOVE ZERO TO WRK-WAGE-BASE-REMAIN DTSBU423
00304 ELSE DTSBU423
00305 MOVE WRK-QTR4-WAGES TO WRK-QTR4-TAX-WAGES DTSBU423
00306 SUBTRACT WRK-QTR4-WAGES FROM WRK-WAGE-BASE-REMAIN. DTSBU423
00307 DTSBU423
00308 P1900-EXIT. DTSBU423
00309 EXIT. DTSBU423
00310 DTSBU423
00311 S004-FROM-5. DTSBU423
00312 SET L004-FROM-5 TO TRUE. DTSBU423
00313 GO TO S004-QTR. DTSBU423
00314 DTSBU423
00315 S004-FROM-3. DTSBU423
00316 SET L004-FROM-3 TO TRUE. DTSBU423
00317 GO TO S004-QTR. DTSBU423
00318 DTSBU423
00319 S004-QTR. DTSBU423
00320 CALL 'DTSBU004' USING L004-LINK-AREA. DTSBU423
00321 S004-EXIT. DTSBU423
00322 EXIT. DTSBU423
00323 SKIP3 DTSBU423
00324 DTSBU423
00325 DTSBU423
00326 S931-READ. DTSBU423
00327 SET L931-READ-88 TO TRUE. DTSBU423
00328 GO TO S931-REF-I. DTSBU423
00329 DTSBU423
00330 S931-REF-I. DTSBU423
00331 CALL 'DTSBU931' USING L931-LINK-AREA DTSBU423
00332 FSKL-REC. DTSBU423
00333 S931-EXIT. DTSBU423
00334 EXIT. DTSBU423
00335 DTSBU423
00336 DTSBU423
00337 S999-ABEND. DTSBU423
00338 DISPLAY '*** DTSBE453 ABENDING. ' DTSBU423
00339 ABEND-MSG. DTSBU423
00340 DTSBU423
00341 CALL 'DTSBU999' USING WRK-ABEND-CD. DTSBU423
00342 S999-EXIT. DTSBU423
00343 EXIT. DTSBU423
00344 DTSBU423