1033 lines
82 KiB
COBOL
1033 lines
82 KiB
COBOL
00001 IDENTIFICATION DIVISION. 08/02/02
|
|
00002 PROGRAM-ID. DTSBD401. DTSBD401
|
|
00003 AUTHOR. TRICOASTAL CONSULTING LTD. LV001
|
|
00004 DATE-WRITTEN. DECEMBER 1991. DTSBD401
|
|
00005 DATE-COMPILED. DTSBD401
|
|
00006 SKIP3 DTSBD401
|
|
00007 ***** DTSBD401
|
|
00008 * DTSBD401
|
|
00009 * FUNCTION: PERIODIC REPORT EXTRACT. DTSBD401
|
|
00010 * *** ONLINE JOB REQUEST VERSION *** DTSBD401
|
|
00011 * DTSBD401
|
|
00012 * DTSBD401
|
|
00013 * MODIFICATION LOG: DTSBD401
|
|
00014 * DTSBD401
|
|
00015 * 12/31/91 INITIAL DEVELOPMENT. DTSBD401
|
|
00016 * WORK ORDER: PROGRAMMER: TCL DTSBD401
|
|
00017 * DTSBD401
|
|
00018 * 10/05/1998 REVIEWED AND MODIFIED FOR DC. DTSBD401
|
|
00019 * REFERENCE: DC DEVELOPMENT PROGRAMMER: EHH DTSBD401
|
|
00020 * DTSBD401
|
|
00021 * 05/24/1999 INITIALIZE LECM-PICKUP-DIR. DTSBD401
|
|
00022 * REFERENCE: PICKUP DIR PROGRAMMER: EHH DTSBD401
|
|
00023 * DTSBD401
|
|
00024 * 12/07/2001 MODIFIED FOR ONLINE JOB REQUESTS: READ PARMS DTSBD401
|
|
00025 * FROM EXTPARM FILE. DTSBD401
|
|
00026 * REFERENCE: ONLINE JOB REQUEST PROGRAMMER: GD DTSBD401
|
|
00027 * DTSBD401
|
|
00028 * MM/DD/YYYY XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSBD401
|
|
00029 * XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSBD401
|
|
00030 * REFERENCE: XXXXXXXXXXXXXXX PROGRAMMER: XXX DTSBD401
|
|
00031 * DTSBD401
|
|
00032 * DTSBD401
|
|
00033 * DESCRIPTION: DTSBD401
|
|
00034 * DTSBD401
|
|
00035 * INITIATION. DTSBD401
|
|
00036 * DTSBD401
|
|
00037 * PROCESS PARAMETERS INPUT VIA LINKAGE (IN PARM-AREA). DTSBD401
|
|
00038 * DTSBD401
|
|
00039 * DTSBD401
|
|
00040 * READ THE PARM-FILE UNTIL PARM-EOF. ONE TO FIFTY PARM DTSBD401
|
|
00041 * RECORDS ALLOWED. DTSBD401
|
|
00042 * DTSBD401
|
|
00043 * DISPLAY EACH PARM RECORD. DTSBD401
|
|
00044 * DTSBD401
|
|
00045 * EACH PARM RECORD INDICATES AN EXTRACT MODULE TO BE CALLED DTSBD401
|
|
00046 * DURING THIS PARTICULAR RUN, AND CONTAINS ANY EXTRACT DTSBD401
|
|
00047 * MODULE SPECIFIC PARAMETERS. DTSBD401
|
|
00048 * DTSBD401
|
|
00049 * TABLE PARM RECORDS 1 THRU N IN WRK-EXTRACT-AREA. DTSBD401
|
|
00050 * DTSBD401
|
|
00051 * THE SAME WRK-EXTRACT-ID VALUE IN MULTIPLE OCCURRENCES OF DTSBD401
|
|
00052 * WRK-EXTRACT-AREA IS NOT ALLOWED. PARM RECORDS ARRIVE DTSBD401
|
|
00053 * SORTED IN ASCENDING ORDER BY PROGRAM (WRK-EXTRACT-ID) AND DTSBD401
|
|
00054 * IN DECENDING ORDER BY TIME ENTERED (MOST RECENT FIRST). DTSBD401
|
|
00055 * IF THERE ARE DUPLICATES, THE LAST ONE ADDED TO THE OLA DTSBD401
|
|
00056 * FILE WILL BE ADDED TO THE TABLE, AND ANY EARLIER REQUESTS DTSBD401
|
|
00057 * FOR THE SAME PROGRAM WILL BE DISCARDED. DTSBD401
|
|
00058 * DTSBD401
|
|
00059 * MAKE AN 'INITIALIZATION' CALL TO EACH OF THE EXTRACT DTSBD401
|
|
00060 * MODULES TABLED IN WRK-EXTRACT-AREA. SAVE THE HIGHEST DTSBD401
|
|
00061 * VALUE RETURNED IN LECM-OPEN-MST-IND AND SAVE THE DTSBD401
|
|
00062 * HIGHEST VALUE RETURNED IN LECM-OPEN-REF-IND. DTSBD401
|
|
00063 * DTSBD401
|
|
00064 * OPEN THE MASTER FILE, ALTERNATE INDEX FILE AND DTSBD401
|
|
00065 * REFERENCE FILE WITH THE OPEN COMMAND (READ ONLY DTSBD401
|
|
00066 * OR UPDATE) AS INDICATED BY THE INFORMATION RETURNED DTSBD401
|
|
00067 * BY THE "INITIALIZATION" CALLS. DTSBD401
|
|
00068 * DTSBD401
|
|
00069 * DTSBD401
|
|
00070 * READ THE MHDR RECORD. DTSBD401
|
|
00071 * DTSBD401
|
|
00072 * IF L910-NO-REC-88 DTSBD401
|
|
00073 * ABEND THE MODULE. DTSBD401
|
|
00074 * DTSBD401
|
|
00075 * INITIALIZE THE LECM FIELDS. DTSBD401
|
|
00076 * DTSBD401
|
|
00077 * SET LECM-PROCESS-88 TO TRUE. DTSBD401
|
|
00078 * DTSBD401
|
|
00079 * SET L910 TO "READ NEXT" A MPRF RECORD. DTSBD401
|
|
00080 * DTSBD401
|
|
00081 * MOVE +0 TO WRK-MPRF-CNT. DTSBD401
|
|
00082 * DTSBD401
|
|
00083 * DTSBD401
|
|
00084 * DTSBD401
|
|
00085 * PROCESSING. DTSBD401
|
|
00086 * DTSBD401
|
|
00087 * PERFORM P1000-READ-NEXT DTSBD401
|
|
00088 * UNTIL L910-NO-REC-88. DTSBD401
|
|
00089 * DTSBD401
|
|
00090 * P1000-READ-NEXT. DTSBD401
|
|
00091 * READ THE NEXT MPRF RECORD. DTSBD401
|
|
00092 * IF L910-OK-88 DTSBD401
|
|
00093 * ADD +1 TO WRK-MPRF-CNT DTSBD401
|
|
00094 * PERFORM S1000-CALL-EXTRACT DTSBD401
|
|
00095 * VARYING WRK-EXT-IDX FROM 1 BY 1 DTSBD401
|
|
00096 * UNTIL WRK-EXT-IDX > WRK-EXTRACT-CNT. DTSBD401
|
|
00097 * DTSBD401
|
|
00098 * S1000-CALL-EXTRACT. DTSBD401
|
|
00099 * MOVE WRK-EXTRACT-PARMS (WRK-EXT-IDX) DTSBD401
|
|
00100 * TO LECM-EXTRACT-PARMS. DTSBD401
|
|
00101 * DTSBD401
|
|
00102 * CALL 'DTSBE***' USING LECM-LINK-AREA DTSBD401
|
|
00103 * MPRF-REC. DTSBD401
|
|
00104 * DTSBD401
|
|
00105 * IF NO EXTRACT MODULE CORRESPONDING TO WRK-EXTRACT-SUB DTSBD401
|
|
00106 * EXISTS, THEN THE STEP ABENDS (MODULE NOT FOUND). DTSBD401
|
|
00107 * DTSBD401
|
|
00108 * DTSBD401
|
|
00109 * DTSBD401
|
|
00110 * TERMINATION. DTSBD401
|
|
00111 * DTSBD401
|
|
00112 * SET LECM-TERMINATE-88 TO TRUE. DTSBD401
|
|
00113 * DTSBD401
|
|
00114 * PERFORM S1000-CALL-EXTRACT DTSBD401
|
|
00115 * VARYING WRK-EXT-IDX FROM 1 BY 1 DTSBD401
|
|
00116 * UNTIL WRK-EXT-IDX > WRK-EXTRACT-CNT. DTSBD401
|
|
00117 * DTSBD401
|
|
00118 * DISPLAY TERMINATION STATISTICS (VARIOUS LECM FIELDS AND DTSBD401
|
|
00119 * WRK-MPRF-CNT. DTSBD401
|
|
00120 * DTSBD401
|
|
00121 * CLOSE MASTER FILE. DTSBD401
|
|
00122 * CLOSE ALTERNATE INDEX FILE. DTSBD401
|
|
00123 * CLOSE REFERENCE FILE. DTSBD401
|
|
00124 * CLOSE REPORT RECORD FILE. DTSBD401
|
|
00125 * DTSBD401
|
|
00126 * SET RETURN-CODE TO 0. DTSBD401
|
|
00127 * DTSBD401
|
|
00128 ***** DTSBD401
|
|
00129 SKIP3 DTSBD401
|
|
00130 ENVIRONMENT DIVISION. DTSBD401
|
|
00131 SKIP2 DTSBD401
|
|
00132 INPUT-OUTPUT SECTION. DTSBD401
|
|
00133 DTSBD401
|
|
00134 FILE-CONTROL. DTSBD401
|
|
00135 SELECT PARM-FILE ASSIGN TO EXTPARMS DTSBD401
|
|
00136 FILE STATUS IS EXTPARM-STATUS. DTSBD401
|
|
00137 EJECT DTSBD401
|
|
00138 DATA DIVISION. DTSBD401
|
|
00139 SKIP3 DTSBD401
|
|
00140 FILE SECTION. DTSBD401
|
|
00141 SKIP2 DTSBD401
|
|
00142 FD PARM-FILE DTSBD401
|
|
00143 RECORDING MODE IS F DTSBD401
|
|
00144 BLOCK CONTAINS 0 RECORDS. DTSBD401
|
|
00145 DTSBD401
|
|
00146 01 PARM-REC. DTSBD401
|
|
00147 10 PREC-EXTRACT-ID PIC X(03). DTSBD401
|
|
00148 10 FILLER PIC X(01). DTSBD401
|
|
00149 10 PREC-EXTRACT-PARMS PIC X(68). DTSBD401
|
|
00150 10 FILLER PIC X(08). DTSBD401
|
|
00151 EJECT DTSBD401
|
|
00152 WORKING-STORAGE SECTION. DTSBD401
|
|
001525 77 PAN-VALET PICTURE X(24) VALUE '001DTSBD401 08/02/02'. DTSBD401
|
|
00153 SKIP3 DTSBD401
|
|
00154 01 WRK-AREA. DTSBD401
|
|
00155 05 WRK-ABEND-CD PIC S9(04) COMP VALUE +401.DTSBD401
|
|
00156 DTSBD401
|
|
00157 05 WRK-MOD-NAME PIC X(08) VALUE 'DTSBD401'.DTSBD401
|
|
00158 DTSBD401
|
|
00159 05 EXTPARM-STATUS PIC X(02). DTSBD401
|
|
00160 88 EXTPARM-FILE-OK-88 VALUE '00'. DTSBD401
|
|
00161 88 EXTPARM-EOF-88 VALUE '10'. DTSBD401
|
|
00162 DTSBD401
|
|
00163 05 PARMFILE-IND PIC X(01) VALUE '0'. DTSBD401
|
|
00164 88 PARMFILE-OK-88 VALUE '0'. DTSBD401
|
|
00165 88 PARMFILE-EMPTY-88 VALUE '1'. DTSBD401
|
|
00166 DTSBD401
|
|
00167 05 WRK-DUPLICATE-IND PIC X(01). DTSBD401
|
|
00168 88 WRK-DUPLICATE-YES-88 VALUE 'Y'. DTSBD401
|
|
00169 88 WRK-DUPLICATE-NO-88 VALUE 'N'. DTSBD401
|
|
00170 DTSBD401
|
|
00171 05 WRK-MPRF-CNT PIC S9(07) COMP-3. DTSBD401
|
|
00172 DTSBD401
|
|
00173 05 WRK-UPDATED-CNT PIC S9(07) COMP-3. DTSBD401
|
|
00174 DTSBD401
|
|
00175 05 PARM-REC-CNT PIC S9(07) COMP-3. DTSBD401
|
|
00176 DTSBD401
|
|
00177 05 HOLD-EXTRACT-SUB PIC S9(04) COMP. DTSBD401
|
|
00178 DTSBD401
|
|
00179 05 WRK-SUB PIC S9(04) COMP. DTSBD401
|
|
00180 DTSBD401
|
|
00181 05 PARM-EOF-IND PIC X(01). DTSBD401
|
|
00182 DTSBD401
|
|
00183 05 WRK-RUN-TYPE PIC X(02). DTSBD401
|
|
00184 DTSBD401
|
|
00185 05 WRK-PRE-BACKUP-IND PIC X(01). DTSBD401
|
|
00186 DTSBD401
|
|
00187 05 WRK-ONLY-CHECK-PARM-IND PIC X(01). DTSBD401
|
|
00188 DTSBD401
|
|
00189 05 WRK-TRACE-IND PIC X(01). DTSBD401
|
|
00190 DTSBD401
|
|
00191 05 WRK-MST-OPEN-IND PIC X(01). DTSBD401
|
|
00192 DTSBD401
|
|
00193 05 WRK-REF-OPEN-IND PIC X(01). DTSBD401
|
|
00194 DTSBD401
|
|
00195 *****05 WRK-BTC-IND PIC X(01). DTSBD401
|
|
00196 DTSBD401
|
|
00197 05 WRK-EMP-UPDATED-IND PIC X(01). DTSBD401
|
|
00198 88 WRK-EMP-UPDATED-NO-88 VALUE 'N'. DTSBD401
|
|
00199 88 WRK-EMP-UPDATED-YES-88 VALUE 'Y'. DTSBD401
|
|
00200 SKIP3 DTSBD401
|
|
00201 05 WRK-EXTRACT-CNT PIC S9(04) COMP. DTSBD401
|
|
00202 DTSBD401
|
|
00203 05 WRK-EXTRACT-AREA OCCURS 50 TIMES DTSBD401
|
|
00204 INDEXED BY WRK-EXT-IDX. DTSBD401
|
|
00205 10 WRK-EXTRACT-ID PIC X(03). DTSBD401
|
|
00206 10 WRK-EXTRACT-PARMS PIC X(68). DTSBD401
|
|
00207 SKIP3 DTSBD401
|
|
00208 05 WRK-START-ABSTIME PIC S9(15) COMP-3. DTSBD401
|
|
00209 DTSBD401
|
|
00210 05 WRK-STEP-DURATION-X PIC X(09). DTSBD401
|
|
00211 05 WRK-STEP-DURATION REDEFINES WRK-STEP-DURATION-X DTSBD401
|
|
00212 PIC ZZ,ZZ9.99. DTSBD401
|
|
00213 SKIP3 DTSBD401
|
|
00214 05 EXTRACT-MOD-NAME. DTSBD401
|
|
00215 10 FILLER PIC X(05) VALUE 'DTSBE'. DTSBD401
|
|
00216 10 EXTRACT-MOD-ID PIC X(03). DTSBD401
|
|
00217 EJECT DTSBD401
|
|
00218 01 MSG-TABLE. DTSBD401
|
|
00219 05 MSG1-UPDATE-LOCKED-EMP. DTSBD401
|
|
00220 10 MSG1-ID PIC X(03) VALUE '991'. DTSBD401
|
|
00221 10 MSG1-TEXT. DTSBD401
|
|
00222 15 FILLER PIC X(30) DTSBD401
|
|
00223 VALUE 'DESPITE BEING LOCKED AGAINST U'. DTSBD401
|
|
00224 15 FILLER PIC X(30) DTSBD401
|
|
00225 VALUE 'PDATE, A PERIODIC EXTRACT PROC'. DTSBD401
|
|
00226 15 FILLER PIC X(05) DTSBD401
|
|
00227 VALUE 'ESS ('. DTSBD401
|
|
00228 15 MSG1-EXTRACT-ID PIC X(03). DTSBD401
|
|
00229 15 FILLER PIC X(31) DTSBD401
|
|
00230 VALUE ') UPDATED THE EMPLOYERS RECORDS'. DTSBD401
|
|
00231 05 MSG2-DUPLICATE-REQUEST. DTSBD401
|
|
00232 10 MSG2-ID PIC X(03) VALUE '992'. DTSBD401
|
|
00233 10 MSG2-TEXT. DTSBD401
|
|
00234 15 FILLER PIC X(30) DTSBD401
|
|
00235 VALUE 'DUPLICATE REQUEST FOR PROGRAM '. DTSBD401
|
|
00236 15 MSG2-EXTRACT-ID PIC X(03). DTSBD401
|
|
00237 15 FILLER PIC X(15) DTSBD401
|
|
00238 VALUE '. REQUESTED BY '. DTSBD401
|
|
00239 15 MSG2-OP-ID PIC X(08). DTSBD401
|
|
00240 15 FILLER PIC X(15) DTSBD401
|
|
00241 VALUE '. PARMS: '. DTSBD401
|
|
00242 15 MSG2-PARMS PIC X(34). DTSBD401
|
|
00243 DTSBD401
|
|
00244 01 LECM-LINK-AREA. DTSBD401
|
|
00245 ++INCLUDE DTSILECM DTSBD401
|
|
00246 EJECT DTSBD401
|
|
00247 01 L910-LINK-AREA. DTSBD401
|
|
00248 ++INCLUDE DTSIL910 DTSBD401
|
|
00249 EJECT DTSBD401
|
|
00250 01 MSKL-REC. DTSBD401
|
|
00251 ++INCLUDE DTSIMSKL DTSBD401
|
|
00252 EJECT DTSBD401
|
|
00253 01 MHDR-REC REDEFINES MSKL-REC. DTSBD401
|
|
00254 ++INCLUDE DTSIMHDR DTSBD401
|
|
00255 EJECT DTSBD401
|
|
00256 01 MPRF-REC REDEFINES MSKL-REC. DTSBD401
|
|
00257 ++INCLUDE DTSIMPRF DTSBD401
|
|
00258 EJECT DTSBD401
|
|
00259 01 L921-LINK-AREA. DTSBD401
|
|
00260 ++INCLUDE DTSIL921 DTSBD401
|
|
00261 EJECT DTSBD401
|
|
00262 01 ISKL-REC. DTSBD401
|
|
00263 ++INCLUDE DTSIISKL DTSBD401
|
|
00264 EJECT DTSBD401
|
|
00265 01 L927-LINK-AREA. DTSBD401
|
|
00266 ++INCLUDE DTSIL927 DTSBD401
|
|
00267 EJECT DTSBD401
|
|
00268 01 RSKL-REC. DTSBD401
|
|
00269 ++INCLUDE DTSIRSK1 DTSBD401
|
|
00270 SKIP3 DTSBD401
|
|
00271 01 R907-REC. DTSBD401
|
|
00272 ++INCLUDE DTSIR907 DTSBD401
|
|
00273 EJECT DTSBD401
|
|
00274 01 L931-LINK-AREA. DTSBD401
|
|
00275 ++INCLUDE DTSIL931 DTSBD401
|
|
00276 EJECT DTSBD401
|
|
00277 01 FSKL-REC. DTSBD401
|
|
00278 ++INCLUDE DTSIFSKL DTSBD401
|
|
00279 EJECT DTSBD401
|
|
00280 01 L005-LINK-AREA. DTSBD401
|
|
00281 ++INCLUDE DTSIL005 DTSBD401
|
|
00282 EJECT DTSBD401
|
|
00283 LINKAGE SECTION. DTSBD401
|
|
00284 SKIP3 DTSBD401
|
|
00285 01 PARM-AREA. DTSBD401
|
|
00286 05 PARM-LENGTH PIC S9(04) COMP. DTSBD401
|
|
00287 05 PARM-DATA. DTSBD401
|
|
00288 10 PARM-RUN-TYPE PIC X(02). DTSBD401
|
|
00289 10 FILLER PIC X(01). DTSBD401
|
|
00290 10 PARM-PRE-BACKUP-IND PIC X(01). DTSBD401
|
|
00291 10 FILLER PIC X(01). DTSBD401
|
|
00292 10 PARM-ONLY-CHECK-PARM-IND PIC X(01). DTSBD401
|
|
00293 10 FILLER PIC X(01). DTSBD401
|
|
00294 10 PARM-TRACE-IND PIC X(01). DTSBD401
|
|
00295 EJECT DTSBD401
|
|
00296 PROCEDURE DIVISION USING PARM-AREA. DTSBD401
|
|
00297 SKIP2 DTSBD401
|
|
00298 DTSBD400-MAINLINE. DTSBD401
|
|
00299 PERFORM I0000-INITIATE THRU I0000-EXIT. DTSBD401
|
|
00300 IF PARMFILE-EMPTY-88 DTSBD401
|
|
00301 GO TO DTSBD400-MAINLINE-EXIT. DTSBD401
|
|
00302 DTSBD401
|
|
00303 IF WRK-ONLY-CHECK-PARM-IND = 'Y' DTSBD401
|
|
00304 NEXT SENTENCE DTSBD401
|
|
00305 ELSE DTSBD401
|
|
00306 PERFORM P0000-PROCESS THRU P0000-EXIT. DTSBD401
|
|
00307 DTSBD401
|
|
00308 PERFORM T0000-TERMINATE THRU T0000-EXIT. DTSBD401
|
|
00309 SKIP2 DTSBD401
|
|
00310 DTSBD400-MAINLINE-EXIT. DTSBD401
|
|
00311 GOBACK. DTSBD401
|
|
00312 EJECT DTSBD401
|
|
00313 I0000-INITIATE. DTSBD401
|
|
00314 SKIP2 DTSBD401
|
|
00315 PERFORM I1000-PROCESS-PARMS THRU I1000-EXIT. DTSBD401
|
|
00316 IF PARMFILE-EMPTY-88 DTSBD401
|
|
00317 DISPLAY 'DTSBD400: PARMFILE EMPTY' DTSBD401
|
|
00318 GO TO I0000-EXIT. DTSBD401
|
|
00319 DTSBD401
|
|
00320 PERFORM I2000-OPEN-FILES-1 THRU I2000-EXIT. DTSBD401
|
|
00321 DTSBD401
|
|
00322 PERFORM I3000-INITIALIZE-WRK THRU I3000-EXIT. DTSBD401
|
|
00323 DTSBD401
|
|
00324 PERFORM I4000-INITIAL-CALLS THRU I4000-EXIT. DTSBD401
|
|
00325 DTSBD401
|
|
00326 IF WRK-ONLY-CHECK-PARM-IND = 'Y' DTSBD401
|
|
00327 NEXT SENTENCE DTSBD401
|
|
00328 ELSE DTSBD401
|
|
00329 PERFORM I5000-OPEN-FILES-2 THRU I5000-EXIT. DTSBD401
|
|
00330 DTSBD401
|
|
00331 PERFORM I6000-RERUN-INSTRUCTIONS THRU I6000-EXIT. DTSBD401
|
|
00332 SKIP2 DTSBD401
|
|
00333 I0000-EXIT. DTSBD401
|
|
00334 EXIT. DTSBD401
|
|
00335 EJECT DTSBD401
|
|
00336 I1000-PROCESS-PARMS. DTSBD401
|
|
00337 DISPLAY ' '. DTSBD401
|
|
00338 DTSBD401
|
|
00339 DISPLAY '*** DTSBD400 PARAMETERS'. DTSBD401
|
|
00340 DTSBD401
|
|
00341 DTSBD401
|
|
00342 IF PARM-LENGTH = +8 DTSBD401
|
|
00343 NEXT SENTENCE DTSBD401
|
|
00344 ELSE DTSBD401
|
|
00345 DISPLAY 'PARM LENGTH NOT EQUAL TO EIGHT' DTSBD401
|
|
00346 PERFORM S999-ABEND THRU S999-EXIT. DTSBD401
|
|
00347 DTSBD401
|
|
00348 DTSBD401
|
|
00349 IF PARM-PRE-BACKUP-IND = SPACES DTSBD401
|
|
00350 MOVE 'N' TO WRK-PRE-BACKUP-IND DTSBD401
|
|
00351 ELSE DTSBD401
|
|
00352 IF PARM-PRE-BACKUP-IND = 'Y' OR 'N' DTSBD401
|
|
00353 MOVE PARM-PRE-BACKUP-IND DTSBD401
|
|
00354 TO WRK-PRE-BACKUP-IND DTSBD401
|
|
00355 ELSE DTSBD401
|
|
00356 DISPLAY 'PARM PRE BACKUP IND = ' DTSBD401
|
|
00357 PARM-PRE-BACKUP-IND DTSBD401
|
|
00358 ' IS NOT A VALID VALUE' DTSBD401
|
|
00359 PERFORM S999-ABEND THRU S999-EXIT. DTSBD401
|
|
00360 DTSBD401
|
|
00361 DTSBD401
|
|
00362 IF PARM-RUN-TYPE = SPACES DTSBD401
|
|
00363 MOVE 'OR' TO WRK-RUN-TYPE DTSBD401
|
|
00364 ELSE DTSBD401
|
|
00365 IF PARM-RUN-TYPE = 'WE' OR 'MC' OR 'ME' OR 'QR' OR 'QP' DTSBD401
|
|
00366 OR 'QD' DTSBD401
|
|
00367 OR 'QE' OR 'QF' OR 'YE' OR 'OR' DTSBD401
|
|
00368 MOVE PARM-RUN-TYPE TO WRK-RUN-TYPE DTSBD401
|
|
00369 ELSE DTSBD401
|
|
00370 DISPLAY 'PARM RUN TYPE = ' DTSBD401
|
|
00371 PARM-RUN-TYPE DTSBD401
|
|
00372 ' IS NOT A VALID RUN TYPE' DTSBD401
|
|
00373 PERFORM S999-ABEND THRU S999-EXIT. DTSBD401
|
|
00374 DTSBD401
|
|
00375 DTSBD401
|
|
00376 IF PARM-ONLY-CHECK-PARM-IND = SPACES DTSBD401
|
|
00377 MOVE 'N' TO WRK-ONLY-CHECK-PARM-IND DTSBD401
|
|
00378 ELSE DTSBD401
|
|
00379 IF PARM-ONLY-CHECK-PARM-IND = 'Y' OR 'N' DTSBD401
|
|
00380 MOVE PARM-ONLY-CHECK-PARM-IND DTSBD401
|
|
00381 TO WRK-ONLY-CHECK-PARM-IND DTSBD401
|
|
00382 ELSE DTSBD401
|
|
00383 DISPLAY 'PARM ONLY CHECK PARM IND = ' DTSBD401
|
|
00384 PARM-ONLY-CHECK-PARM-IND DTSBD401
|
|
00385 ' IS NOT A VALID VALUE' DTSBD401
|
|
00386 PERFORM S999-ABEND THRU S999-EXIT. DTSBD401
|
|
00387 DTSBD401
|
|
00388 DTSBD401
|
|
00389 IF PARM-TRACE-IND = SPACES DTSBD401
|
|
00390 MOVE 'N' TO WRK-TRACE-IND DTSBD401
|
|
00391 ELSE DTSBD401
|
|
00392 MOVE PARM-TRACE-IND TO WRK-TRACE-IND. DTSBD401
|
|
00393 DTSBD401
|
|
00394 DTSBD401
|
|
00395 DISPLAY ' '. DTSBD401
|
|
00396 DTSBD401
|
|
00397 DISPLAY ' RUN TYPE: ' DTSBD401
|
|
00398 WRK-RUN-TYPE. DTSBD401
|
|
00399 DTSBD401
|
|
00400 DISPLAY ' PRE-BACKUP IND: ' DTSBD401
|
|
00401 WRK-PRE-BACKUP-IND. DTSBD401
|
|
00402 DTSBD401
|
|
00403 DISPLAY 'ONLY CHECK PARM: ' DTSBD401
|
|
00404 WRK-ONLY-CHECK-PARM-IND. DTSBD401
|
|
00405 DTSBD401
|
|
00406 DISPLAY 'TRACE INDICATOR: ' DTSBD401
|
|
00407 WRK-TRACE-IND. DTSBD401
|
|
00408 DTSBD401
|
|
00409 DISPLAY ' '. DTSBD401
|
|
00410 DTSBD401
|
|
00411 DTSBD401
|
|
00412 SET PARMFILE-OK-88 TO TRUE. DTSBD401
|
|
00413 DTSBD401
|
|
00414 OPEN INPUT PARM-FILE. DTSBD401
|
|
00415 IF EXTPARM-FILE-OK-88 DTSBD401
|
|
00416 NEXT SENTENCE DTSBD401
|
|
00417 ELSE DTSBD401
|
|
00418 DISPLAY 'CANNOT OPEN PARM FILE ' DTSBD401
|
|
00419 EXTPARM-STATUS DTSBD401
|
|
00420 PERFORM S999-ABEND THRU S999-EXIT. DTSBD401
|
|
00421 DTSBD401
|
|
00422 MOVE 'N' TO PARM-EOF-IND. DTSBD401
|
|
00423 DTSBD401
|
|
00424 MOVE +0 TO PARM-REC-CNT. DTSBD401
|
|
00425 DTSBD401
|
|
00426 MOVE +0 TO WRK-EXTRACT-CNT. DTSBD401
|
|
00427 DTSBD401
|
|
00428 PERFORM I1100-READ-PARM THRU I1100-EXIT DTSBD401
|
|
00429 UNTIL NOT EXTPARM-FILE-OK-88. DTSBD401
|
|
00430 DTSBD401
|
|
00431 IF EXTPARM-FILE-OK-88 DTSBD401
|
|
00432 OR EXTPARM-EOF-88 DTSBD401
|
|
00433 NEXT SENTENCE DTSBD401
|
|
00434 ELSE DTSBD401
|
|
00435 DISPLAY 'CANNOT READ PARAMETER FILE ' DTSBD401
|
|
00436 EXTPARM-STATUS DTSBD401
|
|
00437 PERFORM S999-ABEND THRU S999-EXIT. DTSBD401
|
|
00438 DTSBD401
|
|
00439 IF PARM-REC-CNT > 50 DTSBD401
|
|
00440 DISPLAY 'MORE THAN 50 PARAMETER RECORDS IS NOT VALID' DTSBD401
|
|
00441 PERFORM S999-ABEND THRU S999-EXIT. DTSBD401
|
|
00442 DTSBD401
|
|
00443 IF PARM-REC-CNT = ZERO DTSBD401
|
|
00444 SET PARMFILE-EMPTY-88 TO TRUE DTSBD401
|
|
00445 ELSE DTSBD401
|
|
00446 IF WRK-EXTRACT-ID (1) = '000' DTSBD401
|
|
00447 SET PARMFILE-EMPTY-88 TO TRUE. DTSBD401
|
|
00448 DTSBD401
|
|
00449 CLOSE PARM-FILE. DTSBD401
|
|
00450 I1000-EXIT. DTSBD401
|
|
00451 EXIT. DTSBD401
|
|
00452 EJECT DTSBD401
|
|
00453 I1100-READ-PARM. DTSBD401
|
|
00454 READ PARM-FILE. DTSBD401
|
|
00455 IF EXTPARM-EOF-88 DTSBD401
|
|
00456 GO TO I1100-EXIT DTSBD401
|
|
00457 ELSE DTSBD401
|
|
00458 IF NOT EXTPARM-FILE-OK-88 DTSBD401
|
|
00459 DISPLAY 'CANNOT READ PARAMETER FILE ' DTSBD401
|
|
00460 EXTPARM-STATUS DTSBD401
|
|
00461 PERFORM S999-ABEND THRU S999-EXIT. DTSBD401
|
|
00462 DTSBD401
|
|
00463 DTSBD401
|
|
00464 DISPLAY '*** ' DTSBD401
|
|
00465 PARM-REC. DTSBD401
|
|
00466 DTSBD401
|
|
00467 DTSBD401
|
|
00468 IF PREC-EXTRACT-ID = '***' DTSBD401
|
|
00469 GO TO I1100-EXIT. DTSBD401
|
|
00470 DTSBD401
|
|
00471 DTSBD401
|
|
00472 ADD +1 TO PARM-REC-CNT. DTSBD401
|
|
00473 DTSBD401
|
|
00474 PERFORM I1200-LOAD-PARM-TABLE THRU I1200-EXIT. DTSBD401
|
|
00475 I1100-EXIT. DTSBD401
|
|
00476 EXIT. DTSBD401
|
|
00477 EJECT DTSBD401
|
|
00478 I1200-LOAD-PARM-TABLE. DTSBD401
|
|
00479 SET WRK-DUPLICATE-NO-88 TO TRUE. DTSBD401
|
|
00480 IF WRK-EXTRACT-CNT > 0 DTSBD401
|
|
00481 PERFORM I1250-DUP-EXTRACT-ID-CHECK THRU I1250-EXIT DTSBD401
|
|
00482 VARYING WRK-SUB FROM 1 BY 1 DTSBD401
|
|
00483 UNTIL WRK-SUB > WRK-EXTRACT-CNT. DTSBD401
|
|
00484 IF WRK-DUPLICATE-YES-88 DTSBD401
|
|
00485 GO TO I1200-EXIT. DTSBD401
|
|
00486 DTSBD401
|
|
00487 ADD +1 TO WRK-EXTRACT-CNT. DTSBD401
|
|
00488 DTSBD401
|
|
00489 IF WRK-EXTRACT-CNT > 50 DTSBD401
|
|
00490 DISPLAY 'MORE THAN 50 EXTRACT ID CODES INVALID' DTSBD401
|
|
00491 PERFORM S999-ABEND THRU S999-EXIT. DTSBD401
|
|
00492 DTSBD401
|
|
00493 MOVE PREC-EXTRACT-ID DTSBD401
|
|
00494 TO WRK-EXTRACT-ID (WRK-EXTRACT-CNT). DTSBD401
|
|
00495 DTSBD401
|
|
00496 MOVE PREC-EXTRACT-PARMS DTSBD401
|
|
00497 TO WRK-EXTRACT-PARMS (WRK-EXTRACT-CNT). DTSBD401
|
|
00498 I1200-EXIT. DTSBD401
|
|
00499 EXIT. DTSBD401
|
|
00500 EJECT DTSBD401
|
|
00501 I1250-DUP-EXTRACT-ID-CHECK. DTSBD401
|
|
00502 IF PREC-EXTRACT-ID = WRK-EXTRACT-ID (WRK-SUB) DTSBD401
|
|
00503 SET WRK-DUPLICATE-YES-88 TO TRUE DTSBD401
|
|
00504 MOVE MPRF-EMP-NO TO R907-EMP-NO DTSBD401
|
|
00505 MOVE PREC-EXTRACT-ID TO MSG2-EXTRACT-ID DTSBD401
|
|
00506 MOVE PREC-EXTRACT-PARMS TO MSG2-PARMS DTSBD401
|
|
00507 MOVE MSG2-TEXT TO R907-MSG-TEXT DTSBD401
|
|
00508 MOVE WRK-MOD-NAME TO R907-MODULE-NAME DTSBD401
|
|
00509 MOVE R907-REC TO RSKL-REC DTSBD401
|
|
00510 PERFORM S946-RPT-O THRU S946-EXIT. DTSBD401
|
|
00511 DTSBD401
|
|
00512 I1250-EXIT. DTSBD401
|
|
00513 EXIT. DTSBD401
|
|
00514 EJECT DTSBD401
|
|
00515 I2000-OPEN-FILES-1. DTSBD401
|
|
00516 MOVE WRK-TRACE-IND TO L910-TRACE-IND DTSBD401
|
|
00517 L921-TRACE-IND DTSBD401
|
|
00518 L927-TRACE-IND DTSBD401
|
|
00519 L931-TRACE-IND. DTSBD401
|
|
00520 DTSBD401
|
|
00521 MOVE WRK-MOD-NAME TO L910-MOD-NAME DTSBD401
|
|
00522 L921-MOD-NAME DTSBD401
|
|
00523 L927-MOD-NAME DTSBD401
|
|
00524 L931-MOD-NAME. DTSBD401
|
|
00525 DTSBD401
|
|
00526 PERFORM S910-OPEN-READ THRU S910-EXIT. DTSBD401
|
|
00527 DTSBD401
|
|
00528 PERFORM S921-OPEN-READ THRU S921-EXIT. DTSBD401
|
|
00529 DTSBD401
|
|
00530 PERFORM S927-OPEN-UPDATE THRU S927-EXIT. DTSBD401
|
|
00531 DTSBD401
|
|
00532 PERFORM S931-OPEN-READ THRU S931-EXIT. DTSBD401
|
|
00533 DTSBD401
|
|
00534 MOVE LENGTH OF R907-REC TO R907-LENGTH. DTSBD401
|
|
00535 I2000-EXIT. DTSBD401
|
|
00536 EXIT. DTSBD401
|
|
00537 EJECT DTSBD401
|
|
00538 I3000-INITIALIZE-WRK. DTSBD401
|
|
00539 MOVE LOW-VALUES TO MHDR-KEY-AREA. DTSBD401
|
|
00540 DTSBD401
|
|
00541 MOVE +0 TO MHDR-EMP-NO. DTSBD401
|
|
00542 DTSBD401
|
|
00543 SET MHDR-HDR-88 TO TRUE. DTSBD401
|
|
00544 DTSBD401
|
|
00545 PERFORM S910-READ THRU S910-EXIT. DTSBD401
|
|
00546 DTSBD401
|
|
00547 IF L910-NO-REC-88 DTSBD401
|
|
00548 PERFORM S999-ABEND THRU S999-EXIT. DTSBD401
|
|
00549 DTSBD401
|
|
00550 PERFORM S005-FROM-SYS THRU S005-EXIT. DTSBD401
|
|
00551 DTSBD401
|
|
00552 MOVE L005-ABSTIME TO WRK-START-ABSTIME. DTSBD401
|
|
00553 DTSBD401
|
|
00554 PERFORM I3100-INIT-LECM-PARMS THRU I3100-EXIT. DTSBD401
|
|
00555 DTSBD401
|
|
00556 MOVE +0 TO WRK-MPRF-CNT DTSBD401
|
|
00557 WRK-UPDATED-CNT. DTSBD401
|
|
00558 I3000-EXIT. DTSBD401
|
|
00559 EXIT. DTSBD401
|
|
00560 EJECT DTSBD401
|
|
00561 I3100-INIT-LECM-PARMS. DTSBD401
|
|
00562 MOVE WRK-RUN-TYPE TO LECM-RUN-TYPE. DTSBD401
|
|
00563 DTSBD401
|
|
00564 IF WRK-RUN-TYPE = 'WE' DTSBD401
|
|
00565 MOVE MHDR-CMPL-WEEK-BEGIN-DATE TO LECM-PERIOD-START-DATE DTSBD401
|
|
00566 MOVE MHDR-CMPL-WEEK-END-DATE TO LECM-PERIOD-END-DATE DTSBD401
|
|
00567 ELSE DTSBD401
|
|
00568 IF WRK-RUN-TYPE = 'MC' OR 'ME' DTSBD401
|
|
00569 MOVE MHDR-CMPL-MONTH-BEGIN-DATE TO LECM-PERIOD-START-DATE DTSBD401
|
|
00570 MOVE MHDR-CMPL-MONTH-END-DATE TO LECM-PERIOD-END-DATE DTSBD401
|
|
00571 ELSE DTSBD401
|
|
00572 IF WRK-RUN-TYPE = 'QR' OR 'QD' OR 'QE' OR 'QF' OR 'QP' DTSBD401
|
|
00573 MOVE MHDR-CMPL-QTR-BEGIN-DATE TO LECM-PERIOD-START-DATE DTSBD401
|
|
00574 MOVE MHDR-CMPL-QTR-END-DATE TO LECM-PERIOD-END-DATE DTSBD401
|
|
00575 ELSE DTSBD401
|
|
00576 IF WRK-RUN-TYPE = 'YE' DTSBD401
|
|
00577 MOVE MHDR-CMPL-YEAR-BEGIN-DATE TO LECM-PERIOD-START-DATE DTSBD401
|
|
00578 MOVE MHDR-CMPL-YEAR-END-DATE TO LECM-PERIOD-END-DATE DTSBD401
|
|
00579 ELSE DTSBD401
|
|
00580 MOVE +0 TO LECM-PERIOD-START-DATE DTSBD401
|
|
00581 MOVE +0 TO LECM-PERIOD-END-DATE. DTSBD401
|
|
00582 DTSBD401
|
|
00583 MOVE L005-ABSTIME TO LECM-RUN-ABSTIME. DTSBD401
|
|
00584 DTSBD401
|
|
00585 MOVE L005-DATE TO LECM-SYS-DATE. DTSBD401
|
|
00586 DTSBD401
|
|
00587 MOVE L005-TIME TO LECM-SYS-TIME. DTSBD401
|
|
00588 DTSBD401
|
|
00589 MOVE MHDR-CURR-RUN-DATE TO LECM-CURR-RUN-DATE. DTSBD401
|
|
00590 DTSBD401
|
|
00591 MOVE MHDR-CURR-MAIL-DATE TO LECM-CURR-MAIL-DATE. DTSBD401
|
|
00592 DTSBD401
|
|
00593 MOVE MHDR-PRIOR-RUN-DATE TO LECM-PRIOR-RUN-DATE. DTSBD401
|
|
00594 DTSBD401
|
|
00595 MOVE MHDR-PRIOR-MAIL-DATE TO LECM-PRIOR-MAIL-DATE. DTSBD401
|
|
00596 DTSBD401
|
|
00597 MOVE MHDR-LAST-UC30-MASS-MAIL-YRQ DTSBD401
|
|
00598 TO LECM-LAST-UC30-MASS-MAIL-YRQ. DTSBD401
|
|
00599 DTSBD401
|
|
00600 MOVE MHDR-LAST-PEN-ASSESSED-YRQ DTSBD401
|
|
00601 TO LECM-LAST-PEN-ASSESSED-YRQ. DTSBD401
|
|
00602 DTSBD401
|
|
00603 MOVE MHDR-LAST-UC30-DEL-MAIL-YRQ DTSBD401
|
|
00604 TO LECM-LAST-UC30-DEL-MAIL-YRQ. DTSBD401
|
|
00605 DTSBD401
|
|
00606 MOVE MHDR-FIRST-PURSUED-RPT-YRQ DTSBD401
|
|
00607 TO LECM-FIRST-PURSUED-RPT-YRQ. DTSBD401
|
|
00608 DTSBD401
|
|
00609 MOVE MHDR-LAST-RATE-END-YRQ DTSBD401
|
|
00610 TO LECM-LAST-RATE-END-YRQ. DTSBD401
|
|
00611 DTSBD401
|
|
00612 MOVE MHDR-LAST-MJRN-PURGE-DATE DTSBD401
|
|
00613 TO LECM-LAST-MJRN-PURGE-DATE. DTSBD401
|
|
00614 DTSBD401
|
|
00615 MOVE +19924 TO LECM-PICKUP-YRQ. DTSBD401
|
|
00616 DTSBD401
|
|
00617 MOVE WRK-TRACE-IND TO LECM-TRACE-IND. DTSBD401
|
|
00618 I3100-EXIT. DTSBD401
|
|
00619 EXIT. DTSBD401
|
|
00620 EJECT DTSBD401
|
|
00621 I4000-INITIAL-CALLS. DTSBD401
|
|
00622 SET LECM-INITIALIZE-88 TO TRUE. DTSBD401
|
|
00623 DTSBD401
|
|
00624 SET LECM-MST-OPEN-READ-88 TO TRUE. DTSBD401
|
|
00625 DTSBD401
|
|
00626 SET LECM-REF-OPEN-READ-88 TO TRUE. DTSBD401
|
|
00627 DTSBD401
|
|
00628 MOVE LECM-MST-OPEN-IND TO WRK-MST-OPEN-IND. DTSBD401
|
|
00629 DTSBD401
|
|
00630 MOVE LECM-REF-OPEN-IND TO WRK-REF-OPEN-IND. DTSBD401
|
|
00631 DTSBD401
|
|
00632 PERFORM I4100-EXTRACT-LOOP THRU I4100-EXIT DTSBD401
|
|
00633 VARYING WRK-EXT-IDX FROM 1 BY 1 DTSBD401
|
|
00634 UNTIL WRK-EXT-IDX > WRK-EXTRACT-CNT. DTSBD401
|
|
00635 I4000-EXIT. DTSBD401
|
|
00636 EXIT. DTSBD401
|
|
00637 SKIP3 DTSBD401
|
|
00638 I4100-EXTRACT-LOOP. DTSBD401
|
|
00639 SET LECM-MST-OPEN-READ-88 TO TRUE. DTSBD401
|
|
00640 DTSBD401
|
|
00641 SET LECM-REF-OPEN-READ-88 TO TRUE. DTSBD401
|
|
00642 DTSBD401
|
|
00643 PERFORM S1000-CALL-EXTRACT THRU S1000-EXIT. DTSBD401
|
|
00644 DTSBD401
|
|
00645 IF LECM-MST-OPEN-IND > WRK-MST-OPEN-IND DTSBD401
|
|
00646 MOVE LECM-MST-OPEN-IND TO WRK-MST-OPEN-IND. DTSBD401
|
|
00647 DTSBD401
|
|
00648 IF LECM-REF-OPEN-IND > WRK-REF-OPEN-IND DTSBD401
|
|
00649 MOVE LECM-REF-OPEN-IND TO WRK-REF-OPEN-IND. DTSBD401
|
|
00650 I4100-EXIT. DTSBD401
|
|
00651 EXIT. DTSBD401
|
|
00652 EJECT DTSBD401
|
|
00653 I5000-OPEN-FILES-2. DTSBD401
|
|
00654 MOVE WRK-MST-OPEN-IND TO LECM-MST-OPEN-IND. DTSBD401
|
|
00655 DTSBD401
|
|
00656 MOVE WRK-REF-OPEN-IND TO LECM-REF-OPEN-IND. DTSBD401
|
|
00657 DTSBD401
|
|
00658 IF (LECM-MST-OPEN-UPDATE-HDR-88) DTSBD401
|
|
00659 OR DTSBD401
|
|
00660 (LECM-MST-OPEN-UPDATE-88) DTSBD401
|
|
00661 IF WRK-PRE-BACKUP-IND = 'Y' DTSBD401
|
|
00662 NEXT SENTENCE DTSBD401
|
|
00663 ELSE DTSBD401
|
|
00664 DISPLAY 'MASTER FILE UPDATING POSSIBLE ' DTSBD401
|
|
00665 'BUT PARM-PRE-BACKUP-IND NOT EQUAL TO "Y"' DTSBD401
|
|
00666 PERFORM S999-ABEND THRU S999-EXIT. DTSBD401
|
|
00667 DTSBD401
|
|
00668 IF LECM-MST-OPEN-READ-88 DTSBD401
|
|
00669 NEXT SENTENCE DTSBD401
|
|
00670 ELSE DTSBD401
|
|
00671 PERFORM S910-CLOSE THRU S910-EXIT DTSBD401
|
|
00672 IF LECM-MST-OPEN-UPDATE-HDR-88 DTSBD401
|
|
00673 PERFORM S910-OPEN-UPDATE-HDR THRU S910-EXIT DTSBD401
|
|
00674 ELSE DTSBD401
|
|
00675 IF LECM-MST-OPEN-UPDATE-88 DTSBD401
|
|
00676 PERFORM S921-CLOSE THRU S921-EXIT DTSBD401
|
|
00677 PERFORM S910-OPEN-UPDATE THRU S910-EXIT DTSBD401
|
|
00678 PERFORM S921-OPEN-UPDATE THRU S921-EXIT DTSBD401
|
|
00679 ELSE DTSBD401
|
|
00680 PERFORM S999-ABEND THRU S999-EXIT. DTSBD401
|
|
00681 DTSBD401
|
|
00682 IF LECM-REF-OPEN-UPDATE-88 DTSBD401
|
|
00683 IF WRK-PRE-BACKUP-IND = 'Y' DTSBD401
|
|
00684 NEXT SENTENCE DTSBD401
|
|
00685 ELSE DTSBD401
|
|
00686 DISPLAY 'REFERENCE FILE UPDATING POSSIBLE ' DTSBD401
|
|
00687 'BUT PARM-PRE-BACKUP-IND NOT EQUAL TO "Y"' DTSBD401
|
|
00688 PERFORM S999-ABEND THRU S999-EXIT. DTSBD401
|
|
00689 DTSBD401
|
|
00690 IF LECM-REF-OPEN-UPDATE-88 DTSBD401
|
|
00691 PERFORM S931-CLOSE THRU S931-EXIT DTSBD401
|
|
00692 PERFORM S931-OPEN-UPDATE THRU S931-EXIT. DTSBD401
|
|
00693 I5000-EXIT. DTSBD401
|
|
00694 EXIT. DTSBD401
|
|
00695 EJECT DTSBD401
|
|
00696 I6000-RERUN-INSTRUCTIONS. DTSBD401
|
|
00697 DISPLAY ' '. DTSBD401
|
|
00698 DTSBD401
|
|
00699 DISPLAY ' '. DTSBD401
|
|
00700 DTSBD401
|
|
00701 DISPLAY '****************************************' DTSBD401
|
|
00702 '****************************************'. DTSBD401
|
|
00703 DTSBD401
|
|
00704 DISPLAY '** ' DTSBD401
|
|
00705 ' **'. DTSBD401
|
|
00706 DTSBD401
|
|
00707 DISPLAY '** DTSBD400 RERUN' DTSBD401
|
|
00708 ' INSTRUCTIONS **'. DTSBD401
|
|
00709 DTSBD401
|
|
00710 DISPLAY '** ' DTSBD401
|
|
00711 ' **'. DTSBD401
|
|
00712 DTSBD401
|
|
00713 DISPLAY '** IF DTSBD400 ABENDS THEN: ' DTSBD401
|
|
00714 ' **'. DTSBD401
|
|
00715 DTSBD401
|
|
00716 IF LECM-MST-OPEN-UPDATE-HDR-88 DTSBD401
|
|
00717 DISPLAY '** ' DTSBD401
|
|
00718 ' **' DTSBD401
|
|
00719 DISPLAY '** RESTORE MASTER FILE HEADER R' DTSBD401
|
|
00720 'ECORD PRIOR TO ATTEMPTING RERUN. **'. DTSBD401
|
|
00721 DTSBD401
|
|
00722 IF LECM-MST-OPEN-UPDATE-88 DTSBD401
|
|
00723 DISPLAY '** ' DTSBD401
|
|
00724 ' **' DTSBD401
|
|
00725 DISPLAY '** RESTORE MASTER FILE PRIOR TO' DTSBD401
|
|
00726 ' ATTEMPTING RERUN. **'. DTSBD401
|
|
00727 DTSBD401
|
|
00728 IF LECM-REF-OPEN-UPDATE-88 DTSBD401
|
|
00729 DISPLAY '** ' DTSBD401
|
|
00730 ' **' DTSBD401
|
|
00731 DISPLAY '** RESTORE REFERENCE FILE PRIOR' DTSBD401
|
|
00732 ' TO ATTEMPTING RERUN. **'. DTSBD401
|
|
00733 DTSBD401
|
|
00734 IF (LECM-MST-OPEN-UPDATE-HDR-88) DTSBD401
|
|
00735 OR DTSBD401
|
|
00736 (LECM-MST-OPEN-UPDATE-88) DTSBD401
|
|
00737 OR DTSBD401
|
|
00738 (LECM-REF-OPEN-UPDATE-88) DTSBD401
|
|
00739 NEXT SENTENCE DTSBD401
|
|
00740 ELSE DTSBD401
|
|
00741 DISPLAY '** ' DTSBD401
|
|
00742 ' **' DTSBD401
|
|
00743 DISPLAY '** NO SPECIAL ACTIONS NEEDED. ' DTSBD401
|
|
00744 ' **'. DTSBD401
|
|
00745 DTSBD401
|
|
00746 DISPLAY '** ' DTSBD401
|
|
00747 ' **'. DTSBD401
|
|
00748 DTSBD401
|
|
00749 DISPLAY '****************************************' DTSBD401
|
|
00750 '****************************************'. DTSBD401
|
|
00751 DTSBD401
|
|
00752 DISPLAY ' '. DTSBD401
|
|
00753 DTSBD401
|
|
00754 DISPLAY ' '. DTSBD401
|
|
00755 I6000-EXIT. DTSBD401
|
|
00756 EXIT. DTSBD401
|
|
00757 EJECT DTSBD401
|
|
00758 P0000-PROCESS. DTSBD401
|
|
00759 SET LECM-PROCESS-88 TO TRUE. DTSBD401
|
|
00760 DTSBD401
|
|
00761 MOVE LOW-VALUES TO MPRF-KEY-AREA. DTSBD401
|
|
00762 DTSBD401
|
|
00763 MOVE +0 TO MPRF-EMP-NO. DTSBD401
|
|
00764 DTSBD401
|
|
00765 SET MPRF-PRF-88 TO TRUE. DTSBD401
|
|
00766 DTSBD401
|
|
00767 PERFORM S910-START-BROWSE THRU S910-EXIT. DTSBD401
|
|
00768 DTSBD401
|
|
00769 PERFORM P1000-READ-NEXT THRU P1000-EXIT DTSBD401
|
|
00770 UNTIL L910-NO-REC-88. DTSBD401
|
|
00771 P0000-EXIT. DTSBD401
|
|
00772 EXIT. DTSBD401
|
|
00773 EJECT DTSBD401
|
|
00774 P1000-READ-NEXT. DTSBD401
|
|
00775 ADD +1 TO WRK-MPRF-CNT. DTSBD401
|
|
00776 DTSBD401
|
|
00777 SET WRK-EMP-UPDATED-NO-88 TO TRUE. DTSBD401
|
|
00778 DTSBD401
|
|
00779 MOVE LECM-RUN-ABSTIME TO LECM-EMP-ABSTIME. DTSBD401
|
|
00780 DTSBD401
|
|
00781 PERFORM S1000-CALL-EXTRACT THRU S1000-EXIT DTSBD401
|
|
00782 VARYING WRK-EXT-IDX FROM 1 BY 1 DTSBD401
|
|
00783 UNTIL WRK-EXT-IDX > WRK-EXTRACT-CNT. DTSBD401
|
|
00784 DTSBD401
|
|
00785 IF WRK-EMP-UPDATED-YES-88 DTSBD401
|
|
00786 PERFORM P1100-EMPLOYER-UPDATED THRU P1100-EXIT. DTSBD401
|
|
00787 DTSBD401
|
|
00788 PERFORM S910-READ-NEXT THRU S910-EXIT. DTSBD401
|
|
00789 P1000-EXIT. DTSBD401
|
|
00790 EXIT. DTSBD401
|
|
00791 SKIP3 DTSBD401
|
|
00792 P1100-EMPLOYER-UPDATED. DTSBD401
|
|
00793 IF MPRF-UPDATE-ACTIVE-88 DTSBD401
|
|
00794 NEXT SENTENCE DTSBD401
|
|
00795 ELSE DTSBD401
|
|
00796 MOVE LECM-RUN-ABSTIME TO MPRF-UPDATE-END-ABSTIME DTSBD401
|
|
00797 MOVE +0 TO MPRF-UPDATE-TASK-ID DTSBD401
|
|
00798 MOVE 'BATCH' TO MPRF-UPDATE-OP-ID DTSBD401
|
|
00799 MOVE SPACES TO MPRF-UPDATE-TERMID DTSBD401
|
|
00800 MOVE SPACES TO MPRF-UPDATE-NETNAME DTSBD401
|
|
00801 MOVE LECM-SYS-DATE TO MPRF-UPDATE-START-DATE DTSBD401
|
|
00802 MOVE LECM-SYS-TIME TO MPRF-UPDATE-START-TIME DTSBD401
|
|
00803 MOVE SPACES TO MPRF-UPDATE-SCR-ID DTSBD401
|
|
00804 MPRF-UPDATE-FUNCTION DTSBD401
|
|
00805 MOVE LECM-CURR-RUN-DATE TO MPRF-CHNG-DATE. DTSBD401
|
|
00806 DTSBD401
|
|
00807 PERFORM S910-REWRITE THRU S910-EXIT. DTSBD401
|
|
00808 DTSBD401
|
|
00809 ADD +1 TO WRK-UPDATED-CNT. DTSBD401
|
|
00810 P1100-EXIT. DTSBD401
|
|
00811 EXIT. DTSBD401
|
|
00812 EJECT DTSBD401
|
|
00813 T0000-TERMINATE. DTSBD401
|
|
00814 IF WRK-ONLY-CHECK-PARM-IND = 'Y' DTSBD401
|
|
00815 NEXT SENTENCE DTSBD401
|
|
00816 ELSE DTSBD401
|
|
00817 SET LECM-TERMINATE-88 TO TRUE DTSBD401
|
|
00818 PERFORM S1000-CALL-EXTRACT THRU S1000-EXIT DTSBD401
|
|
00819 VARYING WRK-EXT-IDX FROM 1 BY 1 DTSBD401
|
|
00820 UNTIL WRK-EXT-IDX > WRK-EXTRACT-CNT. DTSBD401
|
|
00821 DTSBD401
|
|
00822 DTSBD401
|
|
00823 DISPLAY ' '. DTSBD401
|
|
00824 DTSBD401
|
|
00825 DISPLAY '*** DTSBD400 TERMINATION STATISTICS ***'. DTSBD401
|
|
00826 DTSBD401
|
|
00827 DISPLAY ' '. DTSBD401
|
|
00828 DTSBD401
|
|
00829 DISPLAY 'NUMBER OF MASTER FILE PROFILE RECORDS ENCOUNTERED: 'DTSBD401
|
|
00830 WRK-MPRF-CNT. DTSBD401
|
|
00831 DTSBD401
|
|
00832 DISPLAY ' '. DTSBD401
|
|
00833 DTSBD401
|
|
00834 DISPLAY 'NUMBER OF MASTER FILE EMPLOYERS UPDATED : 'DTSBD401
|
|
00835 WRK-UPDATED-CNT. DTSBD401
|
|
00836 DTSBD401
|
|
00837 DISPLAY ' '. DTSBD401
|
|
00838 DTSBD401
|
|
00839 DISPLAY 'MODULE LINKAGE - RUN TYPE : ' DTSBD401
|
|
00840 LECM-RUN-TYPE. DTSBD401
|
|
00841 DTSBD401
|
|
00842 DISPLAY ' '. DTSBD401
|
|
00843 DTSBD401
|
|
00844 DISPLAY 'MODULE LINKAGE - PERIOD START DATE : ' DTSBD401
|
|
00845 LECM-PERIOD-START-DATE. DTSBD401
|
|
00846 DTSBD401
|
|
00847 DISPLAY ' '. DTSBD401
|
|
00848 DTSBD401
|
|
00849 DISPLAY 'MODULE LINKAGE - PERIOD END DATE : ' DTSBD401
|
|
00850 LECM-PERIOD-END-DATE. DTSBD401
|
|
00851 DTSBD401
|
|
00852 DISPLAY ' '. DTSBD401
|
|
00853 DTSBD401
|
|
00854 DTSBD401
|
|
00855 PERFORM S910-CLOSE THRU S910-EXIT. DTSBD401
|
|
00856 DTSBD401
|
|
00857 PERFORM S921-CLOSE THRU S921-EXIT. DTSBD401
|
|
00858 DTSBD401
|
|
00859 PERFORM S927-CLOSE THRU S927-EXIT. DTSBD401
|
|
00860 DTSBD401
|
|
00861 PERFORM S931-CLOSE THRU S931-EXIT. DTSBD401
|
|
00862 DTSBD401
|
|
00863 MOVE -1 TO RSK1-LENGTH. DTSBD401
|
|
00864 DTSBD401
|
|
00865 PERFORM S946-RPT-O THRU S946-EXIT. DTSBD401
|
|
00866 DTSBD401
|
|
00867 DTSBD401
|
|
00868 PERFORM S005-FROM-SYS THRU S005-EXIT. DTSBD401
|
|
00869 DTSBD401
|
|
00870 COMPUTE WRK-STEP-DURATION ROUNDED DTSBD401
|
|
00871 = (L005-ABSTIME - WRK-START-ABSTIME ) / 1000. DTSBD401
|
|
00872 DTSBD401
|
|
00873 DISPLAY '*** ' DTSBD401
|
|
00874 WRK-STEP-DURATION-X DTSBD401
|
|
00875 ' STEP DURATION (SECONDS)'. DTSBD401
|
|
00876 DTSBD401
|
|
00877 *****MOVE WRK-MST-OPEN-IND TO LECM-MST-OPEN-IND. DTSBD401
|
|
00878 DTSBD401
|
|
00879 *****MOVE WRK-REF-OPEN-IND TO LECM-REF-OPEN-IND. DTSBD401
|
|
00880 DTSBD401
|
|
00881 *****IF LECM-MST-OPEN-READ-88 DTSBD401
|
|
00882 ***** MOVE +0 TO RETURN-CODE DTSBD401
|
|
00883 *****ELSE DTSBD401
|
|
00884 *****IF LECM-MST-OPEN-UPDATE-HDR-88 DTSBD401
|
|
00885 ***** MOVE +1 TO RETURN-CODE DTSBD401
|
|
00886 *****ELSE DTSBD401
|
|
00887 ***** MOVE +2 TO RETURN-CODE. DTSBD401
|
|
00888 T0000-EXIT. DTSBD401
|
|
00889 EXIT. DTSBD401
|
|
00890 EJECT DTSBD401
|
|
00891 S1000-CALL-EXTRACT. DTSBD401
|
|
00892 SET LECM-EMP-UPDATED-NO-88 TO TRUE. DTSBD401
|
|
00893 DTSBD401
|
|
00894 MOVE WRK-EXTRACT-PARMS (WRK-EXT-IDX) DTSBD401
|
|
00895 TO LECM-EXTRACT-PARMS. DTSBD401
|
|
00896 DTSBD401
|
|
00897 MOVE WRK-EXTRACT-ID (WRK-EXT-IDX) TO EXTRACT-MOD-ID. DTSBD401
|
|
00898 DTSBD401
|
|
00899 CALL EXTRACT-MOD-NAME USING LECM-LINK-AREA DTSBD401
|
|
00900 MPRF-REC. DTSBD401
|
|
00901 DTSBD401
|
|
00902 IF LECM-EMP-UPDATED-YES-88 DTSBD401
|
|
00903 PERFORM S1100-EMPLOYER-UPDATED THRU S1100-EXIT. DTSBD401
|
|
00904 S1000-EXIT. DTSBD401
|
|
00905 EXIT. DTSBD401
|
|
00906 SKIP3 DTSBD401
|
|
00907 S1100-EMPLOYER-UPDATED. DTSBD401
|
|
00908 IF LECM-PROCESS-88 DTSBD401
|
|
00909 NEXT SENTENCE DTSBD401
|
|
00910 ELSE DTSBD401
|
|
00911 GO TO S1100-EXIT. DTSBD401
|
|
00912 DTSBD401
|
|
00913 SET WRK-EMP-UPDATED-YES-88 TO TRUE. DTSBD401
|
|
00914 DTSBD401
|
|
00915 IF MPRF-UPDATE-ACTIVE-88 DTSBD401
|
|
00916 MOVE MSG1-ID TO R907-MSG-ID DTSBD401
|
|
00917 MOVE MPRF-EMP-NO TO R907-EMP-NO DTSBD401
|
|
00918 MOVE EXTRACT-MOD-ID TO MSG1-EXTRACT-ID DTSBD401
|
|
00919 MOVE MSG1-TEXT TO R907-MSG-TEXT DTSBD401
|
|
00920 MOVE WRK-MOD-NAME TO R907-MODULE-NAME DTSBD401
|
|
00921 MOVE R907-REC TO RSKL-REC DTSBD401
|
|
00922 PERFORM S946-RPT-O THRU S946-EXIT. DTSBD401
|
|
00923 S1100-EXIT. DTSBD401
|
|
00924 EXIT. DTSBD401
|
|
00925 EJECT DTSBD401
|
|
00926 S005-FROM-SYS. DTSBD401
|
|
00927 SET L005-FROM-SYS TO TRUE. DTSBD401
|
|
00928 GO TO S005-ABSTIME. DTSBD401
|
|
00929 DTSBD401
|
|
00930 S005-ABSTIME. DTSBD401
|
|
00931 CALL 'DTSBU005' USING L005-LINK-AREA. DTSBD401
|
|
00932 S005-EXIT. DTSBD401
|
|
00933 EXIT. DTSBD401
|
|
00934 SKIP3 DTSBD401
|
|
00935 S910-OPEN-READ. DTSBD401
|
|
00936 SET L910-OPEN-READ-88 TO TRUE. DTSBD401
|
|
00937 GO TO S910-MSTR-IO. DTSBD401
|
|
00938 DTSBD401
|
|
00939 S910-OPEN-UPDATE-HDR. DTSBD401
|
|
00940 SET L910-OPEN-UPDATE-HDR-88 TO TRUE. DTSBD401
|
|
00941 GO TO S910-MSTR-IO. DTSBD401
|
|
00942 DTSBD401
|
|
00943 S910-OPEN-UPDATE. DTSBD401
|
|
00944 SET L910-OPEN-UPDATE-88 TO TRUE. DTSBD401
|
|
00945 GO TO S910-MSTR-IO. DTSBD401
|
|
00946 DTSBD401
|
|
00947 S910-READ. DTSBD401
|
|
00948 SET L910-READ-88 TO TRUE. DTSBD401
|
|
00949 GO TO S910-MSTR-IO. DTSBD401
|
|
00950 DTSBD401
|
|
00951 S910-START-BROWSE. DTSBD401
|
|
00952 SET L910-START-BROWSE-88 TO TRUE. DTSBD401
|
|
00953 GO TO S910-MSTR-IO. DTSBD401
|
|
00954 DTSBD401
|
|
00955 S910-READ-NEXT. DTSBD401
|
|
00956 SET L910-READ-NEXT-88 TO TRUE. DTSBD401
|
|
00957 GO TO S910-MSTR-IO. DTSBD401
|
|
00958 DTSBD401
|
|
00959 S910-REWRITE. DTSBD401
|
|
00960 SET L910-REWRITE-88 TO TRUE. DTSBD401
|
|
00961 GO TO S910-MSTR-IO. DTSBD401
|
|
00962 DTSBD401
|
|
00963 S910-CLOSE. DTSBD401
|
|
00964 SET L910-CLOSE-88 TO TRUE. DTSBD401
|
|
00965 GO TO S910-MSTR-IO. DTSBD401
|
|
00966 DTSBD401
|
|
00967 S910-MSTR-IO. DTSBD401
|
|
00968 CALL 'DTSBU910' USING L910-LINK-AREA DTSBD401
|
|
00969 MSKL-REC. DTSBD401
|
|
00970 S910-EXIT. DTSBD401
|
|
00971 EXIT. DTSBD401
|
|
00972 SKIP3 DTSBD401
|
|
00973 S921-OPEN-READ. DTSBD401
|
|
00974 SET L921-OPEN-READ-88 TO TRUE. DTSBD401
|
|
00975 GO TO S921-AIX-IO. DTSBD401
|
|
00976 DTSBD401
|
|
00977 S921-OPEN-UPDATE. DTSBD401
|
|
00978 SET L921-OPEN-UPDATE-88 TO TRUE. DTSBD401
|
|
00979 GO TO S921-AIX-IO. DTSBD401
|
|
00980 DTSBD401
|
|
00981 S921-CLOSE. DTSBD401
|
|
00982 SET L921-CLOSE-88 TO TRUE. DTSBD401
|
|
00983 GO TO S921-AIX-IO. DTSBD401
|
|
00984 DTSBD401
|
|
00985 S921-AIX-IO. DTSBD401
|
|
00986 CALL 'DTSBU921' USING L921-LINK-AREA DTSBD401
|
|
00987 ISKL-REC. DTSBD401
|
|
00988 S921-EXIT. DTSBD401
|
|
00989 EXIT. DTSBD401
|
|
00990 SKIP3 DTSBD401
|
|
00991 S927-OPEN-UPDATE. DTSBD401
|
|
00992 SET L927-OPEN-UPDATE-88 TO TRUE. DTSBD401
|
|
00993 GO TO S927-BTC-O. DTSBD401
|
|
00994 DTSBD401
|
|
00995 S927-CLOSE. DTSBD401
|
|
00996 SET L927-CLOSE-88 TO TRUE. DTSBD401
|
|
00997 GO TO S927-BTC-O. DTSBD401
|
|
00998 DTSBD401
|
|
00999 S927-BTC-O. DTSBD401
|
|
01000 CALL 'DTSBU927' USING L927-LINK-AREA DTSBD401
|
|
01001 RSKL-REC. DTSBD401
|
|
01002 S927-EXIT. DTSBD401
|
|
01003 EXIT. DTSBD401
|
|
01004 SKIP3 DTSBD401
|
|
01005 S931-OPEN-READ. DTSBD401
|
|
01006 SET L931-OPEN-READ-88 TO TRUE. DTSBD401
|
|
01007 GO TO S931-REF-IO. DTSBD401
|
|
01008 DTSBD401
|
|
01009 S931-OPEN-UPDATE. DTSBD401
|
|
01010 SET L931-OPEN-UPDATE-88 TO TRUE. DTSBD401
|
|
01011 GO TO S931-REF-IO. DTSBD401
|
|
01012 DTSBD401
|
|
01013 S931-CLOSE. DTSBD401
|
|
01014 SET L931-CLOSE-88 TO TRUE. DTSBD401
|
|
01015 GO TO S931-REF-IO. DTSBD401
|
|
01016 DTSBD401
|
|
01017 S931-REF-IO. DTSBD401
|
|
01018 CALL 'DTSBU931' USING L931-LINK-AREA DTSBD401
|
|
01019 FSKL-REC. DTSBD401
|
|
01020 S931-EXIT. DTSBD401
|
|
01021 EXIT. DTSBD401
|
|
01022 SKIP3 DTSBD401
|
|
01023 S946-RPT-O. DTSBD401
|
|
01024 CALL 'DTSBU946' USING RSKL-REC. DTSBD401
|
|
01025 S946-EXIT. DTSBD401
|
|
01026 EXIT. DTSBD401
|
|
01027 SKIP3 DTSBD401
|
|
01028 S999-ABEND. DTSBD401
|
|
01029 CALL 'DTSBU999' USING WRK-ABEND-CD. DTSBD401
|
|
01030 S999-EXIT. DTSBD401
|
|
01031 EXIT. DTSBD401
|