505 lines
40 KiB
COBOL
505 lines
40 KiB
COBOL
00001 IDENTIFICATION DIVISION. 08/17/06
|
|
00002 PROGRAM-ID. DTSBX462. DTSBX462
|
|
00003 AUTHOR. NGC. LV003
|
|
00004 DATE-WRITTEN. JANUARY 2005. DTSBX462
|
|
00005 DATE-COMPILED. DTSBX462
|
|
00006 SKIP3 DTSBX462
|
|
00007 ***** DTSBX462
|
|
00008 * DTSBX462
|
|
00009 * >>> BROUGHT TO DEVL TO CHECK ABEND. 08/14/2006 GD DTSBX462
|
|
00010 * DTSBX462
|
|
00011 * FUNCTION: MERGE OTR AND UI TAX EMPLOYER DATA AND PRODUCE DTSBX462
|
|
00012 * OUTPUT FILE FOR VOS STAFF. DTSBX462
|
|
00013 * DTSBX462
|
|
00014 * DTSBX462
|
|
00015 * MODIFICATION LOG: DTSBX462
|
|
00016 * DTSBX462
|
|
00017 * 01/11/2005 INITIAL DEVELOPMENT. DTSBX462
|
|
00018 * REFERENCE: PROGRAMMER: GD DTSBX462
|
|
00019 * DTSBX462
|
|
00020 ***** DTSBX462
|
|
00021 SKIP3 DTSBX462
|
|
00022 ENVIRONMENT DIVISION. DTSBX462
|
|
00023 SKIP2 DTSBX462
|
|
00024 INPUT-OUTPUT SECTION. DTSBX462
|
|
00025 FILE-CONTROL. DTSBX462
|
|
00026 SELECT EMP-INPUT-FILE DTSBX462
|
|
00027 ASSIGN TO EMPINP DTSBX462
|
|
00028 FILE STATUS IS EMP-INP-STATUS. DTSBX462
|
|
00029 DTSBX462
|
|
00030 SELECT TAX-INPUT-FILE DTSBX462
|
|
00031 ASSIGN TO TAXINP DTSBX462
|
|
00032 FILE STATUS IS TAX-INP-STATUS. DTSBX462
|
|
00033 DTSBX462
|
|
00034 SELECT EMP-OUTPUT-FILE DTSBX462
|
|
00035 ASSIGN TO EMPOUTP DTSBX462
|
|
00036 FILE STATUS IS EMP-OUTP-STATUS. DTSBX462
|
|
00037 DTSBX462
|
|
00038 SELECT ADDR-OUTPUT-FILE DTSBX462
|
|
00039 ASSIGN TO ADDROUTP DTSBX462
|
|
00040 FILE STATUS IS ADDR-OUTP-STATUS. DTSBX462
|
|
00041 DTSBX462
|
|
00042 DATA DIVISION. DTSBX462
|
|
00043 SKIP3 DTSBX462
|
|
00044 FILE SECTION. DTSBX462
|
|
00045 DTSBX462
|
|
00046 FD EMP-INPUT-FILE DTSBX462
|
|
00047 LABEL RECORDS ARE STANDARD DTSBX462
|
|
00048 BLOCK CONTAINS 0 RECORDS DTSBX462
|
|
00049 RECORDING MODE IS F. DTSBX462
|
|
00050 DTSBX462
|
|
00051 01 EMP-INPUT-REC PIC X(290). DTSBX462
|
|
00052 DTSBX462
|
|
00053 FD TAX-INPUT-FILE DTSBX462
|
|
00054 LABEL RECORDS ARE STANDARD DTSBX462
|
|
00055 BLOCK CONTAINS 0 RECORDS DTSBX462
|
|
00056 RECORDING MODE IS F. DTSBX462
|
|
00057 DTSBX462
|
|
00058 01 TAX-INPUT-REC PIC X(290). DTSBX462
|
|
00059 DTSBX462
|
|
00060 FD EMP-OUTPUT-FILE DTSBX462
|
|
00061 LABEL RECORDS ARE STANDARD DTSBX462
|
|
00062 BLOCK CONTAINS 0 RECORDS DTSBX462
|
|
00063 RECORDING MODE IS F. DTSBX462
|
|
00064 DTSBX462
|
|
00065 01 EMP-OUTPUT-REC PIC X(89). DTSBX462
|
|
00066 DTSBX462
|
|
00067 FD ADDR-OUTPUT-FILE DTSBX462
|
|
00068 LABEL RECORDS ARE STANDARD DTSBX462
|
|
00069 BLOCK CONTAINS 0 RECORDS DTSBX462
|
|
00070 RECORDING MODE IS F. DTSBX462
|
|
00071 DTSBX462
|
|
00072 01 ADDR-OUTPUT-REC PIC X(128). DTSBX462
|
|
00073 DTSBX462
|
|
00074 EJECT DTSBX462
|
|
00075 WORKING-STORAGE SECTION. DTSBX462
|
|
000755 77 PAN-VALET PICTURE X(24) VALUE '003DTSBX462 08/17/06'. DTSBX462
|
|
00076 SKIP3 DTSBX462
|
|
00077 01 WRK-AREA. DTSBX462
|
|
00078 05 WRK-ABEND-CD PIC S9(04) COMP VALUE +462.DTSBX462
|
|
00079 DTSBX462
|
|
00080 05 WRK-MOD-NAME PIC X(08) VALUE 'DTSBX462'.DTSBX462
|
|
00081 DTSBX462
|
|
00082 05 WRK-EMP-IN-CNT PIC S9(07) COMP-3 VALUE 0. DTSBX462
|
|
00083 05 WRK-TAX-IN-CNT PIC S9(07) COMP-3 VALUE 0. DTSBX462
|
|
00084 05 WRK-EMP-OUT-CNT PIC S9(07) COMP-3 VALUE 0. DTSBX462
|
|
00085 05 WRK-ADDR-OUT-CNT PIC S9(07) COMP-3 VALUE 0. DTSBX462
|
|
00086 05 WRK-EMP-UNMATCH-CNT PIC S9(07) COMP-3 VALUE 0. DTSBX462
|
|
00087 05 WRK-TAX-UNMATCH-CNT PIC S9(07) COMP-3 VALUE 0. DTSBX462
|
|
00088 05 WRK-EMP-TAX-MATCH-CNT PIC S9(07) COMP-3 VALUE 0. DTSBX462
|
|
00089 DTSBX462
|
|
00090 05 EMP-INP-STATUS PIC X(02). DTSBX462
|
|
00091 88 EMP-INP-STATUS-OK-88 VALUE '00', '97'. DTSBX462
|
|
00092 88 EMP-INP-STATUS-EOF-88 VALUE '10'. DTSBX462
|
|
00093 DTSBX462
|
|
00094 05 TAX-INP-STATUS PIC X(02). DTSBX462
|
|
00095 88 TAX-INP-STATUS-OK-88 VALUE '00', '97'. DTSBX462
|
|
00096 88 TAX-INP-STATUS-EOF-88 VALUE '10'. DTSBX462
|
|
00097 DTSBX462
|
|
00098 05 EMP-OUTP-STATUS PIC X(02). DTSBX462
|
|
00099 88 EMP-OUTP-STATUS-OK-88 VALUE '00', '97'. DTSBX462
|
|
00100 DTSBX462
|
|
00101 05 ADDR-OUTP-STATUS PIC X(02). DTSBX462
|
|
00102 88 ADDR-OUTP-STATUS-OK-88 VALUE '00', '97'. DTSBX462
|
|
00103 DTSBX462
|
|
00104 05 WRK-ERROR-IND PIC X(01). DTSBX462
|
|
00105 88 WRK-ERROR-YES-88 VALUE 'Y'. DTSBX462
|
|
00106 88 WRK-ERROR-NO-88 VALUE 'N'. DTSBX462
|
|
00107 DTSBX462
|
|
00108 05 WRK-EMP-NO PIC 9(06) VALUE 0. DTSBX462
|
|
00109 DTSBX462
|
|
00110 05 WRK-FEIN PIC 9(09) VALUE 0. DTSBX462
|
|
00111 05 SAVE-TAX-FEIN PIC 9(09) VALUE 0. DTSBX462
|
|
00112 05 SAVE-EMP-FEIN PIC 9(09) VALUE 0. DTSBX462
|
|
00113 DTSBX462
|
|
00114 05 WRK-PHONE. DTSBX462
|
|
00115 10 WRK-PHONE-AREA PIC X(03). DTSBX462
|
|
00116 10 WRK-PHONE-PFX PIC X(03). DTSBX462
|
|
00117 10 WRK-PHONE-SFX PIC X(04). DTSBX462
|
|
00118 10 WRK-PHONE-EXT PIC X(05). DTSBX462
|
|
00119 DTSBX462
|
|
00120 05 WRK-XVAD-PHONE. DTSBX462
|
|
00121 10 WRK-XVAD-PHONE-AREA PIC X(03). DTSBX462
|
|
00122 10 WRK-XVAD-PHONE-FILLER1 PIC X(01) VALUE SPACE. DTSBX462
|
|
00123 10 WRK-XVAD-PHONE-PFX PIC X(03). DTSBX462
|
|
00124 10 WRK-XVAD-PHONE-FILLER2 PIC X(01) VALUE SPACE. DTSBX462
|
|
00125 10 WRK-XVAD-PHONE-SFX PIC X(04). DTSBX462
|
|
00126 10 WRK-XVAD-PHONE-FILLER3 PIC X(01) VALUE SPACE. DTSBX462
|
|
00127 10 WRK-XVAD-PHONE-EXT PIC X(05). DTSBX462
|
|
00128 DTSBX462
|
|
00129 05 WRK-TRACE-IND PIC X(01) VALUE SPACES.DTSBX462
|
|
00130 DTSBX462
|
|
00131 01 EMP-INPUT-RECORD. DTSBX462
|
|
00132 05 EMPL-FEIN PIC 9(09). DTSBX462
|
|
00133 05 EMPL-EMP-NO PIC 9(06). DTSBX462
|
|
00134 05 EMPL-SOURCE PIC X(01). DTSBX462
|
|
00135 88 EMPL-SOURCE-DOES-88 VALUE '0'. DTSBX462
|
|
00136 88 EMPL-SOURCE-NEWHIRE-88 VALUE '1'. DTSBX462
|
|
00137 88 EMPL-SOURCE-OTR-88 VALUE '2'. DTSBX462
|
|
00138 05 EMPL-EMP-NAME PIC X(70). DTSBX462
|
|
00139 05 EMPL-ADDRESS-1. DTSBX462
|
|
00140 10 EMPL-STREET-1 PIC X(60). DTSBX462
|
|
00141 10 EMPL-CITY-1 PIC X(20). DTSBX462
|
|
00142 10 EMPL-STATE-1 PIC X(02). DTSBX462
|
|
00143 10 EMPL-ZIP-1 PIC X(10). DTSBX462
|
|
00144 05 EMPL-PHONE-1 PIC X(10). DTSBX462
|
|
00145 05 EMPL-ADDRESS-2. DTSBX462
|
|
00146 10 EMPL-STREET-2 PIC X(60). DTSBX462
|
|
00147 10 EMPL-CITY-2 PIC X(20). DTSBX462
|
|
00148 10 EMPL-STATE-2 PIC X(02). DTSBX462
|
|
00149 10 EMPL-ZIP-2 PIC X(10). DTSBX462
|
|
00150 05 EMPL-PHONE-2 PIC X(10). DTSBX462
|
|
00151 DTSBX462
|
|
00152 01 TAX-INPUT-RECORD. DTSBX462
|
|
00153 ++INCLUDE DTSIXTRO DTSBX462
|
|
00154 DTSBX462
|
|
00155 01 WRK-XVEM-REC. DTSBX462
|
|
00156 ++INCLUDE DTSIXVEM DTSBX462
|
|
00157 DTSBX462
|
|
00158 01 WRK-XVAD-REC. DTSBX462
|
|
00159 ++INCLUDE DTSIXVAD DTSBX462
|
|
00160 EJECT DTSBX462
|
|
00161 DTSBX462
|
|
00162 PROCEDURE DIVISION. DTSBX462
|
|
00163 DTSBX462
|
|
00164 DTSBX462-MAIN. DTSBX462
|
|
00165 PERFORM I1000-INITIATE THRU I1000-EXIT. DTSBX462
|
|
00166 DTSBX462
|
|
00167 PERFORM P1000-MATCH-PROCESS THRU P1000-EXIT UNTIL DTSBX462
|
|
00168 EMP-INP-STATUS-EOF-88 AND TAX-INP-STATUS-EOF-88. DTSBX462
|
|
00169 DTSBX462
|
|
00170 PERFORM T1000-TERMINATE THRU T1000-EXIT. DTSBX462
|
|
00171 DTSBX462
|
|
00172 DTSBX462-MAIN-EXIT. DTSBX462
|
|
00173 GOBACK. DTSBX462
|
|
00174 DTSBX462
|
|
00175 I1000-INITIATE. DTSBX462
|
|
00176 DTSBX462
|
|
00177 OPEN INPUT EMP-INPUT-FILE. DTSBX462
|
|
00178 IF NOT EMP-INP-STATUS-OK-88 DTSBX462
|
|
00179 DISPLAY 'CANNOT OPEN EMP INPUT FILE ' EMP-INP-STATUS DTSBX462
|
|
00180 PERFORM S999-ABEND THRU S999-EXIT DTSBX462
|
|
00181 END-IF. DTSBX462
|
|
00182 DTSBX462
|
|
00183 OPEN INPUT TAX-INPUT-FILE. DTSBX462
|
|
00184 IF NOT TAX-INP-STATUS-OK-88 DTSBX462
|
|
00185 DISPLAY 'CANNOT OPEN TAX INPUT FILE ' TAX-INP-STATUS DTSBX462
|
|
00186 PERFORM S999-ABEND THRU S999-EXIT DTSBX462
|
|
00187 END-IF. DTSBX462
|
|
00188 DTSBX462
|
|
00189 OPEN OUTPUT EMP-OUTPUT-FILE. DTSBX462
|
|
00190 IF NOT EMP-OUTP-STATUS-OK-88 DTSBX462
|
|
00191 DISPLAY 'CANNOT OPEN EMP OUTPUT FILE ' DTSBX462
|
|
00192 EMP-OUTP-STATUS DTSBX462
|
|
00193 PERFORM S999-ABEND THRU S999-EXIT DTSBX462
|
|
00194 END-IF. DTSBX462
|
|
00195 DTSBX462
|
|
00196 OPEN OUTPUT ADDR-OUTPUT-FILE. DTSBX462
|
|
00197 IF NOT ADDR-OUTP-STATUS-OK-88 DTSBX462
|
|
00198 DISPLAY 'CANNOT OPEN ADDR OUTPUT FILE ' DTSBX462
|
|
00199 ADDR-OUTP-STATUS DTSBX462
|
|
00200 PERFORM S999-ABEND THRU S999-EXIT DTSBX462
|
|
00201 END-IF. DTSBX462
|
|
00202 DTSBX462
|
|
00203 PERFORM P3000-READ-TAX-FILE THRU P3000-EXIT. DTSBX462
|
|
00204 PERFORM P4000-READ-EMP-FILE THRU P4000-EXIT. DTSBX462
|
|
00205 DTSBX462
|
|
00206 I1000-EXIT. DTSBX462
|
|
00207 EXIT. DTSBX462
|
|
00208 DTSBX462
|
|
00209 P1000-MATCH-PROCESS. DTSBX462
|
|
00210 DTSBX462
|
|
00211 IF XTRO-FEIN < EMPL-FEIN DTSBX462
|
|
00212 MOVE XTRO-FEIN TO WRK-FEIN DTSBX462
|
|
00213 ADD +1 TO WRK-TAX-UNMATCH-CNT DTSBX462
|
|
00214 IF XTRO-FEIN NOT = SAVE-TAX-FEIN DTSBX462
|
|
00215 PERFORM P2000-WRITE-FROM-TAX THRU P2000-EXIT DTSBX462
|
|
00216 PERFORM P2200-WRITE-TAX-ADDR THRU P2200-EXIT DTSBX462
|
|
00217 ELSE DTSBX462
|
|
00218 PERFORM P2200-WRITE-TAX-ADDR THRU P2200-EXIT DTSBX462
|
|
00219 END-IF DTSBX462
|
|
00220 MOVE XTRO-FEIN TO SAVE-TAX-FEIN DTSBX462
|
|
00221 IF TAX-INP-STATUS-EOF-88 DTSBX462
|
|
00222 PERFORM P4000-READ-EMP-FILE THRU P4000-EXIT DTSBX462
|
|
00223 ELSE DTSBX462
|
|
00224 PERFORM P3000-READ-TAX-FILE THRU P3000-EXIT DTSBX462
|
|
00225 END-IF DTSBX462
|
|
00226 ELSE DTSBX462
|
|
00227 IF XTRO-FEIN = EMPL-FEIN DTSBX462
|
|
00228 MOVE XTRO-FEIN TO WRK-FEIN DTSBX462
|
|
00229 ADD +1 TO WRK-EMP-TAX-MATCH-CNT DTSBX462
|
|
00230 IF XTRO-FEIN NOT = SAVE-TAX-FEIN DTSBX462
|
|
00231 PERFORM P2000-WRITE-FROM-TAX THRU P2000-EXIT DTSBX462
|
|
00232 PERFORM P2200-WRITE-TAX-ADDR THRU P2200-EXIT DTSBX462
|
|
00233 PERFORM P3200-WRITE-EMP-ADDR THRU P3200-EXIT DTSBX462
|
|
00234 ELSE DTSBX462
|
|
00235 PERFORM P2200-WRITE-TAX-ADDR THRU P2200-EXIT DTSBX462
|
|
00236 PERFORM P3200-WRITE-EMP-ADDR THRU P3200-EXIT DTSBX462
|
|
00237 END-IF DTSBX462
|
|
00238 MOVE XTRO-FEIN TO SAVE-TAX-FEIN DTSBX462
|
|
00239 MOVE EMPL-FEIN TO SAVE-EMP-FEIN DTSBX462
|
|
00240 PERFORM P3000-READ-TAX-FILE THRU P3000-EXIT DTSBX462
|
|
00241 PERFORM P4000-READ-EMP-FILE THRU P4000-EXIT DTSBX462
|
|
00242 ELSE DTSBX462
|
|
00243 MOVE EMPL-FEIN TO WRK-FEIN DTSBX462
|
|
00244 ADD +1 TO WRK-EMP-UNMATCH-CNT DTSBX462
|
|
00245 IF EMPL-FEIN NOT = SAVE-EMP-FEIN DTSBX462
|
|
00246 PERFORM P3100-WRITE-FROM-EMPL THRU P3100-EXIT DTSBX462
|
|
00247 PERFORM P3200-WRITE-EMP-ADDR THRU P3200-EXIT DTSBX462
|
|
00248 ELSE DTSBX462
|
|
00249 PERFORM P3200-WRITE-EMP-ADDR THRU P3200-EXIT DTSBX462
|
|
00250 END-IF DTSBX462
|
|
00251 MOVE EMPL-FEIN TO SAVE-EMP-FEIN DTSBX462
|
|
00252 PERFORM P4000-READ-EMP-FILE THRU P4000-EXIT DTSBX462
|
|
00253 END-IF DTSBX462
|
|
00254 END-IF. DTSBX462
|
|
00255 DTSBX462
|
|
00256 P1000-EXIT. DTSBX462
|
|
00257 EXIT. DTSBX462
|
|
00258 DTSBX462
|
|
00259 P2000-WRITE-FROM-TAX. DTSBX462
|
|
00260 MOVE WRK-FEIN TO XVEM-FEIN. DTSBX462
|
|
00261 SET XVEM-SOURCE-DOES-88 TO TRUE. DTSBX462
|
|
00262 MOVE XTRO-EMP-NO TO XVEM-EMP-NO. DTSBX462
|
|
00263 MOVE XTRO-EMP-NAME TO XVEM-EMP-NAME. DTSBX462
|
|
00264 INSPECT XVEM-EMP-NAME REPLACING ALL ',' BY SPACE. DTSBX462
|
|
00265 DTSBX462
|
|
00266 PERFORM S1310-WRITE-OUTPUT-EMP THRU S1310-EXIT. DTSBX462
|
|
00267 DTSBX462
|
|
00268 P2000-EXIT. DTSBX462
|
|
00269 EXIT. DTSBX462
|
|
00270 DTSBX462
|
|
00271 P2200-WRITE-TAX-ADDR. DTSBX462
|
|
00272 MOVE WRK-FEIN TO XVAD-FEIN. DTSBX462
|
|
00273 SET XVAD-SOURCE-DOES-88 TO TRUE. DTSBX462
|
|
00274 DTSBX462
|
|
00275 MOVE XTRO-STREET-1 TO XVAD-STREET. DTSBX462
|
|
00276 INSPECT XVAD-STREET REPLACING ALL ',' BY SPACE. DTSBX462
|
|
00277 DTSBX462
|
|
00278 MOVE XTRO-CITY-1 TO XVAD-CITY. DTSBX462
|
|
00279 MOVE XTRO-STATE-1 TO XVAD-STATE. DTSBX462
|
|
00280 MOVE XTRO-ZIP-1 TO XVAD-ZIP. DTSBX462
|
|
00281 DTSBX462
|
|
00282 MOVE XTRO-PHONE-1 TO WRK-PHONE. DTSBX462
|
|
00283 PERFORM S2100-FORMAT-PHONE-TAX THRU S2100-EXIT. DTSBX462
|
|
00284 MOVE WRK-XVAD-PHONE TO XVAD-PHONE. DTSBX462
|
|
00285 DTSBX462
|
|
00286 PERFORM S1410-WRITE-OUTPUT-ADDR THRU S1410-EXIT. DTSBX462
|
|
00287 MOVE SPACES TO XVAD-PHONE. DTSBX462
|
|
00288 DTSBX462
|
|
00289 IF (XTRO-STREET-2 > SPACES DTSBX462
|
|
00290 AND XTRO-CITY-2 > SPACES DTSBX462
|
|
00291 AND XTRO-STATE-2 > SPACES) DTSBX462
|
|
00292 MOVE XTRO-STREET-2 TO XVAD-STREET DTSBX462
|
|
00293 INSPECT XVAD-STREET REPLACING ALL ',' BY SPACE DTSBX462
|
|
00294 MOVE XTRO-CITY-2 TO XVAD-CITY DTSBX462
|
|
00295 MOVE XTRO-STATE-2 TO XVAD-STATE DTSBX462
|
|
00296 MOVE XTRO-ZIP-2 TO XVAD-ZIP DTSBX462
|
|
00297 MOVE XTRO-PHONE-2 TO WRK-PHONE DTSBX462
|
|
00298 PERFORM S2100-FORMAT-PHONE-TAX THRU S2100-EXIT DTSBX462
|
|
00299 MOVE WRK-XVAD-PHONE TO XVAD-PHONE DTSBX462
|
|
00300 PERFORM S1410-WRITE-OUTPUT-ADDR THRU S1410-EXIT DTSBX462
|
|
00301 MOVE SPACES TO XVAD-PHONE DTSBX462
|
|
00302 END-IF. DTSBX462
|
|
00303 DTSBX462
|
|
00304 P2200-EXIT. DTSBX462
|
|
00305 EXIT. DTSBX462
|
|
00306 DTSBX462
|
|
00307 P3000-READ-TAX-FILE. DTSBX462
|
|
00308 *& DTSBX462
|
|
00309 IF TAX-INP-STATUS-EOF-88 DTSBX462
|
|
00310 DISPLAY 'EOF XTRO ' XTRO-FEIN ' EMP ' EMPL-FEIN DTSBX462
|
|
00311 GO TO P3000-EXIT DTSBX462
|
|
00312 END-IF. DTSBX462
|
|
00313 *& DTSBX462
|
|
00314 DTSBX462
|
|
00315 READ TAX-INPUT-FILE INTO TAX-INPUT-RECORD. DTSBX462
|
|
00316 DTSBX462
|
|
00317 IF TAX-INP-STATUS-OK-88 DTSBX462
|
|
00318 NEXT SENTENCE DTSBX462
|
|
00319 ELSE DTSBX462
|
|
00320 IF TAX-INP-STATUS-EOF-88 DTSBX462
|
|
00321 *** MOVE 999999999 TO XTRO-FEIN DTSBX462
|
|
00322 GO TO P3000-EXIT DTSBX462
|
|
00323 ELSE DTSBX462
|
|
00324 DISPLAY 'BAD TAX FILE READ ' TAX-INP-STATUS DTSBX462
|
|
00325 PERFORM S999-ABEND THRU S999-EXIT. DTSBX462
|
|
00326 DTSBX462
|
|
00327 ADD +1 TO WRK-TAX-IN-CNT. DTSBX462
|
|
00328 DTSBX462
|
|
00329 P3000-EXIT. DTSBX462
|
|
00330 EXIT. DTSBX462
|
|
00331 DTSBX462
|
|
00332 P3100-WRITE-FROM-EMPL. DTSBX462
|
|
00333 MOVE WRK-FEIN TO XVEM-FEIN. DTSBX462
|
|
00334 MOVE EMPL-SOURCE TO XVEM-SOURCE. DTSBX462
|
|
00335 MOVE SPACES TO XVEM-EMP-NO. DTSBX462
|
|
00336 MOVE EMPL-EMP-NAME TO XVEM-EMP-NAME. DTSBX462
|
|
00337 INSPECT XVEM-EMP-NAME REPLACING ALL ',' BY SPACE. DTSBX462
|
|
00338 DTSBX462
|
|
00339 PERFORM S1310-WRITE-OUTPUT-EMP THRU S1310-EXIT. DTSBX462
|
|
00340 DTSBX462
|
|
00341 P3100-EXIT. DTSBX462
|
|
00342 EXIT. DTSBX462
|
|
00343 DTSBX462
|
|
00344 P3200-WRITE-EMP-ADDR. DTSBX462
|
|
00345 MOVE WRK-FEIN TO XVAD-FEIN. DTSBX462
|
|
00346 MOVE EMPL-SOURCE TO XVAD-SOURCE. DTSBX462
|
|
00347 DTSBX462
|
|
00348 MOVE EMPL-STREET-1 TO XVAD-STREET. DTSBX462
|
|
00349 INSPECT XVAD-STREET REPLACING ALL ',' BY SPACE. DTSBX462
|
|
00350 MOVE EMPL-CITY-1 TO XVAD-CITY. DTSBX462
|
|
00351 MOVE EMPL-STATE-1 TO XVAD-STATE. DTSBX462
|
|
00352 MOVE EMPL-ZIP-1 TO XVAD-ZIP. DTSBX462
|
|
00353 MOVE EMPL-PHONE-1 TO WRK-PHONE. DTSBX462
|
|
00354 PERFORM S2100-FORMAT-PHONE-TAX THRU S2100-EXIT. DTSBX462
|
|
00355 MOVE WRK-XVAD-PHONE TO XVAD-PHONE. DTSBX462
|
|
00356 DTSBX462
|
|
00357 PERFORM S1410-WRITE-OUTPUT-ADDR THRU S1410-EXIT. DTSBX462
|
|
00358 MOVE SPACES TO XVAD-PHONE. DTSBX462
|
|
00359 DTSBX462
|
|
00360 IF (EMPL-STREET-2 > SPACES DTSBX462
|
|
00361 AND EMPL-CITY-2 > SPACES DTSBX462
|
|
00362 AND EMPL-STATE-2 > SPACES) DTSBX462
|
|
00363 MOVE EMPL-STREET-2 TO XVAD-STREET DTSBX462
|
|
00364 INSPECT XVAD-STREET REPLACING ALL ',' BY SPACE DTSBX462
|
|
00365 MOVE EMPL-CITY-2 TO XVAD-CITY DTSBX462
|
|
00366 MOVE EMPL-STATE-2 TO XVAD-STATE DTSBX462
|
|
00367 MOVE EMPL-ZIP-2 TO XVAD-ZIP DTSBX462
|
|
00368 MOVE EMPL-PHONE-2 TO WRK-PHONE DTSBX462
|
|
00369 PERFORM S2100-FORMAT-PHONE-TAX THRU S2100-EXIT DTSBX462
|
|
00370 MOVE WRK-XVAD-PHONE TO XVAD-PHONE DTSBX462
|
|
00371 PERFORM S1410-WRITE-OUTPUT-ADDR THRU S1410-EXIT DTSBX462
|
|
00372 MOVE SPACES TO XVAD-PHONE DTSBX462
|
|
00373 END-IF. DTSBX462
|
|
00374 DTSBX462
|
|
00375 P3200-EXIT. DTSBX462
|
|
00376 EXIT. DTSBX462
|
|
00377 DTSBX462
|
|
00378 P4000-READ-EMP-FILE. DTSBX462
|
|
00379 DTSBX462
|
|
00380 READ EMP-INPUT-FILE INTO EMP-INPUT-RECORD. DTSBX462
|
|
00381 DTSBX462
|
|
00382 IF EMP-INP-STATUS-OK-88 DTSBX462
|
|
00383 NEXT SENTENCE DTSBX462
|
|
00384 ELSE DTSBX462
|
|
00385 IF EMP-INP-STATUS-EOF-88 DTSBX462
|
|
00386 MOVE 999999999 TO EMPL-FEIN DTSBX462
|
|
00387 GO TO P4000-EXIT DTSBX462
|
|
00388 ELSE DTSBX462
|
|
00389 DISPLAY 'BAD EMP FILE READ ' EMP-INP-STATUS DTSBX462
|
|
00390 PERFORM S999-ABEND THRU S999-EXIT. DTSBX462
|
|
00391 DTSBX462
|
|
00392 ADD +1 TO WRK-EMP-IN-CNT. DTSBX462
|
|
00393 DTSBX462
|
|
00394 P4000-EXIT. DTSBX462
|
|
00395 EXIT. DTSBX462
|
|
00396 DTSBX462
|
|
00397 T1000-TERMINATE. DTSBX462
|
|
00398 DTSBX462
|
|
00399 DISPLAY ' '. DTSBX462
|
|
00400 DTSBX462
|
|
00401 DISPLAY '*** DTSBX462 TERMINATION STATISTICS ***'. DTSBX462
|
|
00402 DTSBX462
|
|
00403 DISPLAY ' '. DTSBX462
|
|
00404 DTSBX462
|
|
00405 DISPLAY 'NUMBER OF EMP INPUT RECORDS READ : ' DTSBX462
|
|
00406 WRK-EMP-IN-CNT. DTSBX462
|
|
00407 DTSBX462
|
|
00408 DISPLAY 'NUMBER OF TAX INPUT RECORDS READ : ' DTSBX462
|
|
00409 WRK-TAX-IN-CNT. DTSBX462
|
|
00410 DTSBX462
|
|
00411 DISPLAY 'NUMBER OF EMP OUTPUT RECORDS WRITTEN : ' DTSBX462
|
|
00412 WRK-EMP-OUT-CNT. DTSBX462
|
|
00413 DTSBX462
|
|
00414 DISPLAY 'NUMBER OF ADDR OUTPUT RECORDS WRITTEN : ' DTSBX462
|
|
00415 WRK-ADDR-OUT-CNT. DTSBX462
|
|
00416 DTSBX462
|
|
00417 DISPLAY ' '. DTSBX462
|
|
00418 DTSBX462
|
|
00419 DISPLAY 'NUMBER OF EMP AND TAX RECORDS MATCHED : ' DTSBX462
|
|
00420 WRK-EMP-TAX-MATCH-CNT. DTSBX462
|
|
00421 DTSBX462
|
|
00422 DISPLAY 'NUMBER OF EMP RECORDS UN-MATCHED : ' DTSBX462
|
|
00423 WRK-EMP-UNMATCH-CNT. DTSBX462
|
|
00424 DTSBX462
|
|
00425 DISPLAY 'NUMBER OF TAX RECORDS UN-MATCHED : ' DTSBX462
|
|
00426 WRK-TAX-UNMATCH-CNT. DTSBX462
|
|
00427 DTSBX462
|
|
00428 CLOSE EMP-INPUT-FILE DTSBX462
|
|
00429 TAX-INPUT-FILE DTSBX462
|
|
00430 EMP-OUTPUT-FILE DTSBX462
|
|
00431 ADDR-OUTPUT-FILE. DTSBX462
|
|
00432 DTSBX462
|
|
00433 T1000-EXIT. DTSBX462
|
|
00434 EXIT. DTSBX462
|
|
00435 DTSBX462
|
|
00436 S1310-WRITE-OUTPUT-EMP. DTSBX462
|
|
00437 WRITE EMP-OUTPUT-REC FROM WRK-XVEM-REC. DTSBX462
|
|
00438 IF NOT EMP-OUTP-STATUS-OK-88 DTSBX462
|
|
00439 DISPLAY 'S1310 BAD WRITE ON EMP OUTPUT ' DTSBX462
|
|
00440 EMP-OUTP-STATUS DTSBX462
|
|
00441 PERFORM S999-ABEND THRU S999-EXIT DTSBX462
|
|
00442 ELSE DTSBX462
|
|
00443 ADD +1 TO WRK-EMP-OUT-CNT DTSBX462
|
|
00444 END-IF. DTSBX462
|
|
00445 DTSBX462
|
|
00446 S1310-EXIT. DTSBX462
|
|
00447 EXIT. DTSBX462
|
|
00448 DTSBX462
|
|
00449 S1410-WRITE-OUTPUT-ADDR. DTSBX462
|
|
00450 WRITE ADDR-OUTPUT-REC FROM WRK-XVAD-REC. DTSBX462
|
|
00451 IF NOT ADDR-OUTP-STATUS-OK-88 DTSBX462
|
|
00452 DISPLAY 'S1410 BAD WRITE ON ADDR OUTPUT ' DTSBX462
|
|
00453 ADDR-OUTP-STATUS DTSBX462
|
|
00454 PERFORM S999-ABEND THRU S999-EXIT DTSBX462
|
|
00455 ELSE DTSBX462
|
|
00456 ADD +1 TO WRK-ADDR-OUT-CNT DTSBX462
|
|
00457 END-IF. DTSBX462
|
|
00458 DTSBX462
|
|
00459 S1410-EXIT. DTSBX462
|
|
00460 EXIT. DTSBX462
|
|
00461 DTSBX462
|
|
00462 S2000-INIT-OUTPUT. DTSBX462
|
|
00463 MOVE ZEROS TO XVEM-FEIN DTSBX462
|
|
00464 XVAD-FEIN. DTSBX462
|
|
00465 DTSBX462
|
|
00466 MOVE SPACES TO XVEM-EMP-NO DTSBX462
|
|
00467 XVEM-EMP-NAME DTSBX462
|
|
00468 XVAD-STREET DTSBX462
|
|
00469 XVAD-CITY DTSBX462
|
|
00470 XVAD-STATE DTSBX462
|
|
00471 XVAD-ZIP DTSBX462
|
|
00472 XVAD-PHONE. DTSBX462
|
|
00473 S2000-EXIT. DTSBX462
|
|
00474 EXIT. DTSBX462
|
|
00475 DTSBX462
|
|
00476 S2100-FORMAT-PHONE-TAX. DTSBX462
|
|
00477 IF (WRK-PHONE-AREA = ZERO OR SPACE OR LOW-VALUES) DTSBX462
|
|
00478 OR (WRK-PHONE-PFX = ZERO OR SPACE OR LOW-VALUES) DTSBX462
|
|
00479 OR (WRK-PHONE-SFX = ZERO OR SPACE OR LOW-VALUES) DTSBX462
|
|
00480 MOVE SPACES TO WRK-XVAD-PHONE DTSBX462
|
|
00481 GO TO S2100-EXIT DTSBX462
|
|
00482 ELSE DTSBX462
|
|
00483 MOVE '-' TO WRK-XVAD-PHONE-FILLER1 DTSBX462
|
|
00484 WRK-XVAD-PHONE-FILLER2 DTSBX462
|
|
00485 END-IF. DTSBX462
|
|
00486 DTSBX462
|
|
00487 MOVE WRK-PHONE-AREA TO WRK-XVAD-PHONE-AREA. DTSBX462
|
|
00488 MOVE WRK-PHONE-PFX TO WRK-XVAD-PHONE-PFX. DTSBX462
|
|
00489 MOVE WRK-PHONE-SFX TO WRK-XVAD-PHONE-SFX. DTSBX462
|
|
00490 IF WRK-PHONE-EXT > ZERO DTSBX462
|
|
00491 MOVE '-' TO WRK-XVAD-PHONE-FILLER3 DTSBX462
|
|
00492 MOVE WRK-PHONE-EXT TO WRK-XVAD-PHONE-EXT DTSBX462
|
|
00493 ELSE DTSBX462
|
|
00494 MOVE ' ' TO WRK-XVAD-PHONE-FILLER3 DTSBX462
|
|
00495 END-IF. DTSBX462
|
|
00496 DTSBX462
|
|
00497 S2100-EXIT. DTSBX462
|
|
00498 EXIT. DTSBX462
|
|
00499 DTSBX462
|
|
00500 S999-ABEND. DTSBX462
|
|
00501 CALL 'DTSBU999' USING WRK-ABEND-CD. DTSBX462
|
|
00502 S999-EXIT. DTSBX462
|
|
00503 EXIT. DTSBX462
|