291 lines
23 KiB
COBOL
291 lines
23 KiB
COBOL
00001 IDENTIFICATION DIVISION. 06/13/05
|
|
00002 PROGRAM-ID. DTSBX464. DTSBX464
|
|
00003 AUTHOR. NGC. LV001
|
|
00004 DATE-WRITTEN. MARCH 2005. DTSBX464
|
|
00005 DATE-COMPILED. DTSBX464
|
|
00006 SKIP3 DTSBX464
|
|
00007 ***** DTSBX464
|
|
00008 * DTSBX464
|
|
00009 * FUNCTION: FIND EMPLOYERS NEWLY ADDED DTSBX464
|
|
00010 * DTSBX464
|
|
00011 * DTSBX464
|
|
00012 * MODIFICATION LOG: DTSBX464
|
|
00013 * DTSBX464
|
|
00014 * 03/17/2005 INITIAL DEVELOPMENT. DTSBX464
|
|
00015 * REFERENCE: PROGRAMMER: GD DTSBX464
|
|
00016 * DTSBX464
|
|
00017 ***** DTSBX464
|
|
00018 SKIP3 DTSBX464
|
|
00019 ENVIRONMENT DIVISION. DTSBX464
|
|
00020 SKIP2 DTSBX464
|
|
00021 INPUT-OUTPUT SECTION. DTSBX464
|
|
00022 FILE-CONTROL. DTSBX464
|
|
00023 SELECT NEW-EMP-FILE DTSBX464
|
|
00024 ASSIGN TO NEWEMP DTSBX464
|
|
00025 FILE STATUS IS NEW-EMP-STATUS. DTSBX464
|
|
00026 DTSBX464
|
|
00027 SELECT OLD-EMP-FILE DTSBX464
|
|
00028 ASSIGN TO OLDEMP DTSBX464
|
|
00029 ORGANIZATION IS INDEXED DTSBX464
|
|
00030 RECORD KEY IS OLD-EMP-FEIN DTSBX464
|
|
00031 ACCESS IS SEQUENTIAL DTSBX464
|
|
00032 FILE STATUS IS OLD-EMP-STATUS. DTSBX464
|
|
00033 DTSBX464
|
|
00034 SELECT EMP-UPDATE-FILE DTSBX464
|
|
00035 ASSIGN TO EMPUPD DTSBX464
|
|
00036 FILE STATUS IS EMP-UPD-STATUS. DTSBX464
|
|
00037 DTSBX464
|
|
00038 DATA DIVISION. DTSBX464
|
|
00039 SKIP3 DTSBX464
|
|
00040 FILE SECTION. DTSBX464
|
|
00041 FD NEW-EMP-FILE DTSBX464
|
|
00042 LABEL RECORDS ARE STANDARD. DTSBX464
|
|
00043 01 NEW-EMP-REC. DTSBX464
|
|
00044 05 NEW-EMP-FEIN PIC 9(09). DTSBX464
|
|
00045 05 FILLER PIC X(80). DTSBX464
|
|
00046 DTSBX464
|
|
00047 FD OLD-EMP-FILE DTSBX464
|
|
00048 LABEL RECORDS ARE STANDARD. DTSBX464
|
|
00049 01 OLD-EMP-REC. DTSBX464
|
|
00050 05 OLD-EMP-FEIN PIC 9(09). DTSBX464
|
|
00051 05 FILLER PIC X(80). DTSBX464
|
|
00052 DTSBX464
|
|
00053 FD EMP-UPDATE-FILE DTSBX464
|
|
00054 LABEL RECORDS ARE STANDARD. DTSBX464
|
|
00055 01 EMP-UPD-REC PIC X(89). DTSBX464
|
|
00056 DTSBX464
|
|
00057 EJECT DTSBX464
|
|
00058 WORKING-STORAGE SECTION. DTSBX464
|
|
000585 77 PAN-VALET PICTURE X(24) VALUE '001DTSBX464 06/13/05'. DTSBX464
|
|
00059 SKIP3 DTSBX464
|
|
00060 01 WRK-AREA. DTSBX464
|
|
00061 05 WRK-ABEND-CD PIC S9(04) COMP VALUE +462.DTSBX464
|
|
00062 DTSBX464
|
|
00063 05 WRK-MOD-NAME PIC X(08) VALUE 'DTSBX462'.DTSBX464
|
|
00064 DTSBX464
|
|
00065 05 WRK-NEW-EMP-CNT PIC S9(07) COMP-3 VALUE 0. DTSBX464
|
|
00066 05 WRK-OLD-EMP-CNT PIC S9(07) COMP-3 VALUE 0. DTSBX464
|
|
00067 05 WRK-EMP-UPD-CNT PIC S9(07) COMP-3 VALUE 0. DTSBX464
|
|
00068 DTSBX464
|
|
00069 05 NEW-EMP-STATUS PIC X(02). DTSBX464
|
|
00070 88 NEW-EMP-STATUS-OK-88 VALUE '00', '97'. DTSBX464
|
|
00071 88 NEW-EMP-STATUS-EOF-88 VALUE '10'. DTSBX464
|
|
00072 DTSBX464
|
|
00073 05 OLD-EMP-STATUS PIC X(02). DTSBX464
|
|
00074 88 OLD-EMP-STATUS-OK-88 VALUE '00', '97'. DTSBX464
|
|
00075 88 OLD-EMP-STATUS-EOF-88 VALUE '10'. DTSBX464
|
|
00076 DTSBX464
|
|
00077 05 EMP-UPD-STATUS PIC X(02). DTSBX464
|
|
00078 88 EMP-UPD-STATUS-OK-88 VALUE '00', '97'. DTSBX464
|
|
00079 DTSBX464
|
|
00080 05 WRK-ERROR-IND PIC X(01). DTSBX464
|
|
00081 88 WRK-ERROR-YES-88 VALUE 'Y'. DTSBX464
|
|
00082 88 WRK-ERROR-NO-88 VALUE 'N'. DTSBX464
|
|
00083 DTSBX464
|
|
00084 DTSBX464
|
|
00085 01 WRK-XVEM-REC. DTSBX464
|
|
00086 ++INCLUDE DTSIXVEM DTSBX464
|
|
00087 DTSBX464
|
|
00088 PROCEDURE DIVISION. DTSBX464
|
|
00089 DTSBX464
|
|
00090 DTSBX464-MAIN. DTSBX464
|
|
00091 PERFORM I0000-INITIATE THRU I0000-EXIT. DTSBX464
|
|
00092 IF WRK-ERROR-YES-88 DTSBX464
|
|
00093 GO TO DTSBX464-MAIN-EXIT. DTSBX464
|
|
00094 DTSBX464
|
|
00095 PERFORM P0000-PROCESS THRU P0000-EXIT. DTSBX464
|
|
00096 DTSBX464
|
|
00097 PERFORM T0000-TERMINATE THRU T0000-EXIT. DTSBX464
|
|
00098 DTSBX464
|
|
00099 DTSBX464-MAIN-EXIT. DTSBX464
|
|
00100 GOBACK. DTSBX464
|
|
00101 EJECT DTSBX464
|
|
00102 I0000-INITIATE. DTSBX464
|
|
00103 SET WRK-ERROR-NO-88 TO TRUE. DTSBX464
|
|
00104 DTSBX464
|
|
00105 PERFORM I1000-OPEN-FILES THRU I1000-EXIT. DTSBX464
|
|
00106 DTSBX464
|
|
00107 I0000-EXIT. DTSBX464
|
|
00108 EXIT. DTSBX464
|
|
00109 I1000-OPEN-FILES. DTSBX464
|
|
00110 PERFORM S1200-OPEN-NEW-EMP THRU S1200-EXIT. DTSBX464
|
|
00111 IF WRK-ERROR-YES-88 DTSBX464
|
|
00112 GO TO I1000-EXIT DTSBX464
|
|
00113 END-IF. DTSBX464
|
|
00114 DTSBX464
|
|
00115 PERFORM S1300-OPEN-OLD-EMP THRU S1300-EXIT. DTSBX464
|
|
00116 IF WRK-ERROR-YES-88 DTSBX464
|
|
00117 GO TO I1000-EXIT DTSBX464
|
|
00118 END-IF. DTSBX464
|
|
00119 DTSBX464
|
|
00120 PERFORM S1400-OPEN-EMP-UPDATE THRU S1400-EXIT. DTSBX464
|
|
00121 IF WRK-ERROR-YES-88 DTSBX464
|
|
00122 SET WRK-ERROR-YES-88 TO TRUE DTSBX464
|
|
00123 GO TO I1000-EXIT DTSBX464
|
|
00124 END-IF. DTSBX464
|
|
00125 DTSBX464
|
|
00126 I1000-EXIT. DTSBX464
|
|
00127 EXIT. DTSBX464
|
|
00128 DTSBX464
|
|
00129 P0000-PROCESS. DTSBX464
|
|
00130 PERFORM S1210-READ-NEW-EMP THRU S1210-EXIT. DTSBX464
|
|
00131 IF NOT NEW-EMP-STATUS-OK-88 DTSBX464
|
|
00132 DISPLAY 'BAD FIRST READ OF NEW EMP FILE ' DTSBX464
|
|
00133 NEW-EMP-STATUS DTSBX464
|
|
00134 GO TO P0000-EXIT DTSBX464
|
|
00135 END-IF. DTSBX464
|
|
00136 DTSBX464
|
|
00137 PERFORM S1310-READ-OLD-EMP THRU S1310-EXIT. DTSBX464
|
|
00138 IF NOT OLD-EMP-STATUS-OK-88 DTSBX464
|
|
00139 DISPLAY 'BAD FIRST READ OF OLD EMP FILE ' DTSBX464
|
|
00140 OLD-EMP-STATUS DTSBX464
|
|
00141 GO TO P0000-EXIT DTSBX464
|
|
00142 END-IF. DTSBX464
|
|
00143 DTSBX464
|
|
00144 PERFORM P1000-FIND-UPDATES THRU P1000-EXIT DTSBX464
|
|
00145 UNTIL NEW-EMP-STATUS-EOF-88 DTSBX464
|
|
00146 OR WRK-ERROR-YES-88. DTSBX464
|
|
00147 DTSBX464
|
|
00148 P0000-EXIT. DTSBX464
|
|
00149 EXIT. DTSBX464
|
|
00150 DTSBX464
|
|
00151 P1000-FIND-UPDATES. DTSBX464
|
|
00152 IF NEW-EMP-FEIN < OLD-EMP-FEIN DTSBX464
|
|
00153 PERFORM S1410-WRITE-EMP-UPDATE THRU S1410-EXIT DTSBX464
|
|
00154 PERFORM S1210-READ-NEW-EMP THRU S1210-EXIT DTSBX464
|
|
00155 ELSE DTSBX464
|
|
00156 IF NEW-EMP-FEIN = OLD-EMP-FEIN DTSBX464
|
|
00157 PERFORM S1210-READ-NEW-EMP THRU S1210-EXIT DTSBX464
|
|
00158 PERFORM S1310-READ-OLD-EMP THRU S1310-EXIT DTSBX464
|
|
00159 ELSE DTSBX464
|
|
00160 PERFORM S1310-READ-OLD-EMP THRU S1310-EXIT DTSBX464
|
|
00161 END-IF DTSBX464
|
|
00162 END-IF. DTSBX464
|
|
00163 DTSBX464
|
|
00164 P1000-EXIT. DTSBX464
|
|
00165 EXIT. DTSBX464
|
|
00166 DTSBX464
|
|
00167 T0000-TERMINATE. DTSBX464
|
|
00168 DTSBX464
|
|
00169 DISPLAY ' '. DTSBX464
|
|
00170 DTSBX464
|
|
00171 DISPLAY '*** DTSBX464 TERMINATION STATISTICS ***'. DTSBX464
|
|
00172 DTSBX464
|
|
00173 DISPLAY ' '. DTSBX464
|
|
00174 DTSBX464
|
|
00175 DISPLAY 'NUMBER OF NEW EMPLOYER RECORDS READ : ' DTSBX464
|
|
00176 WRK-NEW-EMP-CNT. DTSBX464
|
|
00177 DTSBX464
|
|
00178 DISPLAY 'NUMBER OF OLD EMPLOYER RECORDS READ : ' DTSBX464
|
|
00179 WRK-OLD-EMP-CNT. DTSBX464
|
|
00180 DTSBX464
|
|
00181 DISPLAY 'NUMBER OF UPDATED EMPLOYERS WRITTEN : ' DTSBX464
|
|
00182 WRK-EMP-UPD-CNT. DTSBX464
|
|
00183 DTSBX464
|
|
00184 PERFORM S1220-CLOSE-NEW-EMP THRU S1220-EXIT. DTSBX464
|
|
00185 PERFORM S1320-CLOSE-OLD-EMP THRU S1320-EXIT. DTSBX464
|
|
00186 PERFORM S1420-CLOSE-EMP-UPDATE THRU S1420-EXIT. DTSBX464
|
|
00187 DTSBX464
|
|
00188 DTSBX464
|
|
00189 T0000-EXIT. DTSBX464
|
|
00190 EXIT. DTSBX464
|
|
00191 EJECT DTSBX464
|
|
00192 DTSBX464
|
|
00193 S1200-OPEN-NEW-EMP. DTSBX464
|
|
00194 OPEN INPUT NEW-EMP-FILE. DTSBX464
|
|
00195 IF NOT NEW-EMP-STATUS-OK-88 DTSBX464
|
|
00196 DISPLAY 'CANNOT OPEN NEW EMP ' NEW-EMP-STATUS DTSBX464
|
|
00197 SET WRK-ERROR-YES-88 TO TRUE DTSBX464
|
|
00198 END-IF. DTSBX464
|
|
00199 DTSBX464
|
|
00200 S1200-EXIT. DTSBX464
|
|
00201 EXIT. DTSBX464
|
|
00202 DTSBX464
|
|
00203 S1210-READ-NEW-EMP. DTSBX464
|
|
00204 READ NEW-EMP-FILE. DTSBX464
|
|
00205 IF NEW-EMP-STATUS-OK-88 DTSBX464
|
|
00206 ADD +1 TO WRK-NEW-EMP-CNT DTSBX464
|
|
00207 ELSE DTSBX464
|
|
00208 IF NOT NEW-EMP-STATUS-EOF-88 DTSBX464
|
|
00209 DISPLAY 'S1210 BAD READ ON NEW EMP ' DTSBX464
|
|
00210 NEW-EMP-STATUS DTSBX464
|
|
00211 SET WRK-ERROR-YES-88 TO TRUE DTSBX464
|
|
00212 END-IF DTSBX464
|
|
00213 END-IF. DTSBX464
|
|
00214 DTSBX464
|
|
00215 S1210-EXIT. DTSBX464
|
|
00216 EXIT. DTSBX464
|
|
00217 DTSBX464
|
|
00218 S1220-CLOSE-NEW-EMP. DTSBX464
|
|
00219 CLOSE NEW-EMP-FILE. DTSBX464
|
|
00220 DTSBX464
|
|
00221 S1220-EXIT. DTSBX464
|
|
00222 EXIT. DTSBX464
|
|
00223 DTSBX464
|
|
00224 S1300-OPEN-OLD-EMP. DTSBX464
|
|
00225 OPEN INPUT OLD-EMP-FILE. DTSBX464
|
|
00226 IF NOT OLD-EMP-STATUS-OK-88 DTSBX464
|
|
00227 DISPLAY 'CANNOT OPEN OLD EMP ' OLD-EMP-STATUS DTSBX464
|
|
00228 SET WRK-ERROR-YES-88 TO TRUE DTSBX464
|
|
00229 END-IF. DTSBX464
|
|
00230 DTSBX464
|
|
00231 S1300-EXIT. DTSBX464
|
|
00232 EXIT. DTSBX464
|
|
00233 DTSBX464
|
|
00234 S1310-READ-OLD-EMP. DTSBX464
|
|
00235 READ OLD-EMP-FILE NEXT. DTSBX464
|
|
00236 IF OLD-EMP-STATUS-OK-88 DTSBX464
|
|
00237 ADD +1 TO WRK-OLD-EMP-CNT DTSBX464
|
|
00238 ELSE DTSBX464
|
|
00239 IF NOT OLD-EMP-STATUS-EOF-88 DTSBX464
|
|
00240 DISPLAY 'S1310 BAD READ ON OLD EMP ' DTSBX464
|
|
00241 OLD-EMP-STATUS DTSBX464
|
|
00242 SET WRK-ERROR-YES-88 TO TRUE DTSBX464
|
|
00243 END-IF DTSBX464
|
|
00244 END-IF. DTSBX464
|
|
00245 DTSBX464
|
|
00246 S1310-EXIT. DTSBX464
|
|
00247 EXIT. DTSBX464
|
|
00248 DTSBX464
|
|
00249 S1320-CLOSE-OLD-EMP. DTSBX464
|
|
00250 CLOSE OLD-EMP-FILE. DTSBX464
|
|
00251 DTSBX464
|
|
00252 S1320-EXIT. DTSBX464
|
|
00253 EXIT. DTSBX464
|
|
00254 DTSBX464
|
|
00255 S1400-OPEN-EMP-UPDATE. DTSBX464
|
|
00256 OPEN OUTPUT EMP-UPDATE-FILE. DTSBX464
|
|
00257 IF NOT EMP-UPD-STATUS-OK-88 DTSBX464
|
|
00258 DISPLAY 'CANNOT OPEN EMP UPDATE FILE ' DTSBX464
|
|
00259 EMP-UPD-STATUS DTSBX464
|
|
00260 SET WRK-ERROR-YES-88 TO TRUE DTSBX464
|
|
00261 END-IF. DTSBX464
|
|
00262 DTSBX464
|
|
00263 S1400-EXIT. DTSBX464
|
|
00264 EXIT. DTSBX464
|
|
00265 DTSBX464
|
|
00266 S1410-WRITE-EMP-UPDATE. DTSBX464
|
|
00267 WRITE EMP-UPD-REC FROM NEW-EMP-REC. DTSBX464
|
|
00268 IF NOT EMP-UPD-STATUS-OK-88 DTSBX464
|
|
00269 DISPLAY 'S1410 BAD WRITE ON EMP-UPDATE ' DTSBX464
|
|
00270 EMP-UPD-STATUS DTSBX464
|
|
00271 SET WRK-ERROR-YES-88 TO TRUE DTSBX464
|
|
00272 ELSE DTSBX464
|
|
00273 ADD +1 TO WRK-EMP-UPD-CNT DTSBX464
|
|
00274 END-IF. DTSBX464
|
|
00275 DTSBX464
|
|
00276 S1410-EXIT. DTSBX464
|
|
00277 EXIT. DTSBX464
|
|
00278 DTSBX464
|
|
00279 S1420-CLOSE-EMP-UPDATE. DTSBX464
|
|
00280 CLOSE EMP-UPDATE-FILE. DTSBX464
|
|
00281 DTSBX464
|
|
00282 S1420-EXIT. DTSBX464
|
|
00283 EXIT. DTSBX464
|
|
00284 DTSBX464
|
|
00285 DTSBX464
|
|
00286 S999-ABEND. DTSBX464
|
|
00287 CALL 'DTSBU999' USING WRK-ABEND-CD. DTSBX464
|
|
00288 S999-EXIT. DTSBX464
|
|
00289 EXIT. DTSBX464
|