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

255 lines
20 KiB
COBOL

00001 IDENTIFICATION DIVISION. 06/13/05
00002 PROGRAM-ID. DTSBX463. DTSBX463
00003 AUTHOR. NGC. LV001
00004 DATE-WRITTEN. MARCH 2005. DTSBX463
00005 DATE-COMPILED. DTSBX463
00006 SKIP3 DTSBX463
00007 ***** DTSBX463
00008 * DTSBX463
00009 * FUNCTION: ELIMINATE DUPLICATE ADDRESSES FROM VOS OUTPUT DTSBX463
00010 * FILE. WHEN DUPLICATES ARE FOUND, USE THE FOLLOWINGDTSBX463
00011 * ORDER OF PRECEDENCE: DTSBX463
00012 * DOES ADDRESS DTSBX463
00013 * NEW HIRE ADDRESS DTSBX463
00014 * OTR ADDRESS DTSBX463
00015 * DTSBX463
00016 * MODIFICATION LOG: DTSBX463
00017 * DTSBX463
00018 * 01/11/2005 INITIAL DEVELOPMENT. DTSBX463
00019 * REFERENCE: PROGRAMMER: GD DTSBX463
00020 * DTSBX463
00021 ***** DTSBX463
00022 SKIP3 DTSBX463
00023 ENVIRONMENT DIVISION. DTSBX463
00024 SKIP2 DTSBX463
00025 INPUT-OUTPUT SECTION. DTSBX463
00026 FILE-CONTROL. DTSBX463
00027 SELECT ADDR-INPUT-FILE DTSBX463
00028 ASSIGN TO ADRINP DTSBX463
00029 FILE STATUS IS ADDR-INP-STATUS. DTSBX463
00030 DTSBX463
00031 SELECT ADDR-OUTPUT-FILE DTSBX463
00032 ASSIGN TO ADDROUTP DTSBX463
00033 FILE STATUS IS ADDR-OUTP-STATUS. DTSBX463
00034 DTSBX463
00035 DATA DIVISION. DTSBX463
00036 SKIP3 DTSBX463
00037 FILE SECTION. DTSBX463
00038 FD ADDR-INPUT-FILE DTSBX463
00039 LABEL RECORDS ARE STANDARD. DTSBX463
00040 01 ADDR-INPUT-REC PIC X(128). DTSBX463
00041 DTSBX463
00042 FD ADDR-OUTPUT-FILE DTSBX463
00043 LABEL RECORDS ARE STANDARD. DTSBX463
00044 01 ADDR-OUTPUT-REC PIC X(128). DTSBX463
00045 DTSBX463
00046 EJECT DTSBX463
00047 WORKING-STORAGE SECTION. DTSBX463
000475 77 PAN-VALET PICTURE X(24) VALUE '001DTSBX463 06/13/05'. DTSBX463
00048 SKIP3 DTSBX463
00049 01 WRK-AREA. DTSBX463
00050 05 WRK-ABEND-CD PIC S9(04) COMP VALUE +462.DTSBX463
00051 DTSBX463
00052 05 WRK-MOD-NAME PIC X(08) VALUE 'DTSBX462'.DTSBX463
00053 DTSBX463
00054 05 WRK-INPUT-ADDR-CNT PIC S9(07) COMP-3 VALUE 0. DTSBX463
00055 05 WRK-OUTPUT-ADDR-CNT PIC S9(07) COMP-3 VALUE 0. DTSBX463
00056 DTSBX463
00057 05 ADDR-INP-STATUS PIC X(02). DTSBX463
00058 88 ADDR-INP-STATUS-OK-88 VALUE '00', '97'. DTSBX463
00059 88 ADDR-INP-STATUS-EOF-88 VALUE '10'. DTSBX463
00060 DTSBX463
00061 05 ADDR-OUTP-STATUS PIC X(02). DTSBX463
00062 88 ADDR-OUTP-STATUS-OK-88 VALUE '00', '97'. DTSBX463
00063 DTSBX463
00064 05 WRK-ERROR-IND PIC X(01). DTSBX463
00065 88 WRK-ERROR-YES-88 VALUE 'Y'. DTSBX463
00066 88 WRK-ERROR-NO-88 VALUE 'N'. DTSBX463
00067 DTSBX463
00068 05 WRK-STREET PIC X(60) VALUE SPACES. DTSBX463
00069 05 WRK-CITY PIC X(25) VALUE SPACES. DTSBX463
00070 DTSBX463
00071 05 WRK-FEIN PIC 9(09) VALUE 0. DTSBX463
00072 DTSBX463
00073 01 WRK-XVAD-REC. DTSBX463
00074 ++INCLUDE DTSIXVAD DTSBX463
00075 DTSBX463
00076 PROCEDURE DIVISION. DTSBX463
00077 DTSBX463
00078 DTSBX463-MAIN. DTSBX463
00079 PERFORM I0000-INITIATE THRU I0000-EXIT. DTSBX463
00080 IF WRK-ERROR-YES-88 DTSBX463
00081 GO TO DTSBX463-MAIN-EXIT. DTSBX463
00082 DTSBX463
00083 PERFORM P0000-PROCESS THRU P0000-EXIT. DTSBX463
00084 DTSBX463
00085 PERFORM T0000-TERMINATE THRU T0000-EXIT. DTSBX463
00086 DTSBX463
00087 DTSBX463-MAIN-EXIT. DTSBX463
00088 GOBACK. DTSBX463
00089 EJECT DTSBX463
00090 I0000-INITIATE. DTSBX463
00091 SET WRK-ERROR-NO-88 TO TRUE. DTSBX463
00092 DTSBX463
00093 PERFORM I1000-OPEN-FILES THRU I1000-EXIT. DTSBX463
00094 DTSBX463
00095 I0000-EXIT. DTSBX463
00096 EXIT. DTSBX463
00097 I1000-OPEN-FILES. DTSBX463
00098 PERFORM S1300-OPEN-ADDR-INPUT THRU S1300-EXIT. DTSBX463
00099 IF WRK-ERROR-YES-88 DTSBX463
00100 GO TO I1000-EXIT DTSBX463
00101 END-IF. DTSBX463
00102 DTSBX463
00103 PERFORM S1400-OPEN-ADDR-OUTPUT THRU S1400-EXIT. DTSBX463
00104 IF WRK-ERROR-YES-88 DTSBX463
00105 SET WRK-ERROR-YES-88 TO TRUE DTSBX463
00106 GO TO I1000-EXIT DTSBX463
00107 END-IF. DTSBX463
00108 DTSBX463
00109 I1000-EXIT. DTSBX463
00110 EXIT. DTSBX463
00111 DTSBX463
00112 P0000-PROCESS. DTSBX463
00113 PERFORM S1310-READ-ADDR-INPUT THRU S1310-EXIT. DTSBX463
00114 IF NOT ADDR-INP-STATUS-OK-88 DTSBX463
00115 DISPLAY 'BAD FIRST READ OF INPUT FILE ' DTSBX463
00116 ADDR-INP-STATUS DTSBX463
00117 GO TO P0000-EXIT DTSBX463
00118 ELSE DTSBX463
00119 MOVE XVAD-FEIN TO WRK-FEIN DTSBX463
00120 MOVE XVAD-STREET TO WRK-STREET DTSBX463
00121 MOVE XVAD-CITY TO WRK-CITY DTSBX463
00122 PERFORM S1410-WRITE-OUTPUT-ADDR THRU S1410-EXIT DTSBX463
00123 END-IF. DTSBX463
00124 DTSBX463
00125 PERFORM P1000-ELIM-DUPS THRU P1000-EXIT DTSBX463
00126 UNTIL ADDR-INP-STATUS-EOF-88. DTSBX463
00127 DTSBX463
00128 P0000-EXIT. DTSBX463
00129 EXIT. DTSBX463
00130 DTSBX463
00131 P1000-ELIM-DUPS. DTSBX463
00132 PERFORM S1310-READ-ADDR-INPUT THRU S1310-EXIT. DTSBX463
00133 *& DTSBX463
00134 IF XVAD-FEIN = 010206260 DTSBX463
00135 DISPLAY SPACE DTSBX463
00136 DISPLAY 'P0000 ' XVAD-STREET ' ' XVAD-CITY DTSBX463
00137 DISPLAY ' ' WRK-STREET ' ' WRK-CITY DTSBX463
00138 END-IF. DTSBX463
00139 *& DTSBX463
00140 DTSBX463
00141 IF XVAD-FEIN = WRK-FEIN DTSBX463
00142 IF XVAD-STREET = WRK-STREET DTSBX463
00143 AND XVAD-CITY = WRK-CITY DTSBX463
00144 NEXT SENTENCE DTSBX463
00145 ELSE DTSBX463
00146 PERFORM S1410-WRITE-OUTPUT-ADDR THRU S1410-EXIT DTSBX463
00147 MOVE XVAD-STREET TO WRK-STREET DTSBX463
00148 MOVE XVAD-CITY TO WRK-CITY DTSBX463
00149 END-IF DTSBX463
00150 ELSE DTSBX463
00151 MOVE XVAD-FEIN TO WRK-FEIN DTSBX463
00152 MOVE XVAD-STREET TO WRK-STREET DTSBX463
00153 MOVE XVAD-CITY TO WRK-CITY DTSBX463
00154 PERFORM S1410-WRITE-OUTPUT-ADDR THRU S1410-EXIT DTSBX463
00155 END-IF. DTSBX463
00156 DTSBX463
00157 P1000-EXIT. DTSBX463
00158 EXIT. DTSBX463
00159 DTSBX463
00160 T0000-TERMINATE. DTSBX463
00161 DTSBX463
00162 DISPLAY ' '. DTSBX463
00163 DTSBX463
00164 DISPLAY '*** DTSBX463 TERMINATION STATISTICS ***'. DTSBX463
00165 DTSBX463
00166 DISPLAY ' '. DTSBX463
00167 DTSBX463
00168 DISPLAY 'NUMBER OF ADDR INPUT RECORDS READ : ' DTSBX463
00169 WRK-INPUT-ADDR-CNT. DTSBX463
00170 DTSBX463
00171 DISPLAY 'NUMBER OF ADDR OUTPUT RECORDS WRITTEN : ' DTSBX463
00172 WRK-OUTPUT-ADDR-CNT. DTSBX463
00173 DTSBX463
00174 PERFORM S1320-CLOSE-ADDR-INPUT THRU S1320-EXIT. DTSBX463
00175 PERFORM S1420-CLOSE-ADDR-OUTPUT-FILE THRU S1420-EXIT. DTSBX463
00176 DTSBX463
00177 DTSBX463
00178 T0000-EXIT. DTSBX463
00179 EXIT. DTSBX463
00180 EJECT DTSBX463
00181 DTSBX463
00182 S1300-OPEN-ADDR-INPUT. DTSBX463
00183 OPEN INPUT ADDR-INPUT-FILE. DTSBX463
00184 IF NOT ADDR-INP-STATUS-OK-88 DTSBX463
00185 DISPLAY 'CANNOT OPEN ADDR INPUT ' ADDR-INP-STATUS DTSBX463
00186 SET WRK-ERROR-YES-88 TO TRUE DTSBX463
00187 END-IF. DTSBX463
00188 DTSBX463
00189 S1300-EXIT. DTSBX463
00190 EXIT. DTSBX463
00191 DTSBX463
00192 S1310-READ-ADDR-INPUT. DTSBX463
00193 READ ADDR-INPUT-FILE INTO WRK-XVAD-REC. DTSBX463
00194 IF ADDR-INP-STATUS-OK-88 DTSBX463
00195 ADD +1 TO WRK-INPUT-ADDR-CNT DTSBX463
00196 ELSE DTSBX463
00197 IF NOT ADDR-INP-STATUS-EOF-88 DTSBX463
00198 DISPLAY 'S1310 BAD READ ON ADDR INPUT ' DTSBX463
00199 ADDR-INP-STATUS DTSBX463
00200 SET ADDR-INP-STATUS-EOF-88 TO TRUE DTSBX463
00201 END-IF DTSBX463
00202 END-IF. DTSBX463
00203 DTSBX463
00204 S1310-EXIT. DTSBX463
00205 EXIT. DTSBX463
00206 DTSBX463
00207 S1320-CLOSE-ADDR-INPUT. DTSBX463
00208 CLOSE ADDR-INPUT-FILE. DTSBX463
00209 DTSBX463
00210 S1320-EXIT. DTSBX463
00211 EXIT. DTSBX463
00212 DTSBX463
00213 S1400-OPEN-ADDR-OUTPUT. DTSBX463
00214 OPEN OUTPUT ADDR-OUTPUT-FILE. DTSBX463
00215 IF NOT ADDR-OUTP-STATUS-OK-88 DTSBX463
00216 DISPLAY 'CANNOT OPEN ADDR OUTPUT FILE ' DTSBX463
00217 ADDR-OUTP-STATUS DTSBX463
00218 SET WRK-ERROR-YES-88 TO TRUE DTSBX463
00219 END-IF. DTSBX463
00220 DTSBX463
00221 S1400-EXIT. DTSBX463
00222 EXIT. DTSBX463
00223 DTSBX463
00224 S1410-WRITE-OUTPUT-ADDR. DTSBX463
00225 *& DTSBX463
00226 IF XVAD-FEIN = 010206260 DTSBX463
00227 DISPLAY 'S1410 ' XVAD-FEIN ' ' XVAD-STREET DTSBX463
00228 ' ' XVAD-CITY DTSBX463
00229 END-IF. DTSBX463
00230 *& DTSBX463
00231 WRITE ADDR-OUTPUT-REC FROM WRK-XVAD-REC. DTSBX463
00232 IF NOT ADDR-OUTP-STATUS-OK-88 DTSBX463
00233 DISPLAY 'S1410 BAD WRITE ON ADDR OUTPUT ' DTSBX463
00234 ADDR-OUTP-STATUS DTSBX463
00235 SET ADDR-INP-STATUS-EOF-88 TO TRUE DTSBX463
00236 ELSE DTSBX463
00237 ADD +1 TO WRK-OUTPUT-ADDR-CNT DTSBX463
00238 END-IF. DTSBX463
00239 DTSBX463
00240 S1410-EXIT. DTSBX463
00241 EXIT. DTSBX463
00242 DTSBX463
00243 S1420-CLOSE-ADDR-OUTPUT-FILE. DTSBX463
00244 CLOSE ADDR-OUTPUT-FILE. DTSBX463
00245 DTSBX463
00246 S1420-EXIT. DTSBX463
00247 EXIT. DTSBX463
00248 DTSBX463
00249 DTSBX463
00250 S999-ABEND. DTSBX463
00251 CALL 'DTSBU999' USING WRK-ABEND-CD. DTSBX463
00252 S999-EXIT. DTSBX463
00253 EXIT. DTSBX463