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

670 lines
53 KiB
COBOL

00001 IDENTIFICATION DIVISION. 08/28/02
00002 PROGRAM-ID. DESBD800. DESBD800
00003 AUTHOR. MT DEPT OF LABOR/UI PROGRAMMING SECTION LV003
00004 DATE-WRITTEN. JULY 1994. DESBD800
00005 DATE-COMPILED. DESBD800
00006 DESBD800
00007 ***** DESBD800
00008 * DESBD800
00009 * FUNCTION: REPORT DRIVER MODULE. DESBD800
00010 * DESBD800
00011 * DESBD800
00012 * MODIFICATION HISTORY: DESBD800
00013 * DESBD800
00014 * 03/07/2000 ENLARGE TO HANDLE DTSBR980. DESBD800
00015 * REFERENCE: NEEDED FOR OPS BY CLIENT : JHP DESBD800
00016 * DESBD800
00017 * 07-18-94 INITIAL DEVELOPMENT DESBD800
00018 * REFERENCE RFP #RAP AUTHOR OF CHANGE - SFW DESBD800
00019 * DESBD800
00020 * 11-05-97 MODIFY LITERAL PLACED IN LRCM-AGY-NAME-LINE2 TO DESBD800
00021 * REFLECT MOVE OF UI TAX SYSTEM FROM DLI TO DOR. DESBD800
00022 * REFERENCE RFP #TCL 208 AUTHOR OF CHANGE - EHH DESBD800
00023 * DESBD800
00024 * 10/06/1998 REVIEWED AND MODIFIED FOR DC. DESBD800
00025 * REFERENCE: DC DEVELOPMENT PROGRAMMER: EHH DESBD800
00026 * DESBD800
00027 * 07/14/1999 INITIALIZE LRCM-PICKUP-DIR. DESBD800
00028 * REFERENCE: PICKUP DIR PROGRAMMER: DVS DESBD800
00029 * DESBD800
00030 * 03/20/2001 CLONED FROM DTSBD800 FOR ELECTRONIC MEDIA SYSTEM. DESBD800
00031 * REFERENCE: PROGRAMMER: GD DESBD800
00032 * DESBD800
00033 * MM/DD/YYYY XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DESBD800
00034 * XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DESBD800
00035 * REFERENCE: XXXXXXXXXXXXXXX PROGRAMMER: XXX DESBD800
00036 * DESBD800
00037 * DESBD800
00038 * DESCRIPTION: DESBD800
00039 * DESBD800
00040 * THE FUNCTION OF DESBD800 IS TO READ THE SORTED INCOMING DESBD800
00041 * REPORT RECORD FILE AND CALL THE APPROPRIATE MODULE TO DESBD800
00042 * PROCESS EACH REPORT RECORD. THE RECORD TYPE IS APPENDED DESBD800
00043 * TO THE CONSTANT 'DESBR' TO FORM THE LOAD MODULE NAME DESBD800
00044 * ASSOCIATED WITH THE RECORD. DESBD800
00045 * DESBD800
00046 * TWO TYPES OF PARAMETER FILES ARE INPUT: DESBD800
00047 * DESBD800
00048 * - ONE PARAMETER FILE (CALLED PARM-FILE) SPECIFIES WHICH OF DESBD800
00049 * THE INCOMING REPORT RECORD TYPES ARE TO BE PROCESSED, THIS DESBD800
00050 * IS DONE BY EITHER SPECIFYING: DESBD800
00051 * A: REPORT RECORD TYPES TO BE INCLUDED (PROCESSED) DESBD800
00052 * OR DESBD800
00053 * B: REPORT RECORD TYPES TO BE EXCLUDED (NOT PROCESSED). DESBD800
00054 * DESBD800
00055 * - THE OTHER PARAMETER FILE (CALLED ATLEAST-ONCE-FILE) DESBD800
00056 * SPECIFIES THE REPORT RECORD TYPES CORRESPONDING TO ALL DESBD800
00057 * REPORT MODULES WHICH MUST BE EXECUTED AT LEAST ONCE. DESBD800
00058 * DESBD800
00059 * DESBD800
00060 * - THE TABLE INTRODUCED FOR DTSBR980 IS 999 ENTRIES LONG DESBD800
00061 * TO HANDLE EVERY POSSIBLE REPORT PROGRAM DESBD800
00062 * (DTSBR001 TO DTSBR999). DESBD800
00063 * DESBD800
00064 * DESBD800
00065 * MODULES CALLED: DESBD800
00066 * DESBD800
00067 * DTSBR980 REPORT CONTROL LIST DESBD800
00068 * DTSBU001 DATE MODULE DESBD800
00069 * DTSBU119 AGENCY FACTS MODULE DESBD800
00070 * DTSBU931 REFERENCE FILE I-O MODULE DESBD800
00071 * DTSBU941 REPORT FILE SEQUENTIAL INPUT MODULE DESBD800
00072 * DTSBU999 ABEND MODULE DESBD800
00073 * DESBD800
00074 ***** DESBD800
00075 EJECT DESBD800
00076 ENVIRONMENT DIVISION. DESBD800
00077 DESBD800
00078 INPUT-OUTPUT SECTION. DESBD800
00079 DESBD800
00080 FILE-CONTROL. DESBD800
00081 SELECT PARM-FILE ASSIGN TO PARMIN. DESBD800
00082 SELECT ATLEAST-ONCE-FILE ASSIGN TO ATLSTIN. DESBD800
00083 DESBD800
00084 DATA DIVISION. DESBD800
00085 DESBD800
00086 FILE SECTION. DESBD800
00087 DESBD800
00088 FD PARM-FILE DESBD800
00089 LABEL RECORDS ARE STANDARD. DESBD800
00090 DESBD800
00091 01 PARM-REC. DESBD800
00092 05 PARM-MOD-NAME PIC X(08). DESBD800
00093 05 FILLER PIC X(01). DESBD800
00094 05 PARM-CONTROL-TYPE PIC X(03). DESBD800
00095 05 PARM-RPT-TYPE-AREA OCCURS 15 TIMES DESBD800
00096 INDEXED BY PARM-RPT-IDX. DESBD800
00097 10 FILLER PIC X(01). DESBD800
00098 10 PARM-RPT-TYPE PIC X(03). DESBD800
00099 05 FILLER PIC X(08). DESBD800
00100 DESBD800
00101 DESBD800
00102 DESBD800
00103 FD ATLEAST-ONCE-FILE DESBD800
00104 LABEL RECORDS ARE STANDARD. DESBD800
00105 DESBD800
00106 01 ATLEAST-ONCE-REC. DESBD800
00107 05 ATLEAST-ONCE-MOD-NAME PIC X(08). DESBD800
00108 05 ATLEAST-ONCE-RPT-TYPE-AREA OCCURS 15 TIMES DESBD800
00109 INDEXED BY ATLEAST-ONCE-RPT-IDX. DESBD800
00110 10 FILLER PIC X(01). DESBD800
00111 10 ATLEAST-ONCE-RPT-TYPE PIC X(03). DESBD800
00112 05 FILLER PIC X(12). DESBD800
00113 EJECT DESBD800
00114 WORKING-STORAGE SECTION. DESBD800
001145 77 PAN-VALET PICTURE X(24) VALUE '003DESBD800 08/28/02'. DESBD800
00115 DESBD800
00116 01 WRK-AREA. DESBD800
00117 05 WRK-ABEND-CD PIC S9(04) COMP VALUE +800.DESBD800
00118 DESBD800
00119 05 ABEND-MSG PIC X(50). DESBD800
00120 DESBD800
00121 05 INCLUDE-REC-CNT PIC S9(07) COMP-3. DESBD800
00122 DESBD800
00123 05 EXCLUDE-REC-CNT PIC S9(07) COMP-3. DESBD800
00124 DESBD800
00125 05 PARM-REC-CNT PIC S9(04) COMP. DESBD800
00126 DESBD800
00127 05 PARM-EOF-IND PIC X(01). DESBD800
00128 DESBD800
00129 05 ATLEAST-ONCE-REC-CNT PIC S9(04) COMP. DESBD800
00130 DESBD800
00131 05 ATLEAST-ONCE-EOF-IND PIC X(01). DESBD800
00132 DESBD800
00133 05 NDX-1 PIC S9(04) COMP. DESBD800
00134 DESBD800
00135 05 SYS-TIME. DESBD800
00136 10 SYS-H PIC X(02). DESBD800
00137 10 SYS-M PIC X(02). DESBD800
00138 10 SYS-S PIC X(02). DESBD800
00139 10 FILLER PIC X(02). DESBD800
00140 DESBD800
00141 05 DISP-TIME. DESBD800
00142 10 DISP-H PIC X(02). DESBD800
00143 10 FILLER PIC X(01) VALUE '.'. DESBD800
00144 10 DISP-M PIC X(02). DESBD800
00145 10 FILLER PIC X(01) VALUE '.'. DESBD800
00146 10 DISP-S PIC X(02). DESBD800
00147 EJECT DESBD800
00148 05 WRK-CONTROL-CNT PIC S9(04) COMP. DESBD800
00149 DESBD800
00150 05 WRK-CONTROL-TYPE PIC X(03). DESBD800
00151 88 WRK-INCLUDE-88 VALUE 'INC'. DESBD800
00152 88 WRK-EXCLUDE-88 VALUE 'EXC'. DESBD800
00153 DESBD800
00154 05 WRK-CONTROL-REC-TYPE OCCURS 15 TIMES DESBD800
00155 INDEXED BY WRK-CONTROL-REC-IDX DESBD800
00156 PIC X(03). DESBD800
00157 DESBD800
00158 DESBD800
00159 DESBD800
00160 05 WRK-SELECT-IND PIC X(01). DESBD800
00161 DESBD800
00162 DESBD800
00163 DESBD800
00164 05 WRK-ATLEAST-ONCE-CNT PIC S9(04) COMP. DESBD800
00165 DESBD800
00166 05 WRK-ATLEAST-ONCE-OCCURS OCCURS 15 TIMES DESBD800
00167 INDEXED BY WRK-ATLEAST-ONCE-IDX. DESBD800
00168 10 WRK-ATLEAST-ONCE-REC-TYPE DESBD800
00169 PIC X(03). DESBD800
00170 10 WRK-ATLEAST-ONCE-CALLED-IND DESBD800
00171 PIC X(01). DESBD800
00172 88 WRK-ATLEAST-ONCE-CALLED-88 VALUE 'Y'. DESBD800
00173 DESBD800
00174 DESBD800
00175 DESBD800
00176 05 HOLD-REC-TYPE PIC X(03) VALUE ZEROES. DESBD800
00177 05 HOLD-REC-TYPE-9 REDEFINES HOLD-REC-TYPE DESBD800
00178 PIC 9(03). DESBD800
00179 DESBD800
00180 05 HOLD-REC-CNT PIC S9(07) COMP-3. DESBD800
00181 DESBD800
00182 05 PRINT-MODULE. DESBD800
00183 10 FILLER PIC X(05) VALUE 'DESBR'. DESBD800
00184 10 PRINT-TYPE PIC X(03) VALUE SPACES. DESBD800
00185 EJECT DESBD800
00186 01 L001-LINK-AREA. DESBD800
00187 ++INCLUDE DTSIL001 DESBD800
00188 EJECT DESBD800
00189 01 L119-LINK-AREA. DESBD800
00190 ++INCLUDE DTSIL119 DESBD800
00191 EJECT DESBD800
00192 01 L931-LINK-AREA. DESBD800
00193 ++INCLUDE DTSIL931 DESBD800
00194 EJECT DESBD800
00195 01 L941-LINK-AREA. DESBD800
00196 ++INCLUDE DTSIL941 DESBD800
00197 EJECT DESBD800
00198 01 L980-LINK-AREA. DESBD800
00199 ++INCLUDE DTSIL980 DESBD800
00200 EJECT DESBD800
00201 01 RSK3-REC. DESBD800
00202 ++INCLUDE DTSIRSK3 DESBD800
00203 EJECT DESBD800
00204 01 LRCM-LINK-AREA. DESBD800
00205 ++INCLUDE DTSILRCM DESBD800
00206 EJECT DESBD800
00207 01 FSKL-REC. DESBD800
00208 ++INCLUDE DTSIFSKL DESBD800
00209 EJECT DESBD800
00210 PROCEDURE DIVISION. DESBD800
00211 DESBD800
00212 PERFORM I0000-INITIATE THRU I0000-EXIT. DESBD800
00213 DESBD800
00214 PERFORM P0000-PROCESS THRU P0000-EXIT. DESBD800
00215 DESBD800
00216 PERFORM T0000-TERMINATE THRU T0000-EXIT. DESBD800
00217 DESBD800
00218 GOBACK. DESBD800
00219 EJECT DESBD800
00220 I0000-INITIATE. DESBD800
00221 PERFORM I1000-OPEN-FILES THRU I1000-EXIT. DESBD800
00222 DESBD800
00223 PERFORM I2000-PARM THRU I2000-EXIT. DESBD800
00224 DESBD800
00225 PERFORM I3000-ATLEAST-ONCE THRU I3000-EXIT. DESBD800
00226 DESBD800
00227 PERFORM I4000-INIT-LRCM THRU I4000-EXIT. DESBD800
00228 I0000-EXIT. DESBD800
00229 EXIT. DESBD800
00230 DESBD800
00231 DESBD800
00232 DESBD800
00233 I1000-OPEN-FILES. DESBD800
00234 SET L931-OPEN-READ-88 TO TRUE. DESBD800
00235 DESBD800
00236 PERFORM S931-REF-IO THRU S931-EXIT. DESBD800
00237 DESBD800
00238 SET L941-OPEN-READ-88 TO TRUE. DESBD800
00239 DESBD800
00240 PERFORM S941-RPT-I THRU S941-EXIT. DESBD800
00241 I1000-EXIT. DESBD800
00242 EXIT. DESBD800
00243 DESBD800
00244 DESBD800
00245 DESBD800
00246 I2000-PARM. DESBD800
00247 OPEN INPUT PARM-FILE. DESBD800
00248 DESBD800
00249 MOVE 'N' TO PARM-EOF-IND. DESBD800
00250 DESBD800
00251 MOVE +0 TO PARM-REC-CNT. DESBD800
00252 DESBD800
00253 DISPLAY ' '. DESBD800
00254 DESBD800
00255 DISPLAY '*** DESBD800 PARAMETERS'. DESBD800
00256 DESBD800
00257 PERFORM I2100-READ-PARM THRU I2100-EXIT DESBD800
00258 UNTIL PARM-EOF-IND = 'Y'. DESBD800
00259 DESBD800
00260 IF PARM-REC-CNT = +0 DESBD800
00261 SET WRK-EXCLUDE-88 TO TRUE DESBD800
00262 MOVE +0 TO WRK-CONTROL-CNT DESBD800
00263 DISPLAY ' (NONE)' DESBD800
00264 ELSE DESBD800
00265 IF PARM-REC-CNT > +1 DESBD800
00266 MOVE 'NO MORE THAN ONE PARM RECORD ALLOWED' DESBD800
00267 TO ABEND-MSG DESBD800
00268 PERFORM S999-ABEND THRU S999-EXIT. DESBD800
00269 DESBD800
00270 DISPLAY ' '. DESBD800
00271 DESBD800
00272 CLOSE PARM-FILE. DESBD800
00273 I2000-EXIT. DESBD800
00274 EXIT. DESBD800
00275 DESBD800
00276 DESBD800
00277 DESBD800
00278 I2100-READ-PARM. DESBD800
00279 READ PARM-FILE DESBD800
00280 AT END DESBD800
00281 MOVE 'Y' TO PARM-EOF-IND DESBD800
00282 GO TO I2100-EXIT. DESBD800
00283 DESBD800
00284 DISPLAY '*** ' PARM-REC. DESBD800
00285 DESBD800
00286 ADD +1 TO PARM-REC-CNT. DESBD800
00287 DESBD800
00288 IF PARM-MOD-NAME NOT = 'DESBD800' DESBD800
00289 MOVE 'INVALID PARM MODULE NAME' TO ABEND-MSG DESBD800
00290 PERFORM S999-ABEND THRU S999-EXIT. DESBD800
00291 DESBD800
00292 MOVE PARM-CONTROL-TYPE TO WRK-CONTROL-TYPE. DESBD800
00293 DESBD800
00294 IF WRK-INCLUDE-88 OR WRK-EXCLUDE-88 DESBD800
00295 NEXT SENTENCE DESBD800
00296 ELSE DESBD800
00297 MOVE 'INVALID PARM CONTROL TYPE' TO ABEND-MSG DESBD800
00298 PERFORM S999-ABEND THRU S999-EXIT. DESBD800
00299 DESBD800
00300 MOVE +0 TO WRK-CONTROL-CNT. DESBD800
00301 DESBD800
00302 PERFORM I2110-RPT-TYPE-LOOP THRU I2110-EXIT DESBD800
00303 VARYING PARM-RPT-IDX FROM 1 BY 1 DESBD800
00304 UNTIL PARM-RPT-IDX > 15. DESBD800
00305 DESBD800
00306 IF (WRK-INCLUDE-88) AND (WRK-CONTROL-CNT = +0) DESBD800
00307 MOVE 'AT LEAST ONE PARM REC TYPE REQUIRED FOR INCLUDING' DESBD800
00308 TO ABEND-MSG DESBD800
00309 PERFORM S999-ABEND THRU S999-EXIT. DESBD800
00310 I2100-EXIT. DESBD800
00311 EXIT. DESBD800
00312 DESBD800
00313 DESBD800
00314 DESBD800
00315 I2110-RPT-TYPE-LOOP. DESBD800
00316 IF PARM-RPT-TYPE (PARM-RPT-IDX) = SPACES DESBD800
00317 NEXT SENTENCE DESBD800
00318 ELSE DESBD800
00319 ADD +1 TO WRK-CONTROL-CNT DESBD800
00320 MOVE PARM-RPT-TYPE (PARM-RPT-IDX) DESBD800
00321 TO WRK-CONTROL-REC-TYPE (WRK-CONTROL-CNT). DESBD800
00322 I2110-EXIT. DESBD800
00323 EXIT. DESBD800
00324 EJECT DESBD800
00325 I3000-ATLEAST-ONCE. DESBD800
00326 OPEN INPUT ATLEAST-ONCE-FILE. DESBD800
00327 DESBD800
00328 MOVE 'N' TO ATLEAST-ONCE-EOF-IND. DESBD800
00329 DESBD800
00330 MOVE +0 TO ATLEAST-ONCE-REC-CNT. DESBD800
00331 DESBD800
00332 DISPLAY ' '. DESBD800
00333 DESBD800
00334 DISPLAY '*** DESBD800 AT LEAST ONCE PARAMETERS'. DESBD800
00335 DESBD800
00336 PERFORM I3100-READ-ATLEAST-ONCE-FILE THRU I3100-EXIT DESBD800
00337 UNTIL ATLEAST-ONCE-EOF-IND = 'Y'. DESBD800
00338 DESBD800
00339 IF ATLEAST-ONCE-REC-CNT = +0 DESBD800
00340 MOVE +0 TO WRK-ATLEAST-ONCE-CNT DESBD800
00341 DISPLAY ' (NONE)' DESBD800
00342 ELSE DESBD800
00343 IF ATLEAST-ONCE-REC-CNT > +1 DESBD800
00344 MOVE 'NO MORE THAN ONE AT LEAST ONCE RECORD ALLOWED' DESBD800
00345 TO ABEND-MSG DESBD800
00346 PERFORM S999-ABEND THRU S999-EXIT. DESBD800
00347 DESBD800
00348 DISPLAY ' '. DESBD800
00349 DESBD800
00350 CLOSE ATLEAST-ONCE-FILE. DESBD800
00351 I3000-EXIT. DESBD800
00352 EXIT. DESBD800
00353 DESBD800
00354 DESBD800
00355 DESBD800
00356 I3100-READ-ATLEAST-ONCE-FILE. DESBD800
00357 READ ATLEAST-ONCE-FILE DESBD800
00358 AT END DESBD800
00359 MOVE 'Y' TO ATLEAST-ONCE-EOF-IND DESBD800
00360 GO TO I3100-EXIT. DESBD800
00361 DESBD800
00362 DISPLAY '*** ' ATLEAST-ONCE-REC. DESBD800
00363 DESBD800
00364 ADD +1 TO ATLEAST-ONCE-REC-CNT. DESBD800
00365 DESBD800
00366 IF ATLEAST-ONCE-MOD-NAME NOT = 'DESBD800' DESBD800
00367 MOVE 'INVALID AT LEAST ONCE MODULE NAME' TO ABEND-MSG DESBD800
00368 PERFORM S999-ABEND THRU S999-EXIT. DESBD800
00369 DESBD800
00370 MOVE +0 TO WRK-ATLEAST-ONCE-CNT. DESBD800
00371 DESBD800
00372 PERFORM I3110-RPT-TYPE-LOOP DESBD800
00373 THRU I3110-EXIT DESBD800
00374 VARYING ATLEAST-ONCE-RPT-IDX FROM 1 BY 1 DESBD800
00375 UNTIL ATLEAST-ONCE-RPT-IDX > 15. DESBD800
00376 I3100-EXIT. DESBD800
00377 EXIT. DESBD800
00378 DESBD800
00379 DESBD800
00380 DESBD800
00381 I3110-RPT-TYPE-LOOP. DESBD800
00382 IF ATLEAST-ONCE-RPT-TYPE (ATLEAST-ONCE-RPT-IDX) NOT = SPACES DESBD800
00383 ADD +1 TO WRK-ATLEAST-ONCE-CNT DESBD800
00384 MOVE ATLEAST-ONCE-RPT-TYPE (ATLEAST-ONCE-RPT-IDX) DESBD800
00385 TO WRK-ATLEAST-ONCE-REC-TYPE (WRK-ATLEAST-ONCE-CNT) DESBD800
00386 MOVE 'N' DESBD800
00387 TO WRK-ATLEAST-ONCE-CALLED-IND (WRK-ATLEAST-ONCE-CNT). DESBD800
00388 I3110-EXIT. DESBD800
00389 EXIT. DESBD800
00390 EJECT DESBD800
00391 I4000-INIT-LRCM. DESBD800
00392 MOVE SPACES TO LRCM-LINK-AREA. DESBD800
00393 DESBD800
00394 PERFORM I4010-INIT-L980 THRU I4010-EXIT DESBD800
00395 VARYING NDX-1 FROM 1 BY 1 DESBD800
00396 UNTIL NDX-1 > 999. DESBD800
00397 DESBD800
00398 SET L001-FROM-FED-6 TO TRUE. DESBD800
00399 DESBD800
00400 ACCEPT L001-FED-6-DATE-9 FROM DATE. DESBD800
00401 DESBD800
00402 PERFORM S001-CONVERT-DATE THRU S001-EXIT. DESBD800
00403 DESBD800
00404 MOVE L001-SLASH-DATE TO LRCM-SYS-DATE. DESBD800
00405 DESBD800
00406 MOVE L001-SLASH-8-DATE TO LRCM-SYS-8-DATE. DESBD800
00407 DESBD800
00408 DESBD800
00409 SET L119-REQ-MIXED-88 TO TRUE. DESBD800
00410 DESBD800
00411 SET L119-REQ-NO-UNIT-88 TO TRUE. DESBD800
00412 DESBD800
00413 PERFORM S119-AGENCY-FACTS THRU S119-EXIT. DESBD800
00414 DESBD800
00415 MOVE L119-UC-OFFICE-NAME TO LRCM-DEFAULT-NAME. DESBD800
00416 DESBD800
00417 MOVE L119-UC-OFFICE-VOICE TO LRCM-DEFAULT-VOICE. DESBD800
00418 DESBD800
00419 DESBD800
00420 ACCEPT SYS-TIME FROM TIME. DESBD800
00421 DESBD800
00422 MOVE SYS-H TO DISP-H. DESBD800
00423 DESBD800
00424 MOVE SYS-M TO DISP-M. DESBD800
00425 DESBD800
00426 MOVE SYS-S TO DISP-S. DESBD800
00427 DESBD800
00428 MOVE DISP-TIME TO LRCM-SYS-TIME. DESBD800
00429 DESBD800
00430 MOVE +19924 TO LRCM-PICKUP-YRQ. DESBD800
00431 DESBD800
00432 DESBD800
00433 MOVE ' DISTRICT OF COLUMBIA ' DESBD800
00434 TO LRCM-AGY-NAME-LINE1. DESBD800
00435 DESBD800
00436 MOVE ' TAX DIVISION ' DESBD800
00437 TO LRCM-AGY-NAME-LINE2. DESBD800
00438 I4000-EXIT. DESBD800
00439 EXIT. DESBD800
00440 I4010-INIT-L980. DESBD800
00441 MOVE ZERO TO L980-REC-CNT (NDX-1). DESBD800
00442 I4010-EXIT. DESBD800
00443 EXIT. DESBD800
00444 EJECT DESBD800
00445 P0000-PROCESS. DESBD800
00446 MOVE +0 TO INCLUDE-REC-CNT DESBD800
00447 EXCLUDE-REC-CNT. DESBD800
00448 DESBD800
00449 DISPLAY ' '. DESBD800
00450 DESBD800
00451 DISPLAY '*** DESBD800 STATISTICS'. DESBD800
00452 DESBD800
00453 SET L941-READ-NEXT-88 TO TRUE. DESBD800
00454 DESBD800
00455 PERFORM S941-RPT-I THRU S941-EXIT. DESBD800
00456 DESBD800
00457 IF L941-NO-REC-88 DESBD800
00458 GO TO P0000-EXIT. DESBD800
00459 DESBD800
00460 DESBD800
00461 PERFORM P1000-PROCESS-RETURN THRU P1000-EXIT DESBD800
00462 UNTIL L941-NO-REC-88. DESBD800
00463 DESBD800
00464 DESBD800
00465 IF WRK-SELECT-IND = 'I' DESBD800
00466 PERFORM P1500-TERM-REC-TYPE THRU P1500-EXIT. DESBD800
00467 P0000-EXIT. DESBD800
00468 EXIT. DESBD800
00469 DESBD800
00470 DESBD800
00471 DESBD800
00472 P1000-PROCESS-RETURN. DESBD800
00473 IF RSK3-REC-TYPE NOT = HOLD-REC-TYPE DESBD800
00474 IF HOLD-REC-TYPE = SPACES DESBD800
00475 PERFORM P1100-INIT-REC-TYPE THRU P1100-EXIT DESBD800
00476 ELSE DESBD800
00477 IF WRK-SELECT-IND = 'I' DESBD800
00478 PERFORM P1500-TERM-REC-TYPE THRU P1500-EXIT DESBD800
00479 ELSE DESBD800
00480 CONTINUE DESBD800
00481 END-IF DESBD800
00482 PERFORM P1100-INIT-REC-TYPE THRU P1100-EXIT. DESBD800
00483 DESBD800
00484 IF WRK-SELECT-IND = 'I' DESBD800
00485 ADD +1 TO INCLUDE-REC-CNT DESBD800
00486 HOLD-REC-CNT DESBD800
00487 PERFORM S1000-CALL-R-MOD THRU S1000-EXIT DESBD800
00488 ELSE DESBD800
00489 ADD +1 TO EXCLUDE-REC-CNT. DESBD800
00490 DESBD800
00491 SET L941-READ-NEXT-88 TO TRUE. DESBD800
00492 DESBD800
00493 PERFORM S941-RPT-I THRU S941-EXIT. DESBD800
00494 P1000-EXIT. DESBD800
00495 EXIT. DESBD800
00496 EJECT DESBD800
00497 P1100-INIT-REC-TYPE. DESBD800
00498 MOVE RSK3-REC-TYPE TO HOLD-REC-TYPE. DESBD800
00499 DESBD800
00500 IF WRK-EXCLUDE-88 DESBD800
00501 IF WRK-CONTROL-CNT = +0 DESBD800
00502 MOVE 'I' TO WRK-SELECT-IND DESBD800
00503 ELSE DESBD800
00504 MOVE 'I' TO WRK-SELECT-IND DESBD800
00505 PERFORM P1110-EXCLUDE THRU P1110-EXIT DESBD800
00506 VARYING WRK-CONTROL-REC-IDX FROM 1 BY 1 DESBD800
00507 UNTIL (WRK-CONTROL-REC-IDX > WRK-CONTROL-CNT) DESBD800
00508 OR DESBD800
00509 (WRK-SELECT-IND = 'E') DESBD800
00510 ELSE DESBD800
00511 MOVE 'E' TO WRK-SELECT-IND DESBD800
00512 PERFORM P1120-INCLUDE THRU P1120-EXIT DESBD800
00513 VARYING WRK-CONTROL-REC-IDX FROM 1 BY 1 DESBD800
00514 UNTIL (WRK-CONTROL-REC-IDX > WRK-CONTROL-CNT) DESBD800
00515 OR DESBD800
00516 (WRK-SELECT-IND = 'I'). DESBD800
00517 DESBD800
00518 IF WRK-SELECT-IND = 'E' DESBD800
00519 GO TO P1100-EXIT. DESBD800
00520 DESBD800
00521 IF WRK-ATLEAST-ONCE-CNT = +0 DESBD800
00522 NEXT SENTENCE DESBD800
00523 ELSE DESBD800
00524 PERFORM P1130-UPDT-ATLEAST-ONCE-CALLED THRU P1130-EXIT DESBD800
00525 VARYING WRK-ATLEAST-ONCE-IDX FROM 1 BY 1 DESBD800
00526 UNTIL (WRK-ATLEAST-ONCE-IDX > WRK-ATLEAST-ONCE-CNT). DESBD800
00527 DESBD800
00528 MOVE HOLD-REC-TYPE TO PRINT-TYPE. DESBD800
00529 DESBD800
00530 MOVE +0 TO HOLD-REC-CNT. DESBD800
00531 DESBD800
00532 MOVE 'N' TO LRCM-EOR-IND. DESBD800
00533 P1100-EXIT. DESBD800
00534 EXIT. DESBD800
00535 DESBD800
00536 DESBD800
00537 DESBD800
00538 P1110-EXCLUDE. DESBD800
00539 IF RSK3-REC-TYPE = WRK-CONTROL-REC-TYPE (WRK-CONTROL-REC-IDX)DESBD800
00540 MOVE 'E' TO WRK-SELECT-IND. DESBD800
00541 P1110-EXIT. DESBD800
00542 EXIT. DESBD800
00543 DESBD800
00544 DESBD800
00545 DESBD800
00546 P1120-INCLUDE. DESBD800
00547 IF RSK3-REC-TYPE = WRK-CONTROL-REC-TYPE (WRK-CONTROL-REC-IDX)DESBD800
00548 MOVE 'I' TO WRK-SELECT-IND. DESBD800
00549 P1120-EXIT. DESBD800
00550 EXIT. DESBD800
00551 DESBD800
00552 DESBD800
00553 DESBD800
00554 P1130-UPDT-ATLEAST-ONCE-CALLED. DESBD800
00555 IF RSK3-REC-TYPE DESBD800
00556 = WRK-ATLEAST-ONCE-REC-TYPE (WRK-ATLEAST-ONCE-IDX) DESBD800
00557 MOVE 'Y' DESBD800
00558 TO WRK-ATLEAST-ONCE-CALLED-IND (WRK-ATLEAST-ONCE-IDX) DESBD800
00559 SET WRK-ATLEAST-ONCE-IDX TO WRK-ATLEAST-ONCE-CNT. DESBD800
00560 P1130-EXIT. DESBD800
00561 EXIT. DESBD800
00562 EJECT DESBD800
00563 P1500-TERM-REC-TYPE. DESBD800
00564 MOVE 'Y' TO LRCM-EOR-IND. DESBD800
00565 DESBD800
00566 PERFORM S1000-CALL-R-MOD THRU S1000-EXIT. DESBD800
00567 DESBD800
00568 DISPLAY HOLD-REC-CNT DESBD800
00569 ' RECORD TYPE ' DESBD800
00570 HOLD-REC-TYPE DESBD800
00571 ' RECORDS PROCESSED'. DESBD800
00572 DESBD800
00573 MOVE HOLD-REC-CNT TO L980-REC-CNT (HOLD-REC-TYPE-9). DESBD800
00574 DESBD800
00575 CANCEL PRINT-MODULE. DESBD800
00576 P1500-EXIT. DESBD800
00577 EXIT. DESBD800
00578 EJECT DESBD800
00579 T0000-TERMINATE. DESBD800
00580 DISPLAY ' '. DESBD800
00581 DESBD800
00582 DISPLAY '*** DESBD800 TERMINATION STATISTICS'. DESBD800
00583 DESBD800
00584 DISPLAY INCLUDE-REC-CNT DESBD800
00585 ' RECORDS INCLUDED'. DESBD800
00586 DESBD800
00587 DISPLAY EXCLUDE-REC-CNT DESBD800
00588 ' RECORDS EXCLUDED'. DESBD800
00589 DESBD800
00590 DESBD800
00591 IF WRK-ATLEAST-ONCE-CNT = +0 DESBD800
00592 NEXT SENTENCE DESBD800
00593 ELSE DESBD800
00594 PERFORM T1000-CHK-ATLEAST-ONCE-CALLED THRU T1000-EXIT DESBD800
00595 VARYING WRK-ATLEAST-ONCE-IDX FROM 1 BY 1 DESBD800
00596 UNTIL (WRK-ATLEAST-ONCE-IDX > WRK-ATLEAST-ONCE-CNT). DESBD800
00597 DESBD800
00598 DESBD800
00599 SET L931-CLOSE-88 TO TRUE. DESBD800
00600 DESBD800
00601 PERFORM S931-REF-IO THRU S931-EXIT. DESBD800
00602 DESBD800
00603 SET L941-CLOSE-88 TO TRUE. DESBD800
00604 DESBD800
00605 PERFORM S941-RPT-I THRU S941-EXIT. DESBD800
00606 DESBD800
00607 PERFORM S980-CTRL-RPT-O THRU S980-EXIT. DESBD800
00608 T0000-EXIT. DESBD800
00609 EXIT. DESBD800
00610 DESBD800
00611 DESBD800
00612 T1000-CHK-ATLEAST-ONCE-CALLED. DESBD800
00613 IF WRK-ATLEAST-ONCE-CALLED-88 (WRK-ATLEAST-ONCE-IDX) DESBD800
00614 NEXT SENTENCE DESBD800
00615 ELSE DESBD800
00616 MOVE WRK-ATLEAST-ONCE-REC-TYPE (WRK-ATLEAST-ONCE-IDX) DESBD800
00617 TO PRINT-TYPE DESBD800
00618 MOVE 'Y' TO LRCM-EOR-IND DESBD800
00619 PERFORM S1000-CALL-R-MOD THRU S1000-EXIT DESBD800
00620 CANCEL PRINT-MODULE. DESBD800
00621 T1000-EXIT. DESBD800
00622 EXIT. DESBD800
00623 EJECT DESBD800
00624 S1000-CALL-R-MOD. DESBD800
00625 CALL PRINT-MODULE USING LRCM-LINK-AREA DESBD800
00626 RSK3-REC. DESBD800
00627 S1000-EXIT. DESBD800
00628 EXIT. DESBD800
00629 EJECT DESBD800
00630 S001-CONVERT-DATE. DESBD800
00631 CALL 'DTSBU001' USING L001-LINK-AREA. DESBD800
00632 S001-EXIT. DESBD800
00633 EXIT. DESBD800
00634 DESBD800
00635 DESBD800
00636 S119-AGENCY-FACTS. DESBD800
00637 CALL 'DTSBU119' USING L119-LINK-AREA. DESBD800
00638 S119-EXIT. DESBD800
00639 EXIT. DESBD800
00640 DESBD800
00641 DESBD800
00642 S931-REF-IO. DESBD800
00643 CALL 'DTSBU931' USING L931-LINK-AREA DESBD800
00644 FSKL-REC. DESBD800
00645 S931-EXIT. DESBD800
00646 EXIT. DESBD800
00647 DESBD800
00648 DESBD800
00649 S941-RPT-I. DESBD800
00650 CALL 'DTSBU941' USING L941-LINK-AREA DESBD800
00651 RSK3-REC. DESBD800
00652 S941-EXIT. DESBD800
00653 EXIT. DESBD800
00654 DESBD800
00655 DESBD800
00656 S980-CTRL-RPT-O. DESBD800
00657 CALL 'DESBR980' USING LRCM-LINK-AREA, DESBD800
00658 L980-LINK-AREA. DESBD800
00659 S980-EXIT. DESBD800
00660 EXIT. DESBD800
00661 DESBD800
00662 DESBD800
00663 S999-ABEND. DESBD800
00664 DISPLAY '*** DESBD800 ABENDING - ' ABEND-MSG. DESBD800
00665 DESBD800
00666 CALL 'DTSBU999' USING WRK-ABEND-CD. DESBD800
00667 S999-EXIT. DESBD800
00668 EXIT. DESBD800