00001 IDENTIFICATION DIVISION. 05/20/13 00002 PROGRAM-ID. DTSBU415. DTSBU415 00003 AUTHOR. TRW. LV009 00004 DATE-WRITTEN. OCTOBER 20001. DTSBU415 00005 DATE-COMPILED. DTSBU415 00006 ***** DTSBU415 00007 * DTSBU415 00008 * FUNCTION: FIND KEY DATES FOR ANNUAL FILERS DTSBU415 00009 * DTSBU415 00010 * DTSBU415 00011 * MODIFICATION LOG: DTSBU415 00012 * DTSBU415 00013 * 11/02/2001 INITIAL DEVELOPMENT. DTSBU415 00014 * WORK ORDER: PROGRAMMER: GD DTSBU415 00015 * DTSBU415 00016 * 07/14/2004 CORRECTED PROBLEM IN P2200 - MISSING PERIOD DTSBU415 00017 * AT END OF CONDITIONAL STATEMENT. DTSBU415 00018 * WORK ORDER: PROGRAMMER: GD DTSBU415 00019 * DTSBU415 00020 * XX/XX/XXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSBU415 00021 * XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSBU415 00022 * WORK ORDER: PROGRAMMER: XXX DTSBU415 00023 ***** DTSBU415 00024 * DTSBU415 00025 * DESCRIPTION: DTSBU415 00026 * DTSBU415 00027 * DTSBU415 RETURNS KEY DATES FROM THE FAFD REFERENCE FILE. DTSBU415 00028 * DTSBU415 00029 * THE SETTING OF L415-MODE DETERMINES WHETHER THE PROGRAM WILL DTSBU415 00030 * RETURN THE RELEVANT DATES FOR THE YEAR SPECIFIED IN L415-YR DTSBU415 00031 * OR THE MOST RECENT YEAR ON FILE. DTSBU415 00032 * DTSBU415 00033 ***** DTSBU415 00034 SKIP3 DTSBU415 00035 ENVIRONMENT DIVISION. DTSBU415 00036 SKIP3 DTSBU415 00037 DATA DIVISION. DTSBU415 00038 SKIP3 DTSBU415 00039 WORKING-STORAGE SECTION. DTSBU415 000395 77 PAN-VALET PICTURE X(24) VALUE '009DTSBU415 05/20/13'. DTSBU415 00040 77 PAN-VALET PICTURE X(24) VALUE '003DTSBU415 04/09/13'. DTSBU415 00041 77 PAN-VALET PICTURE X(24) VALUE '007DTSBU415 07/14/04'. DTSBU415 00042 SKIP3 DTSBU415 00043 01 WRK-AREA. DTSBU415 00044 05 WRK-ABEND-CODE PIC X(04) VALUE 'U415'. DTSBU415 00045 05 WRK-ABEND-MSG PIC X(60). DTSBU415 00046 DTSBU415 00047 05 WRK-YR PIC S9(05) COMP-3. DTSBU415 00048 05 WRK-FIRST-HSEHLD-YR PIC S9(05) COMP-3 DTSBU415 00049 VALUE +2000. DTSBU415 00050 DTSBU415 00051 05 WRK-LAST-YRQ PIC 9(05). DTSBU415 00052 05 FILLER REDEFINES WRK-LAST-YRQ. DTSBU415 00053 10 WRK-LAST-YYYY PIC 9(04). DTSBU415 00054 10 WRK-LAST-Q PIC 9(01). DTSBU415 00055 DTSBU415 00056 05 WRK-LAST-MASS-MAIL-DATE PIC S9(09) COMP-3. DTSBU415 00057 05 WRK-LAST-MASS-MAIL-YR PIC S9(05) COMP-3. DTSBU415 00058 05 WRK-LAST-LATE-PEN-DATE PIC S9(09) COMP-3. DTSBU415 00059 05 WRK-LAST-LATE-PEN-YR PIC S9(05) COMP-3. DTSBU415 00060 05 WRK-LAST-FIRST-DEL-DATE PIC S9(09) COMP-3. DTSBU415 00061 05 WRK-LAST-FIRST-DEL-YR PIC S9(05) COMP-3. DTSBU415 00062 05 WRK-LAST-ESTIMATED-DATE PIC S9(09) COMP-3. DTSBU415 00063 05 WRK-LAST-FINAL-DEL-YR PIC S9(05) COMP-3. DTSBU415 00064 05 WRK-LAST-FINAL-ACTION-DATE PIC S9(09) COMP-3. DTSBU415 00065 DTSBU415 00066 05 WRK-FAFD-FOUND-IND PIC X(01). DTSBU415 00067 88 WRK-FAFD-FOUND-YES-88 VALUE 'Y'. DTSBU415 00068 88 WRK-FAFD-FOUND-NO-88 VALUE 'N'. DTSBU415 00069 DTSBU415 00070 05 WRK-DATE-DISP1 PIC Z9(08)-. DTSBU415 00071 05 WRK-DATE-DISP2 PIC Z9(08)-. DTSBU415 00072 DTSBU415 00073 01 L931-LINK-AREA. DTSBU415 00074 05 L931-CONTROL-BLOCK. DTSBU415 00075 ++INCLUDE DTSIL931 DTSBU415 00076 05 FSKL-REC. DTSBU415 00077 ++INCLUDE DTSIFSKL DTSBU415 00078 EJECT DTSBU415 00079 01 FAFD-REC. DTSBU415 00080 ++INCLUDE DTSIFAFD DTSBU415 00081 EJECT DTSBU415 00082 LINKAGE SECTION. DTSBU415 00083 SKIP3 DTSBU415 00084 01 L415-LINK-AREA. DTSBU415 00085 ++INCLUDE DTSIL415 DTSBU415 00086 EJECT DTSBU415 00087 PROCEDURE DIVISION USING L415-LINK-AREA. DTSBU415 00088 SKIP2 DTSBU415 00089 DTSBU400-MAINLINE. DTSBU415 00090 PERFORM I0000-INITIALIZE THRU I0000-EXIT. DTSBU415 00091 DTSBU415 00092 PERFORM P0000-PROCESS THRU P0000-EXIT. DTSBU415 00093 DTSBU415 00094 DTSBU400-MAINLINE-EXIT. DTSBU415 00095 GOBACK. DTSBU415 00096 DTSBU415 00097 EJECT DTSBU415 00098 I0000-INITIALIZE. DTSBU415 00099 PERFORM I1000-EDIT-INPUT THRU I1000-EXIT. DTSBU415 00100 DTSBU415 00101 PERFORM I2000-INIT-RETURN THRU I2000-EXIT. DTSBU415 00102 DTSBU415 00103 I0000-EXIT. DTSBU415 00104 EXIT. DTSBU415 00105 I1000-EDIT-INPUT. DTSBU415 00106 IF L415-MODE-INPUT-YEAR-88 DTSBU415 00107 IF L415-YR NOT NUMERIC DTSBU415 00108 MOVE 'NON-NUMERIC YEAR ' TO WRK-ABEND-MSG DTSBU415 00109 PERFORM S999-ABEND THRU S999-EXIT DTSBU415 00110 ELSE DTSBU415 00111 MOVE L415-YR TO WRK-YR DTSBU415 00112 ELSE DTSBU415 00113 MOVE ZERO TO WRK-YR. DTSBU415 00114 DTSBU415 00115 I1000-EXIT. DTSBU415 00116 EXIT. DTSBU415 00117 DTSBU415 00118 I2000-INIT-RETURN. DTSBU415 00119 MOVE ZERO TO L415-UC30H-RPT-DUE-DATE DTSBU415 00120 L415-UC30H-MASS-MAIL-DATE DTSBU415 00121 L415-UC30H-MASS-MAIL-STRT-YRQ DTSBU415 00122 L415-UC30H-MASS-MAIL-END-YRQ DTSBU415 00123 L415-UC30H-LATE-PEN-DATE DTSBU415 00124 L415-UC30H-LATE-PEN-STRT-YRQ DTSBU415 00125 L415-UC30H-LATE-PEN-END-YRQ DTSBU415 00126 L415-UC30H-FIRST-DEL-DATE DTSBU415 00127 L415-UC30H-FIRST-DEL-STRT-YRQ DTSBU415 00128 L415-UC30H-FIRST-DEL-END-YRQ DTSBU415 00129 L415-UC30H-ESTIMATED-DATE DTSBU415 00130 L415-UC30H-FINAL-DEL-STRT-YRQ DTSBU415 00131 L415-UC30H-FINAL-DEL-END-YRQ DTSBU415 00132 L415-UC30H-FINAL-ACTION-DATE DTSBU415 00133 WRK-LAST-MASS-MAIL-DATE DTSBU415 00134 WRK-LAST-MASS-MAIL-YR DTSBU415 00135 WRK-LAST-LATE-PEN-DATE DTSBU415 00136 WRK-LAST-LATE-PEN-YR DTSBU415 00137 WRK-LAST-FIRST-DEL-DATE DTSBU415 00138 WRK-LAST-FIRST-DEL-YR DTSBU415 00139 WRK-LAST-ESTIMATED-DATE DTSBU415 00140 WRK-LAST-FINAL-DEL-YR DTSBU415 00141 WRK-LAST-FINAL-ACTION-DATE. DTSBU415 00142 DTSBU415 00143 DTSBU415 00144 I2000-EXIT. DTSBU415 00145 EXIT. DTSBU415 00146 DTSBU415 00147 P0000-PROCESS. DTSBU415 00148 SET L415-NOT-FOUND-88 TO TRUE. DTSBU415 00149 DTSBU415 00150 IF L415-MODE-INPUT-YEAR-88 DTSBU415 00151 PERFORM P1000-INPUT-YEAR THRU P1000-EXIT DTSBU415 00152 IF L415-OK-88 DTSBU415 00153 PERFORM P1100-RETURN-VALUES THRU P1100-EXIT DTSBU415 00154 END-IF DTSBU415 00155 ELSE DTSBU415 00156 PERFORM P2000-MOST-RECENT THRU P2000-EXIT DTSBU415 00157 PERFORM P2200-RETURN-VALUES THRU P2200-EXIT DTSBU415 00158 END-IF. DTSBU415 00159 DTSBU415 00160 P0000-EXIT. DTSBU415 00161 EXIT. DTSBU415 00162 DTSBU415 00163 P1000-INPUT-YEAR. DTSBU415 00164 MOVE LOW-VALUES TO FAFD-KEY-AREA. DTSBU415 00165 MOVE WRK-YR TO FAFD-YR. DTSBU415 00166 SET FAFD-AFD-88 TO TRUE. DTSBU415 00167 MOVE FAFD-KEY-AREA TO FSKL-KEY-AREA. DTSBU415 00168 PERFORM S931-READ THRU S931-EXIT. DTSBU415 00169 IF L931-NO-REC-88 DTSBU415 00170 NEXT SENTENCE DTSBU415 00171 ELSE DTSBU415 00172 MOVE FSKL-REC TO FAFD-REC DTSBU415 00173 SET L415-OK-88 TO TRUE. DTSBU415 00174 DTSBU415 00175 P1000-EXIT. DTSBU415 00176 EXIT. DTSBU415 00177 DTSBU415 00178 P1100-RETURN-VALUES. DTSBU415 00179 MOVE FAFD-UC30H-RPT-DUE-DATE DTSBU415 00180 TO L415-UC30H-RPT-DUE-DATE DTSBU415 00181 DTSBU415 00182 MOVE FAFD-UC30H-MASS-MAIL-DATE DTSBU415 00183 TO L415-UC30H-MASS-MAIL-DATE. DTSBU415 00184 MOVE FAFD-YR TO WRK-LAST-YYYY. DTSBU415 00185 MOVE 1 TO WRK-LAST-Q. DTSBU415 00186 MOVE WRK-LAST-YRQ DTSBU415 00187 TO L415-UC30H-MASS-MAIL-STRT-YRQ. DTSBU415 00188 MOVE 4 TO WRK-LAST-Q. DTSBU415 00189 MOVE WRK-LAST-YRQ DTSBU415 00190 TO L415-UC30H-MASS-MAIL-END-YRQ DTSBU415 00191 DTSBU415 00192 MOVE FAFD-LATE-PEN-ASSESSED-DATE DTSBU415 00193 TO L415-UC30H-LATE-PEN-DATE. DTSBU415 00194 MOVE FAFD-YR TO WRK-LAST-YYYY DTSBU415 00195 MOVE 1 TO WRK-LAST-Q. DTSBU415 00196 MOVE WRK-LAST-YRQ DTSBU415 00197 TO L415-UC30H-LATE-PEN-STRT-YRQ. DTSBU415 00198 MOVE 4 TO WRK-LAST-Q. DTSBU415 00199 MOVE WRK-LAST-YRQ DTSBU415 00200 TO L415-UC30H-LATE-PEN-END-YRQ. DTSBU415 00201 DTSBU415 00202 MOVE FAFD-UC30H-FIRST-DEL-DATE DTSBU415 00203 TO L415-UC30H-FIRST-DEL-DATE. DTSBU415 00204 MOVE FAFD-YR TO WRK-LAST-YYYY DTSBU415 00205 MOVE 1 TO WRK-LAST-Q. DTSBU415 00206 MOVE WRK-LAST-YRQ DTSBU415 00207 TO L415-UC30H-FIRST-DEL-STRT-YRQ. DTSBU415 00208 MOVE 4 TO WRK-LAST-Q. DTSBU415 00209 MOVE WRK-LAST-YRQ DTSBU415 00210 TO L415-UC30H-FIRST-DEL-END-YRQ. DTSBU415 00211 DTSBU415 00212 MOVE FAFD-UC30H-ESTIMATED-DATE DTSBU415 00213 TO L415-UC30H-ESTIMATED-DATE. DTSBU415 00214 MOVE FAFD-YR TO WRK-LAST-YYYY DTSBU415 00215 MOVE 1 TO WRK-LAST-Q. DTSBU415 00216 MOVE WRK-LAST-YRQ DTSBU415 00217 TO L415-UC30H-FINAL-DEL-STRT-YRQ. DTSBU415 00218 MOVE 4 TO WRK-LAST-Q. DTSBU415 00219 MOVE WRK-LAST-YRQ DTSBU415 00220 TO L415-UC30H-FINAL-DEL-END-YRQ. DTSBU415 00221 DTSBU415 00222 MOVE FAFD-UC30H-FINAL-ACTION-DATE DTSBU415 00223 TO L415-UC30H-FINAL-ACTION-DATE. DTSBU415 00224 DTSBU415 00225 P1100-EXIT. DTSBU415 00226 EXIT. DTSBU415 00227 DTSBU415 00228 P2000-MOST-RECENT. DTSBU415 00229 MOVE LOW-VALUES TO FAFD-KEY-AREA. DTSBU415 00230 SET FAFD-AFD-88 TO TRUE. DTSBU415 00231 MOVE FAFD-KEY-AREA TO FSKL-KEY-AREA. DTSBU415 00232 PERFORM S931-START-BROWSE THRU S931-EXIT. DTSBU415 00233 IF L931-OK-88 DTSBU415 00234 SET L415-OK-88 TO TRUE DTSBU415 00235 PERFORM P2100-SCAN-FAFD THRU P2100-EXIT DTSBU415 00236 UNTIL L931-NO-REC-88. DTSBU415 00237 DTSBU415 00238 P2000-EXIT. DTSBU415 00239 EXIT. DTSBU415 00240 DTSBU415 00241 P2100-SCAN-FAFD. DTSBU415 00242 MOVE FSKL-REC TO FAFD-REC. DTSBU415 00243 DTSBU415 00244 IF FAFD-UC30H-MASS-MAIL-DATE > DTSBU415 00245 WRK-LAST-MASS-MAIL-DATE DTSBU415 00246 MOVE FAFD-UC30H-MASS-MAIL-DATE TO DTSBU415 00247 WRK-LAST-MASS-MAIL-DATE DTSBU415 00248 MOVE FAFD-YR TO WRK-LAST-MASS-MAIL-YR DTSBU415 00249 END-IF. DTSBU415 00250 DTSBU415 00251 IF FAFD-LATE-PEN-ASSESSED-DATE > DTSBU415 00252 WRK-LAST-LATE-PEN-DATE DTSBU415 00253 MOVE FAFD-LATE-PEN-ASSESSED-DATE TO DTSBU415 00254 WRK-LAST-LATE-PEN-DATE DTSBU415 00255 MOVE FAFD-YR TO WRK-LAST-LATE-PEN-YR DTSBU415 00256 END-IF. DTSBU415 00257 DTSBU415 00258 IF FAFD-UC30H-FIRST-DEL-DATE > DTSBU415 00259 WRK-LAST-FIRST-DEL-DATE DTSBU415 00260 MOVE FAFD-UC30H-FIRST-DEL-DATE TO DTSBU415 00261 WRK-LAST-FIRST-DEL-DATE DTSBU415 00262 MOVE FAFD-YR TO WRK-LAST-FIRST-DEL-YR DTSBU415 00263 END-IF. DTSBU415 00264 DTSBU415 00265 IF FAFD-UC30H-ESTIMATED-DATE > DTSBU415 00266 WRK-LAST-ESTIMATED-DATE DTSBU415 00267 MOVE FAFD-UC30H-ESTIMATED-DATE TO DTSBU415 00268 WRK-LAST-ESTIMATED-DATE DTSBU415 00269 MOVE FAFD-YR TO WRK-LAST-FINAL-DEL-YR DTSBU415 00270 END-IF. DTSBU415 00271 DTSBU415 00272 IF FAFD-UC30H-FINAL-ACTION-DATE > DTSBU415 00273 WRK-LAST-FINAL-ACTION-DATE DTSBU415 00274 MOVE FAFD-UC30H-FINAL-ACTION-DATE TO DTSBU415 00275 WRK-LAST-FINAL-ACTION-DATE DTSBU415 00276 END-IF. DTSBU415 00277 DTSBU415 00278 PERFORM S931-READ-NEXT THRU S931-EXIT. DTSBU415 00279 DTSBU415 00280 P2100-EXIT. DTSBU415 00281 EXIT. DTSBU415 00282 DTSBU415 00283 P2200-RETURN-VALUES. DTSBU415 00284 MOVE ZERO TO L415-UC30H-RPT-DUE-DATE. DTSBU415 00285 DTSBU415 00286 MOVE WRK-LAST-MASS-MAIL-DATE DTSBU415 00287 TO L415-UC30H-MASS-MAIL-DATE. DTSBU415 00288 IF WRK-LAST-MASS-MAIL-YR > 0 DTSBU415 00289 MOVE WRK-LAST-MASS-MAIL-YR DTSBU415 00290 TO WRK-LAST-YYYY DTSBU415 00291 MOVE 1 TO WRK-LAST-Q DTSBU415 00292 MOVE WRK-LAST-YRQ DTSBU415 00293 TO L415-UC30H-MASS-MAIL-STRT-YRQ DTSBU415 00294 MOVE 4 TO WRK-LAST-Q DTSBU415 00295 MOVE WRK-LAST-YRQ DTSBU415 00296 TO L415-UC30H-MASS-MAIL-END-YRQ. DTSBU415 00297 DTSBU415 00298 MOVE WRK-LAST-LATE-PEN-DATE DTSBU415 00299 TO L415-UC30H-LATE-PEN-DATE. DTSBU415 00300 IF WRK-LAST-LATE-PEN-YR > 0 DTSBU415 00301 MOVE WRK-LAST-LATE-PEN-YR DTSBU415 00302 TO WRK-LAST-YYYY DTSBU415 00303 MOVE 1 TO WRK-LAST-Q DTSBU415 00304 MOVE WRK-LAST-YRQ DTSBU415 00305 TO L415-UC30H-LATE-PEN-STRT-YRQ DTSBU415 00306 MOVE 4 TO WRK-LAST-Q DTSBU415 00307 MOVE WRK-LAST-YRQ DTSBU415 00308 TO L415-UC30H-LATE-PEN-END-YRQ. DTSBU415 00309 DTSBU415 00310 MOVE WRK-LAST-FIRST-DEL-DATE DTSBU415 00311 TO L415-UC30H-FIRST-DEL-DATE. DTSBU415 00312 IF WRK-LAST-FIRST-DEL-YR > 0 DTSBU415 00313 MOVE WRK-LAST-FIRST-DEL-YR DTSBU415 00314 TO WRK-LAST-YYYY DTSBU415 00315 MOVE 1 TO WRK-LAST-Q DTSBU415 00316 MOVE WRK-LAST-YRQ DTSBU415 00317 TO L415-UC30H-FIRST-DEL-STRT-YRQ DTSBU415 00318 MOVE 4 TO WRK-LAST-Q DTSBU415 00319 MOVE WRK-LAST-YRQ DTSBU415 00320 TO L415-UC30H-FIRST-DEL-END-YRQ. DTSBU415 00321 DTSBU415 00322 MOVE WRK-LAST-ESTIMATED-DATE DTSBU415 00323 TO L415-UC30H-ESTIMATED-DATE. DTSBU415 00324 IF WRK-LAST-FINAL-DEL-YR > 0 DTSBU415 00325 MOVE WRK-LAST-FINAL-DEL-YR DTSBU415 00326 TO WRK-LAST-YYYY DTSBU415 00327 MOVE 1 TO WRK-LAST-Q DTSBU415 00328 MOVE WRK-LAST-YRQ DTSBU415 00329 TO L415-UC30H-FINAL-DEL-STRT-YRQ DTSBU415 00330 MOVE 4 TO WRK-LAST-Q DTSBU415 00331 MOVE WRK-LAST-YRQ DTSBU415 00332 TO L415-UC30H-FINAL-DEL-END-YRQ. DTSBU415 00333 DTSBU415 00334 MOVE WRK-LAST-FINAL-ACTION-DATE DTSBU415 00335 TO L415-UC30H-FINAL-ACTION-DATE. DTSBU415 00336 DTSBU415 00337 P2200-EXIT. DTSBU415 00338 EXIT. DTSBU415 00339 DTSBU415 00340 S931-READ. DTSBU415 00341 SET L931-READ-88 TO TRUE. DTSBU415 00342 GO TO S931-REF-IO. DTSBU415 00343 DTSBU415 00344 S931-START-BROWSE. DTSBU415 00345 SET L931-START-BROWSE-88 TO TRUE. DTSBU415 00346 GO TO S931-REF-IO. DTSBU415 00347 DTSBU415 00348 S931-READ-NEXT. DTSBU415 00349 SET L931-READ-NEXT-88 TO TRUE. DTSBU415 00350 GO TO S931-REF-IO. DTSBU415 00351 DTSBU415 00352 S931-REF-IO. DTSBU415 00353 CALL 'DTSBU931' USING L931-LINK-AREA DTSBU415 00354 FSKL-REC. DTSBU415 00355 DTSBU415 00356 S931-EXIT. DTSBU415 00357 EXIT. DTSBU415 00358 DTSBU415 00359 S999-ABEND. DTSBU415 00360 SKIP1 DTSBU415 00361 DISPLAY '*** DTSBU415 ABENDING ***'. DTSBU415 00362 DISPLAY WRK-ABEND-MSG. DTSBU415 00363 CALL 'DTSBU999' USING WRK-ABEND-CODE. DTSBU415 00364 SKIP1 DTSBU415 00365 S999-EXIT. DTSBU415 00366 EXIT. DTSBU415