Files
DUTAS/CICS/DTSCU072.cob
2025-09-13 06:24:12 -04:00

718 lines
57 KiB
COBOL

00001 IDENTIFICATION DIVISION. 09/12/25
00002 PROGRAM-ID. DTSCU072. DTSCU072
00003 AUTHOR. TRICOASTAL CONSULTING LTD. LV011
00004 DATE-WRITTEN. NOVEMBER 1991. DTSCU072
00005 DATE-COMPILED. DTSCU072
00006 SKIP3 DTSCU072
00007 ***** DTSCU072
00008 * DTSCU072
00009 * FUNCTION: ADDRESS EDIT. DTSCU072
00010 * DTSCU072
00011 * MODIFICATION LOG: DTSCU072
00012 * DTSCU072
00013 * 01/16/92 INITIAL DEVELOPMENT. DTSCU072
00014 * WORK ORDER: PROGRAMMER: JME DTSCU072
00015 * DTSCU072
00016 * 04/05/94 CONVERT TO MONTANA. DTSCU072
00017 * WORK ORDER: PROGRAMMER: RHC DTSCU072
00018 * DTSCU072
00019 * 02/08/95 REDUCE THE NUMBER OF ERROR MESSAGES GENERATED. DTSCU072
00020 * WORK ORDER: PROGRAMMER: RHC DTSCU072
00021 * DTSCU072
00022 * 09/18/95 FOREIGN ADDRESS LOGIC ADDED. DTSCU072
00023 * WORK ORDER: JR PROGRAMMER: EHH DTSCU072
00024 * DTSCU072
00025 * 10-20-95 NEW VERSION OF FINALST -- COPY MEMBER LENGTH DTSCU072
00026 * CHANGED, FIELDS MOVED AROUND, RENAMED, ETC. DTSCU072
00027 * ADDED COMM-AREA-LENGTH-FIELD, CHANGED CODE IN DTSCU072
00028 * S1000-LINK-TO-FINALIST TO USE IT. CHANGED CODE DTSCU072
00029 * IN P2120-FINALIST-RESULTS. DTSCU072
00030 * WORK ORDER: NONE PROGRAMMER: EHH DTSCU072
00031 * DTSCU072
00032 * 08/13/96 RECOMPILED FOR NEW VERSION OF FINALIST (REL 670). DTSCU072
00033 * REFERENCE RFP: NONE PROGRAMMER: MJA DTSCU072
00034 * DTSCU072
00035 * 08/20/97 RECOMPILED FOR NEW VERSION OF FINALIST (REL 680). DTSCU072
00036 * REFERENCE RFP: NONE PROGRAMMER: EHH DTSCU072
00037 * DTSCU072
00038 * 12/30/97 INITIALIZE FINAL-FIRMCORR-OPT WITH A VALUE OF DTSCU072
00039 * 'Y' AND FINAL-ALSLBL-OPT WITH A VALUE OF 'N'. DTSCU072
00040 * BATCH TESTING WITH CNFIGAAR INDICATES IN ORDER DTSCU072
00041 * TO FORCE THE ONLINE VERSION OF FINALIST TO YIELD DTSCU072
00042 * THE SAME RESULTS AS THE BATCH VERSION OF FINALIST `DTSCU072
00043 * WITH CNFIGAAR SPECIFIED THESE TWO OPTIONS MUST BE DTSCU072
00044 * SET AS INDICATED. THESE TWO OPTIONS WERE ADDED DTSCU072
00045 * TO FINALIST AFTER SYSTEM IMPLEMENTATION, BUT THE DTSCU072
00046 * MAINTENANCE PROGRAMMERS OVERLOOKED THEM. DTSCU072
00047 * REFERENCE RFP: TCL 214 PROGRAMMER: EHH DTSCU072
00048 * DTSCU072
00049 * 09/08/1998 FINALIST ORIENTED CODE COMMENTED OUT. LPFNCL01 DTSCU072
00050 * COPY MEMBER NOT AVAILABLE. AFTER LPFNCL01 DTSCU072
00051 * BECOMES AVAILABLE AND THE LINK TO FINALIST IS DTSCU072
00052 * WORKING, THIS MODULE MUST BE REVISITED. DTSCU072
00053 * REFERENCE: DC DEVELOPMENT PROGRAMMER: EHH DTSCU072
00054 * DTSCU072
00055 * 09/08/1999 FINALIST ORIENTED CODE UNCOMMENTED AND PROGRAM DTSCU072
00056 * RECOMPILED FOR RELEASE 700. LPFNCL01 TURNED DTSCU072
00057 * OUT TO BE UNCHANGED FROM 680 PROGRAMMER: TKT DTSCU072
00058 * DTSCU072
00059 * 09/20/2000 RECOMPILED FOR NEW VERSION(R720) OF FINALIST. DTSCU072
00060 * REFERENCE: DC DEVELOPMENT PROGRAMMER: ZL1 DTSCU072
00061 * DTSCU072
00062 * DTSCU072
00063 * 04/02/2002 RECOMPILED FOR NEW VERSION(R730) OF FINALIST. DTSCU072
00064 * REFERENCE: DC DEVELOPMENT PROGRAMMER: ZL1 DTSCU072
00065 * DTSCU072
00066 * 05/15/2017 UNCOMMENTED CODE FOR CHECKING CASS CERTIFICATION CL**2
00067 * REFERENCE: DC DEVELOPMENT PROGRAMMER: ZL1 CL**2
00068 * CL**2
00069 * 99/99/9999 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSCU072
00070 * XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSCU072
00071 * REFERENCE: XXXXXXXXXXXXXXX PROGRAMMER: XXX DTSCU072
00072 * DTSCU072
00073 * DTSCU072
00074 * DESCRIPTION: DTSCU072
00075 * DTSCU072
00076 * EDIT AN ADDRESS. DTSCU072
00077 * DTSCU072
00078 * DTSCU072
00079 * SEE ISSUE STATEMENT 12, ISSUE STATEMENT 13, AND DTSCU072
00080 * THE 'FINALIST' MANUAL. DTSCU072
00081 * DTSCU072
00082 * SEE THE COMMENTS IN THE CODE. DTSCU072
00083 * DTSCU072
00084 * DTSCU072
00085 * 04/20/94 THE LOGIC PERMITTING A BLANK DELIVERY LINE DTSCU072
00086 * (IF L072-NAME IS A VALID FIRM NAME) IS DTSCU072
00087 * SUPPRESSED. DTSCU072
00088 * DTSCU072
00089 * STATUS UNIT WORKERS INDICATE THEY "NEVER" DTSCU072
00090 * ENCOUNTER A BLANK DELIVERY LINE. DTSCU072
00091 * DTSCU072
00092 ***** DTSCU072
00093 SKIP3 DTSCU072
00094 ENVIRONMENT DIVISION. DTSCU072
00095 SKIP3 DTSCU072
00096 DATA DIVISION. DTSCU072
00097 SKIP3 DTSCU072
00098 WORKING-STORAGE SECTION. DTSCU072
000985 77 PAN-VALET PICTURE X(24) VALUE '011DTSCU072 09/12/25'. DTSCU072
00099 77 PAN-VALET PICTURE X(24) VALUE '023DTSCU072 05/15/02'. DTSCU072
00100 SKIP3 DTSCU072
00101 01 WRK-AREA. DTSCU072
00102 05 WRK-ABEND-CODE PIC X(04) VALUE 'U072'. DTSCU072
00103 DTSCU072
00104 05 WRK-RESP-CODE PIC S9(08) COMP. DTSCU072
00105 SKIP3 DTSCU072
00106 01 FC-FINALIST-RETURN-CODES. DTSCU072
00107 05 FC-REASON-CODES. DTSCU072
00108 10 FC-REASON-CODE1 PIC 9(01). DTSCU072
00109 88 FC-ZIP-VERIF-88 VALUE 0 . DTSCU072
00110 88 FC-ZIP-GUESSED-88 VALUE 4 . DTSCU072
00111 88 FC-ZIP-FIXED-88 VALUE 5 6 7 . DTSCU072
00112 88 FC-ZIP-RETURNED-88 VALUE 1 . DTSCU072
00113 88 FC-ZIP-BYPASSED-88 VALUE 2 3 . DTSCU072
00114 88 FC-ZIP-BAD-88 VALUE 9. DTSCU072
00115 10 FC-REASON-CODE2 PIC 9(01). DTSCU072
00116 88 FC-CITY-VERIF-88 VALUE 0 . DTSCU072
00117 88 FC-CITY-VANITY-88 VALUE 7 . DTSCU072
00118 88 FC-CITY-STANDARD-88 VALUE 2 3 . DTSCU072
00119 88 FC-CITY-GUESSED-88 VALUE 6 . DTSCU072
00120 88 FC-CITY-FIXED-88 VALUE 5 . DTSCU072
00121 88 FC-CITY-RETURNED-88 VALUE 1 . DTSCU072
00122 88 FC-CITY-BYPASSED-88 VALUE 4 . DTSCU072
00123 88 FC-CITY-BAD-88 VALUE 9. DTSCU072
00124 10 FC-REASON-CODE3-CARRIER-ROUTE PIC 9(01). DTSCU072
00125 10 FC-REASON-CODE4-ZIP-PLUS-4 PIC 9(01). DTSCU072
00126 10 FC-REASON-CODE5 PIC 9(01). DTSCU072
00127 88 FC-STREET-VERIF-88 VALUE 0 . DTSCU072
00128 88 FC-STREET-STANDARD-88 VALUE 1 . DTSCU072
00129 88 FC-STREET-GUESSED-88 VALUE 2 3 4 6 . DTSCU072
00130 88 FC-STREET-BAD-88 VALUE 9. DTSCU072
00131 10 FC-REASON-CODE6 PIC 9(01). DTSCU072
00132 88 FC-RANGE-VERIF-88 VALUE 0 . DTSCU072
00133 88 FC-RANGE-GUESSED-88 VALUE 4 . DTSCU072
00134 88 FC-RANGE-BAD-88 VALUE 1 2 3 9. DTSCU072
00135 10 FC-REASON-CODE7 PIC 9(01). DTSCU072
00136 88 FC-SUFDIR-VERIF-88 VALUE 0 . DTSCU072
00137 88 FC-SUFDIR-MULTI-88 VALUE 4 . DTSCU072
00138 88 FC-SUFDIR-FIXED-88 VALUE 1 2 3 . DTSCU072
00139 88 FC-SUFDIR-BAD-88 VALUE 9. DTSCU072
00140 05 FC-ADDRESS-INFO-CODES. DTSCU072
00141 10 FC-INFO-CODE1 PIC 9(01). DTSCU072
00142 10 FC-INFO-CODE2 PIC 9(01). DTSCU072
00143 10 FC-INFO-CODE3 PIC 9(01). DTSCU072
00144 10 FC-INFO-CODE4 PIC 9(01). DTSCU072
00145 88 FC-BOTH-ADDR-BAD-88 VALUE 9. DTSCU072
00146 10 FC-INFO-CODE5 PIC 9(01). DTSCU072
00147 10 FC-INFO-CODE678 PIC 9(03). DTSCU072
00148 SKIP3 DTSCU072
00149 01 MSG-AREAS. DTSCU072
00150 05 MSG-E081-AREA. DTSCU072
00151 10 MSG-E081-MSG-ID PIC X(04) VALUE 'E081'.DTSCU072
00152 10 MSG-E081-MSG-TXT. DTSCU072
00153 15 FILLER PIC X(25) DTSCU072
00154 VALUE 'FINALIST NOT AVAILABLE'. DTSCU072
00155 15 MSG-E081-CAERRMOD PIC X(08). DTSCU072
00156 15 FILLER PIC X(02) VALUE SPACES.DTSCU072
00157 15 MSG-E081-CAERRSRC PIC X(08). DTSCU072
00158 15 FILLER PIC X(02) VALUE SPACES.DTSCU072
00159 15 MSG-E081-CAERRDSC PIC X(09). DTSCU072
00160 15 FILLER PIC X(06) VALUE SPACES.DTSCU072
00161 05 MSG-E082-AREA. DTSCU072
00162 10 FILLER PIC X(21) VALUE 'E082FINALIST RESULT: '.DTSCU072
00163 10 FILLER PIC X(43) DTSCU072
00164 VALUE 'UNABLE TO DETERMINE ZIP PLUS FOUR'. DTSCU072
00165 05 MSG-E083-AREA. DTSCU072
00166 10 FILLER PIC X(21) VALUE 'E083FINALIST RESULT: '.DTSCU072
00167 10 FILLER PIC X(43) DTSCU072
00168 VALUE 'ZIP CODE FAILED'. DTSCU072
00169 05 MSG-E084-AREA. DTSCU072
00170 10 FILLER PIC X(21) VALUE 'E084FINALIST RESULT: '.DTSCU072
00171 10 FILLER PIC X(43) DTSCU072
00172 VALUE 'CITY FAILED'. DTSCU072
00173 05 MSG-E085-AREA. DTSCU072
00174 10 FILLER PIC X(21) VALUE 'E085FINALIST RESULT: '.DTSCU072
00175 10 FILLER PIC X(43) DTSCU072
00176 VALUE 'STREET ADDRESS FAILED'. DTSCU072
00177 05 MSG-E086-AREA. DTSCU072
00178 10 FILLER PIC X(21) VALUE 'E086FINALIST RESULT: '.DTSCU072
00179 10 FILLER PIC X(43) DTSCU072
00180 VALUE 'ADDRESS FAILED'. DTSCU072
00181 05 MSG-E087-AREA. DTSCU072
00182 10 FILLER PIC X(21) VALUE 'E087FINALIST RESULT: '.DTSCU072
00183 10 FILLER PIC X(43) DTSCU072
00184 VALUE 'ADDRESS LINE LONGER THAN 40 CHARACTERS'. DTSCU072
00185 *****05 MSG-E08Y-AREA. DTSCU072
00186 ***** 10 FILLER PIC X(04) VALUE 'E08Y'. DTSCU072
00187 ***** 10 FILLER PIC X(60) DTSCU072
00188 ***** VALUE 'ILLEGAL NAME FORMAT FOUND ON MASTER FILE'. DTSCU072
00189 *****05 MSG-E08Z-AREA. DTSCU072
00190 ***** 10 FILLER PIC X(04) VALUE 'E08ZFINALIST RESULT: '.DTSCU072
00191 ***** 10 FILLER PIC X(43) DTSCU072
00192 ***** VALUE 'NON-FIRM NAME FOUND ON MASTER FILE'. DTSCU072
00193 EJECT DTSCU072
00194 01 C072-LITERALS. DTSCU072
00195 ++INCLUDE DTSIC072 DTSCU072
00196 SKIP3 DTSCU072
00197 ++INCLUDE LPFNCL01 DTSCU072
00198 EJECT DTSCU072
00199 01 CECD-LITERALS. DTSCU072
00200 ++INCLUDE DTSICECD DTSCU072
00201 EJECT DTSCU072
00202 LINKAGE SECTION. DTSCU072
00203 SKIP3 DTSCU072
00204 01 DFHCOMMAREA. DTSCU072
00205 ++INCLUDE DTSIL072 DTSCU072
00206 EJECT DTSCU072
00207 PROCEDURE DIVISION. DTSCU072
00208 DTSCU072
00209 *& NOTE: THE FOLLOWING LINE DISABLES CASS CERTIFICATION. DTSCU072
00210 *& IT MUST BE REMOVED WHEN FINALIST IS AVAILABLE. DTSCU072
00211 DTSCU072
00212 SET L072-NO-CASS-EDITS-88 TO TRUE. CL**9
00213 CL**9
00214 PERFORM I1000-INITIALIZE THROUGH I1000-EXIT. DTSCU072
00215 DTSCU072
00216 MOVE L072-ST TO C072-ST. DTSCU072
00217 IF C072-DC-88 DTSCU072
00218 PERFORM P2000-US-ADDRESS THRU P2000-EXIT DTSCU072
00219 ELSE DTSCU072
00220 IF C072-US-88 DTSCU072
00221 PERFORM P2000-US-ADDRESS THRU P2000-EXIT DTSCU072
00222 ELSE DTSCU072
00223 IF C072-CANADA-88 DTSCU072
00224 PERFORM P1000-CANADA-ADDRESS THRU P1000-EXIT DTSCU072
00225 ELSE DTSCU072
00226 IF C072-FOREIGN-88 DTSCU072
00227 PERFORM P3000-FOREIGN-ADDRESS THRU P3000-EXIT DTSCU072
00228 ELSE DTSCU072
00229 SET L072-ST-NOT-VALID-88 TO TRUE DTSCU072
00230 IF L072-ST = SPACE OR LOW-VALUE DTSCU072
00231 MOVE EMSG-FIELD-REQUIRED TO L072-MSG-AREA DTSCU072
00232 ELSE DTSCU072
00233 MOVE EMSG-FIELD-NOT-VALID TO L072-MSG-AREA. DTSCU072
00234 DTSCU072
00235 IF L072-MSG-ID NOT = SPACE DTSCU072
00236 SET L072-ADDRESS-NOT-VALID-88 TO TRUE. DTSCU072
00237 DTSCU072
00238 IF L072-ADDRESS-NOT-VALID-88 DTSCU072
00239 NEXT SENTENCE DTSCU072
00240 ELSE DTSCU072
00241 IF L072-DELIV-LINE-1-NOT-VALID-88 DTSCU072
00242 OR L072-DELIV-LINE-2-NOT-VALID-88 DTSCU072
00243 OR L072-CITY-NOT-VALID-88 DTSCU072
00244 OR L072-ST-NOT-VALID-88 DTSCU072
00245 OR L072-ZIP-NOT-VALID-88 DTSCU072
00246 SET L072-ADDRESS-NOT-VALID-88 TO TRUE DTSCU072
00247 ELSE DTSCU072
00248 IF L072-DELIV-LINE-1-CHANGED-88 DTSCU072
00249 OR L072-DELIV-LINE-2-CHANGED-88 DTSCU072
00250 OR L072-CITY-CHANGED-88 DTSCU072
00251 OR L072-ST-CHANGED-88 DTSCU072
00252 OR L072-ZIP-CHANGED-88 DTSCU072
00253 SET L072-ADDRESS-CHANGED-88 TO TRUE. DTSCU072
00254 DTSCU072
00255 DTSCU072
00256 EXEC CICS DTSCU072
00257 RETURN DTSCU072
00258 END-EXEC. DTSCU072
00259 DTSCU072
00260 DTSCU072
00261 DTSCU072
00262 GOBACK. DTSCU072
00263 EJECT DTSCU072
00264 I1000-INITIALIZE. DTSCU072
00265 IF L072-NO-CASS-EDITS-88 DTSCU072
00266 NEXT SENTENCE DTSCU072
00267 ELSE DTSCU072
00268 SET L072-CASS-EDITS-88 TO TRUE. DTSCU072
00269 DTSCU072
00270 DTSCU072
00271 SET L072-NO-CASS-EDITS-88 TO TRUE. CL*10
00272 SET L072-ADDRESS-UNCHANGED-88 TO TRUE. DTSCU072
00273 DTSCU072
00274 DTSCU072
00275 SET L072-ATTN-LINE-UNCHANGED-88 TO TRUE. DTSCU072
00276 DTSCU072
00277 SET L072-DELIV-LINE-1-UNCHANGED-88 TO TRUE. DTSCU072
00278 DTSCU072
00279 SET L072-DELIV-LINE-2-UNCHANGED-88 TO TRUE. DTSCU072
00280 DTSCU072
00281 SET L072-CITY-UNCHANGED-88 TO TRUE. DTSCU072
00282 DTSCU072
00283 SET L072-ST-UNCHANGED-88 TO TRUE. DTSCU072
00284 DTSCU072
00285 SET L072-ZIP-UNCHANGED-88 TO TRUE. DTSCU072
00286 DTSCU072
00287 DTSCU072
00288 IF L072-ATTN-LINE = LOW-VALUES DTSCU072
00289 MOVE SPACES TO L072-ATTN-LINE. DTSCU072
00290 DTSCU072
00291 IF L072-DELIV-LINE-1 = LOW-VALUES DTSCU072
00292 MOVE SPACES TO L072-DELIV-LINE-1. DTSCU072
00293 DTSCU072
00294 IF L072-DELIV-LINE-2 = LOW-VALUES DTSCU072
00295 MOVE SPACES TO L072-DELIV-LINE-2. DTSCU072
00296 DTSCU072
00297 IF L072-CITY = LOW-VALUES DTSCU072
00298 MOVE SPACES TO L072-CITY. DTSCU072
00299 DTSCU072
00300 IF L072-ST = LOW-VALUES DTSCU072
00301 MOVE SPACES TO L072-ST. DTSCU072
00302 DTSCU072
00303 IF L072-ZIP = LOW-VALUES DTSCU072
00304 MOVE SPACES TO L072-ZIP. DTSCU072
00305 DTSCU072
00306 DTSCU072
00307 MOVE SPACES TO L072-ADVANCED-BARCODE DTSCU072
00308 L072-CASS-RETURN-CODES DTSCU072
00309 L072-MSG-AREA. DTSCU072
00310 DTSCU072
00311 DTSCU072
00312 MOVE L072-ST TO C072-ST. DTSCU072
00313 I1000-EXIT. DTSCU072
00314 EXIT. DTSCU072
00315 EJECT DTSCU072
00316 P1000-CANADA-ADDRESS. DTSCU072
00317 SET L072-NO-CASS-EDITS-88 TO TRUE. DTSCU072
00318 DTSCU072
00319 DTSCU072
00320 * IF (L072-ATTN-LINE NOT = SPACES) DTSCU072
00321 * AND DTSCU072
00322 * (L072-DELIV-LINE-1 NOT = SPACES) DTSCU072
00323 * AND DTSCU072
00324 * (L072-DELIV-LINE-2 NOT = SPACES) DTSCU072
00325 * MOVE EMSG-CROSS-EDIT TO L072-MSG-AREA DTSCU072
00326 * SET L072-ATTN-LINE-NOT-VALID-88 DTSCU072
00327 * L072-DELIV-LINE-1-NOT-VALID-88 DTSCU072
00328 * L072-DELIV-LINE-2-NOT-VALID-88 TO TRUE DTSCU072
00329 * GO TO P1000-EXIT. DTSCU072
00330 DTSCU072
00331 IF (L072-DELIV-LINE-1 NOT = SPACES) DTSCU072
00332 AND DTSCU072
00333 (L072-DELIV-LINE-2 = SPACES) DTSCU072
00334 MOVE L072-DELIV-LINE-1 TO L072-DELIV-LINE-2 DTSCU072
00335 MOVE SPACES TO L072-DELIV-LINE-1 DTSCU072
00336 SET L072-DELIV-LINE-1-CHANGED-88 DTSCU072
00337 L072-DELIV-LINE-2-CHANGED-88 TO TRUE. DTSCU072
00338 DTSCU072
00339 IF L072-DELIV-LINE-2 = SPACES DTSCU072
00340 MOVE EMSG-FIELD-REQUIRED TO L072-MSG-AREA DTSCU072
00341 SET L072-DELIV-LINE-2-NOT-VALID-88 TO TRUE DTSCU072
00342 GO TO P1000-EXIT. DTSCU072
00343 DTSCU072
00344 IF L072-CITY = SPACE DTSCU072
00345 MOVE EMSG-FIELD-REQUIRED TO L072-MSG-AREA DTSCU072
00346 SET L072-CITY-NOT-VALID-88 TO TRUE DTSCU072
00347 GO TO P1000-EXIT. DTSCU072
00348 DTSCU072
00349 * IF L072-ZIP = SPACES CL**7
00350 * MOVE EMSG-FIELD-REQUIRED TO L072-MSG-AREA CL**7
00351 * SET L072-ZIP-NOT-VALID-88 TO TRUE CL**7
00352 * GO TO P1000-EXIT. CL**7
00353 DTSCU072
00354 * IF L072-ZIP (1:1) NOT ALPHABETIC CL**6
00355 * OR L072-ZIP (2:1) NOT NUMERIC CL**6
00356 * OR L072-ZIP (3:1) NOT ALPHABETIC CL**6
00357 * OR L072-ZIP (4:1) NOT = SPACE CL**6
00358 * OR L072-ZIP (5:1) NOT NUMERIC CL**6
00359 * OR L072-ZIP (6:1) NOT ALPHABETIC CL**6
00360 * OR L072-ZIP (7:1) NOT NUMERIC CL**6
00361 * OR L072-ZIP (8:3) NOT = SPACE CL**6
00362 * SET L072-ZIP-NOT-VALID-88 TO TRUE CL**6
00363 * MOVE EMSG-FIELD-NOT-VALID TO L072-MSG-AREA. CL**6
00364 P1000-EXIT. DTSCU072
00365 EXIT. DTSCU072
00366 SKIP3 DTSCU072
00367 P2000-US-ADDRESS. DTSCU072
00368 * IF L072-CASS-EDITS-88 CL*10
00369 * PERFORM P2100-CASS THRU P2100-EXIT CL*10
00370 * ELSE CL*10
00371 SET L072-NO-CASS-EDITS-88 TO TRUE. CL*10
00372 PERFORM P2200-NO-CASS THRU P2200-EXIT. DTSCU072
00373 P2000-EXIT. DTSCU072
00374 EXIT. DTSCU072
00375 EJECT DTSCU072
00376 P2100-CASS. DTSCU072
00377 MOVE SPACE TO FINAL-ORIGINAL-RETURN-AREA DTSCU072
00378 FINAL-EXPANDED-RETURN-AREA. DTSCU072
00379 MOVE HIGH-VALUE TO FINAL-FILLER. DTSCU072
00380 DTSCU072
00381 MOVE '0' TO FINAL-FUNCTION-CODE. DTSCU072
00382 DTSCU072
00383 *-------------------------------------------------------------- DTSCU072
00384 * FINALIST ONLINE DOES NOT ACCEPT VALID CASS CONFIGURATIONS DTSCU072
00385 * (CONFIGXXX). HOWEVER, THE FOLLOWING CODE SETS THE DTSCU072
00386 * INDIVIDUAL TAILORING OPTIONS TO DUPLICATE (WHEN COMBINED DTSCU072
00387 * WITH LATER USE OF FUNCTION CODE EQUAL TO 5) THE DTSCU072
00388 * 'CNFIGAAR' CONFIGURATION. DTSCU072
00389 *-------------------------------------------------------------- DTSCU072
00390 MOVE 'X ' TO FINAL-FUNCTION-OPTION. DTSCU072
00391 MOVE 'Y' TO FINAL-UNIQUE-OPT. DTSCU072
00392 MOVE 'Y' TO FINAL-STRTPHON-OPT. DTSCU072
00393 MOVE 'Y' TO FINAL-FIRMCORR-OPT. DTSCU072
00394 MOVE 'Y' TO FINAL-CITYPHON-OPT. DTSCU072
00395 MOVE 'N' TO FINAL-WEIGHT-OPT. DTSCU072
00396 MOVE 'Y' TO FINAL-ZIPCORR-OPT. DTSCU072
00397 MOVE 'Y' TO FINAL-CITYCORR-OPT. DTSCU072
00398 MOVE 'N' TO FINAL-STRCOSM-OPT. DTSCU072
00399 MOVE 'Y' TO FINAL-FRMPRS-OPT. DTSCU072
00400 MOVE 'Y' TO FINAL-UNITDES-OPT. DTSCU072
00401 MOVE 'Y' TO FINAL-CTYLONG-OPT. DTSCU072
00402 MOVE 'N' TO FINAL-ALSLBL-OPT. DTSCU072
00403 MOVE 'LPFNMODC' TO CAMODNAM. DTSCU072
00404 DTSCU072
00405 PERFORM S1000-LINK-TO-FINALIST THROUGH S1000-EXIT. DTSCU072
00406 DTSCU072
00407 IF FINAL-RETURN-CODE1 = 'E' DTSCU072
00408 PERFORM P2110-FINALIST-ABEND THROUGH P2110-EXIT DTSCU072
00409 GO TO P2100-EXIT. DTSCU072
00410 DTSCU072
00411 MOVE SPACES TO FINAL-INPUT-ADDR-AREA. DTSCU072
00412 DTSCU072
00413 IF L072-DELIV-LINE-1 > SPACES DTSCU072
00414 MOVE L072-DELIV-LINE-1 TO USER-INPUT-ADDRESS-1. DTSCU072
00415 DTSCU072
00416 * IF L072-DELIV-LINE = SPACE DTSCU072
00417 * IF L072-MOPO-88 DTSCU072
00418 * OR L072-FFID-88 DTSCU072
00419 * SET L071-FROM-LAST-NAME-FIRST TO TRUE DTSCU072
00420 * MOVE L072-NAME TO L071-NAM DTSCU072
00421 * PERFORM S071-NAME-CONVERT THROUGH S071-EXIT DTSCU072
00422 * IF L071-NAME-CONVERTED DTSCU072
00423 * MOVE L071-NAM TO USER-INPUT-ADDRESS-2 DTSCU072
00424 * ELSE DTSCU072
00425 * SET L072-DELIV-LINE-NOT-VALID-88 TO TRUE DTSCU072
00426 * MOVE MSG-E08Y-AREA TO L072-MSG-AREA DTSCU072
00427 * GO TO P2100-EXIT DTSCU072
00428 * ELSE DTSCU072
00429 * MOVE L072-NAME TO USER-INPUT-ADDRESS-2 DTSCU072
00430 * ELSE DTSCU072
00431 * MOVE L072-DELIV-LINE TO USER-INPUT-ADDRESS-2. DTSCU072
00432 * IF L072-DELIV-LINE = SPACE DTSCU072
00433 * SET L072-DELIV-LINE-NOT-VALID-88 TO TRUE DTSCU072
00434 * MOVE EMSG-FIELD-REQUIRED TO L072-MSG-AREA DTSCU072
00435 * GO TO P2100-EXIT DTSCU072
00436 * ELSE DTSCU072
00437 * MOVE L072-DELIV-LINE TO USER-INPUT-ADDRESS-2. DTSCU072
00438 * DTSCU072
00439 * MOVE SPACES TO USER-INPUT-CSZ-AREA. DTSCU072
00440 DTSCU072
00441 MOVE L072-DELIV-LINE-2 TO USER-INPUT-ADDRESS-2. DTSCU072
00442 DTSCU072
00443 * STRING L072-CITY ' ' L072-ST DTSCU072
00444 * DELIMITED BY ' ' DTSCU072
00445 * INTO USER-INPUT-CITY-STATE. DTSCU072
00446 DTSCU072
00447 MOVE L072-CITY TO USER-INPUT-CITY-STATE (1:25). DTSCU072
00448 MOVE L072-ST TO USER-INPUT-CITY-STATE (28:2). DTSCU072
00449 DTSCU072
00450 MOVE L072-ZIP TO USER-INPUT-ZIP. DTSCU072
00451 MOVE L072-ZIP (7:4) TO USER-INPUT-SEC-SEG. DTSCU072
00452 DTSCU072
00453 MOVE '5' TO FINAL-FUNCTION-CODE. DTSCU072
00454 PERFORM S1000-LINK-TO-FINALIST THROUGH S1000-EXIT. DTSCU072
00455 IF FINAL-RETURN-CODE1 = 'E' DTSCU072
00456 PERFORM P2110-FINALIST-ABEND THROUGH P2110-EXIT DTSCU072
00457 GO TO P2100-EXIT. DTSCU072
00458 DTSCU072
00459 PERFORM P2120-FINALIST-RESULTS THROUGH P2120-EXIT. DTSCU072
00460 IF L072-MSG-ID = SPACE DTSCU072
00461 PERFORM P2130-CHECK-FINALIST-CODES THROUGH P2130-EXIT. DTSCU072
00462 * IF L072-DELIV-LINE-NOT-VALID-88 DTSCU072
00463 *** WORKAROUND FOR FINALIST BUG: GENERAL DELIVERY W/ GARBAGE CITY DTSCU072
00464 * IF L072-DELIV-LINE = 'GENERAL DELIVERY' DTSCU072
00465 * SET L072-DELIV-LINE-UNCHANGED-88 TO TRUE DTSCU072
00466 * MOVE MSG-E084-AREA TO L072-MSG-AREA DTSCU072
00467 * SET L072-CITY-NOT-VALID-88 TO TRUE. DTSCU072
00468 DTSCU072
00469 IF L072-MSG-ID = SPACE DTSCU072
00470 IF FINAL-OUTSEL-BAD = 'Y' DTSCU072
00471 SET L072-ADDRESS-NOT-VALID-88 TO TRUE DTSCU072
00472 MOVE MSG-E086-AREA TO L072-MSG-AREA. DTSCU072
00473 DTSCU072
00474 * MOVE '9' TO FINAL-FUNCTION-CODE. DTSCU072
00475 * PERFORM S1000-LINK-TO-FINALIST THROUGH S1000-EXIT. DTSCU072
00476 * IF FINAL-RETURN-CODE1 = 'E' DTSCU072
00477 * PERFORM P2110-FINALIST-ABEND THROUGH P2110-EXIT. DTSCU072
00478 DTSCU072
00479 P2100-EXIT. DTSCU072
00480 EXIT. DTSCU072
00481 SKIP3 DTSCU072
00482 P2110-FINALIST-ABEND. DTSCU072
00483 SET L072-ADDRESS-NOT-VALID-88 TO TRUE. DTSCU072
00484 DTSCU072
00485 MOVE CAERRMOD TO MSG-E081-CAERRMOD. DTSCU072
00486 MOVE CAERRSRC TO MSG-E081-CAERRSRC. DTSCU072
00487 MOVE CAERRDSC TO MSG-E081-CAERRDSC. DTSCU072
00488 DTSCU072
00489 *****MOVE SPACES TO MSG-E081-CAERRMOD DTSCU072
00490 ***** MSG-E081-CAERRSRC DTSCU072
00491 ***** MSG-E081-CAERRDSC. DTSCU072
00492 DTSCU072
00493 MOVE MSG-E081-AREA TO L072-MSG-AREA. DTSCU072
00494 P2110-EXIT. DTSCU072
00495 EXIT. DTSCU072
00496 EJECT DTSCU072
00497 P2120-FINALIST-RESULTS. DTSCU072
00498 IF FINAL-LABEL-LENGTH1 > 40 DTSCU072
00499 MOVE MSG-E087-AREA TO L072-MSG-AREA DTSCU072
00500 SET L072-DELIV-LINE-1-NOT-VALID-88 TO TRUE DTSCU072
00501 ELSE DTSCU072
00502 IF L072-DELIV-LINE-1 > SPACES DTSCU072
00503 IF FINAL-LABEL-LENGTH1 > 0 DTSCU072
00504 MOVE EMSG-FIELD-NOT-ALLOWED TO L072-MSG-AREA DTSCU072
00505 SET L072-DELIV-LINE-1-NOT-VALID-88 TO TRUE DTSCU072
00506 ELSE DTSCU072
00507 MOVE SPACES TO L072-DELIV-LINE-1 DTSCU072
00508 ELSE DTSCU072
00509 IF L072-DELIV-LINE-1 = SPACES DTSCU072
00510 IF FINAL-LABEL-LENGTH1 > 0 DTSCU072
00511 MOVE FINAL-LABEL-LINE1 TO L072-DELIV-LINE-1 DTSCU072
00512 SET L072-DELIV-LINE-1-CHANGED-88 TO TRUE DTSCU072
00513 * SET L072-ATTN-DELIV-88 TO TRUE DTSCU072
00514 ELSE DTSCU072
00515 NEXT SENTENCE DTSCU072
00516 ELSE DTSCU072
00517 IF FINAL-LABEL-LENGTH1 > 0 DTSCU072
00518 MOVE FINAL-LABEL-LINE1 TO L072-DELIV-LINE-1 DTSCU072
00519 SET L072-DELIV-LINE-1-CHANGED-88 TO TRUE DTSCU072
00520 * SET L072-ATTN-DELIV-88 TO TRUE DTSCU072
00521 ELSE DTSCU072
00522 MOVE SPACES TO L072-DELIV-LINE-1 DTSCU072
00523 SET L072-DELIV-LINE-1-CHANGED-88 TO TRUE. DTSCU072
00524 * SET L072-ATTN-NONE-88 TO TRUE. DTSCU072
00525 DTSCU072
00526 IF FINAL-LABEL-LENGTH2 > 40 DTSCU072
00527 MOVE MSG-E087-AREA TO L072-MSG-AREA DTSCU072
00528 SET L072-DELIV-LINE-2-NOT-VALID-88 TO TRUE DTSCU072
00529 ELSE DTSCU072
00530 * IF L072-DELIV-LINE = SPACE DTSCU072
00531 * IF FINAL-MAIL-FIRM-NAME = SPACE DTSCU072
00532 * SET L072-DELIV-LINE-NOT-VALID-88 TO TRUE DTSCU072
00533 * MOVE MSG-E08Z-AREA TO L072-MSG-AREA DTSCU072
00534 * ELSE DTSCU072
00535 * NEXT SENTENCE DTSCU072
00536 * ELSE DTSCU072
00537 IF FINAL-LABEL-LINE2 NOT = L072-DELIV-LINE-2 DTSCU072
00538 MOVE FINAL-LABEL-LINE2 TO L072-DELIV-LINE-2 DTSCU072
00539 SET L072-DELIV-LINE-2-CHANGED-88 TO TRUE. DTSCU072
00540 DTSCU072
00541 IF FINAL-FULL-CITY-NAME NOT = L072-CITY DTSCU072
00542 MOVE FINAL-FULL-CITY-NAME TO L072-CITY DTSCU072
00543 SET L072-CITY-CHANGED-88 TO TRUE. DTSCU072
00544 DTSCU072
00545 IF FINAL-STATE NOT = L072-ST DTSCU072
00546 MOVE FINAL-STATE TO L072-ST DTSCU072
00547 SET L072-ST-CHANGED-88 TO TRUE. DTSCU072
00548 DTSCU072
00549 IF FINAL-ZIP NOT = L072-ZIP (1:5) DTSCU072
00550 MOVE FINAL-ZIP TO L072-ZIP (1:5) DTSCU072
00551 SET L072-ZIP-CHANGED-88 TO TRUE. DTSCU072
00552 DTSCU072
00553 IF FINAL-SEC-SEG = SPACE DTSCU072
00554 MOVE SPACE TO L072-ZIP (6:5) DTSCU072
00555 ELSE DTSCU072
00556 IF L072-ZIP (7:4) NOT = SPACE DTSCU072
00557 AND FINAL-SEC-SEG NOT = L072-ZIP (7:4) DTSCU072
00558 SET L072-ZIP-CHANGED-88 TO TRUE DTSCU072
00559 END-IF DTSCU072
00560 MOVE '-' TO L072-ZIP (6:1) DTSCU072
00561 MOVE FINAL-SEC-SEG TO L072-ZIP (7:4). DTSCU072
00562 DTSCU072
00563 STRING FINAL-RETURN-CODE1 DELIMITED BY SIZE DTSCU072
00564 '-' DELIMITED BY SIZE DTSCU072
00565 FINAL-REASON-CODES (1:9) DELIMITED BY SIZE DTSCU072
00566 '-' DELIMITED BY SIZE DTSCU072
00567 FINAL-ADDRESS-INFO-CODES (1:6) DELIMITED BY SIZE DTSCU072
00568 INTO L072-CASS-RETURN-CODES. DTSCU072
00569 DTSCU072
00570 MOVE FINAL-ADVANCED-BARCODE TO L072-ADVANCED-BARCODE. DTSCU072
00571 P2120-EXIT. DTSCU072
00572 EXIT. DTSCU072
00573 EJECT DTSCU072
00574 P2130-CHECK-FINALIST-CODES. DTSCU072
00575 MOVE FINAL-REASON-CODES TO FC-REASON-CODES. DTSCU072
00576 MOVE FINAL-ADDRESS-INFO-CODES TO FC-ADDRESS-INFO-CODES. DTSCU072
00577 DTSCU072
00578 IF FC-STREET-BAD-88 DTSCU072
00579 OR FC-RANGE-BAD-88 DTSCU072
00580 OR FC-SUFDIR-BAD-88 DTSCU072
00581 MOVE MSG-E085-AREA TO L072-MSG-AREA DTSCU072
00582 SET L072-DELIV-LINE-2-NOT-VALID-88 TO TRUE DTSCU072
00583 GO TO P2130-EXIT. DTSCU072
00584 DTSCU072
00585 IF FC-CITY-BYPASSED-88 DTSCU072
00586 OR FC-CITY-BAD-88 DTSCU072
00587 MOVE MSG-E084-AREA TO L072-MSG-AREA DTSCU072
00588 SET L072-CITY-NOT-VALID-88 TO TRUE DTSCU072
00589 GO TO P2130-EXIT. DTSCU072
00590 DTSCU072
00591 IF FC-ZIP-BYPASSED-88 DTSCU072
00592 OR FC-ZIP-BAD-88 DTSCU072
00593 MOVE MSG-E083-AREA TO L072-MSG-AREA DTSCU072
00594 SET L072-ZIP-NOT-VALID-88 TO TRUE DTSCU072
00595 GO TO P2130-EXIT. DTSCU072
00596 DTSCU072
00597 IF FC-BOTH-ADDR-BAD-88 DTSCU072
00598 MOVE MSG-E086-AREA TO L072-MSG-AREA DTSCU072
00599 SET L072-DELIV-LINE-2-NOT-VALID-88 TO TRUE DTSCU072
00600 GO TO P2130-EXIT. DTSCU072
00601 DTSCU072
00602 IF FINAL-RETURN-CODE1 NOT = '0' DTSCU072
00603 IF FC-SUFDIR-MULTI-88 DTSCU072
00604 MOVE MSG-E085-AREA TO L072-MSG-AREA DTSCU072
00605 SET L072-DELIV-LINE-2-NOT-VALID-88 TO TRUE DTSCU072
00606 GO TO P2130-EXIT DTSCU072
00607 ELSE DTSCU072
00608 MOVE MSG-E082-AREA TO L072-MSG-AREA DTSCU072
00609 SET L072-ZIP-NOT-VALID-88 TO TRUE DTSCU072
00610 GO TO P2130-EXIT. DTSCU072
00611 P2130-EXIT. DTSCU072
00612 EXIT. DTSCU072
00613 EJECT DTSCU072
00614 P2200-NO-CASS. DTSCU072
00615 IF (L072-DELIV-LINE-1 NOT = SPACES) DTSCU072
00616 AND DTSCU072
00617 (L072-DELIV-LINE-2 = SPACES) DTSCU072
00618 MOVE L072-DELIV-LINE-1 TO L072-DELIV-LINE-2 DTSCU072
00619 MOVE SPACES TO L072-DELIV-LINE-1 DTSCU072
00620 SET L072-DELIV-LINE-1-CHANGED-88 DTSCU072
00621 L072-DELIV-LINE-2-CHANGED-88 TO TRUE. DTSCU072
00622 DTSCU072
00623 IF L072-DELIV-LINE-2 = SPACES DTSCU072
00624 MOVE EMSG-FIELD-REQUIRED TO L072-MSG-AREA DTSCU072
00625 SET L072-DELIV-LINE-2-NOT-VALID-88 TO TRUE DTSCU072
00626 GO TO P2200-EXIT. DTSCU072
00627 DTSCU072
00628 IF L072-CITY = SPACE DTSCU072
00629 MOVE EMSG-FIELD-REQUIRED TO L072-MSG-AREA DTSCU072
00630 SET L072-CITY-NOT-VALID-88 TO TRUE DTSCU072
00631 GO TO P2200-EXIT. DTSCU072
00632 DTSCU072
00633 * IF L072-ZIP = SPACES CL**5
00634 * MOVE EMSG-FIELD-REQUIRED TO L072-MSG-AREA CL**5
00635 * SET L072-ZIP-NOT-VALID-88 TO TRUE CL**5
00636 * GO TO P2200-EXIT. CL**5
00637 DTSCU072
00638 IF L072-ZIP (1:5) NOT NUMERIC CL**3
00639 * OR L072-ZIP (1:5) = '00000' CL**3
00640 MOVE EMSG-FIELD-NOT-VALID TO L072-MSG-AREA CL**3
00641 SET L072-ZIP-NOT-VALID-88 TO TRUE CL**3
00642 GO TO P2200-EXIT. CL**4
00643 CL**4
00644 IF L072-ZIP (7:4) = SPACES CL**4
00645 GO TO P2200-EXIT CL**4
00646 ELSE CL**4
00647 IF L072-ZIP (7:4) NOT NUMERIC CL**4
00648 MOVE EMSG-FIELD-NOT-VALID TO L072-MSG-AREA CL**3
00649 SET L072-ZIP-NOT-VALID-88 TO TRUE. CL**3
00650 * MOVE SPACE TO L072-ZIP (6:5) CL**3
00651 * SET L072-ZIP-CHANGED-88 TO TRUE. CL**3
00652 * IF L072-ZIP (1:5) NOT NUMERIC CL**3
00653 * OR L072-ZIP (1:5) = '00000' CL**3
00654 * MOVE EMSG-FIELD-NOT-VALID TO L072-MSG-AREA CL**3
00655 * SET L072-ZIP-NOT-VALID-88 TO TRUE CL**3
00656 * ELSE CL**3
00657 * IF L072-ZIP (6:5) NOT = SPACE CL**3
00658 * MOVE SPACE TO L072-ZIP (6:5) CL**3
00659 * SET L072-ZIP-CHANGED-88 TO TRUE. CL**3
00660 P2200-EXIT. DTSCU072
00661 EXIT. DTSCU072
00662 EJECT DTSCU072
00663 P3000-FOREIGN-ADDRESS. DTSCU072
00664 SET L072-NO-CASS-EDITS-88 TO TRUE. DTSCU072
00665 DTSCU072
00666 IF L072-ZIP = ALL '*' DTSCU072
00667 NEXT SENTENCE DTSCU072
00668 ELSE DTSCU072
00669 MOVE ALL '*' TO L072-ZIP DTSCU072
00670 SET L072-ZIP-CHANGED-88 TO TRUE. DTSCU072
00671 DTSCU072
00672 IF L072-DELIV-LINE-1 = SPACES DTSCU072
00673 SET L072-DELIV-LINE-1-NOT-VALID-88 TO TRUE DTSCU072
00674 MOVE EMSG-FIELD-REQUIRED TO L072-MSG-AREA DTSCU072
00675 GO TO P3000-EXIT. DTSCU072
00676 DTSCU072
00677 IF L072-DELIV-LINE-2 = SPACES DTSCU072
00678 SET L072-DELIV-LINE-2-NOT-VALID-88 TO TRUE DTSCU072
00679 MOVE EMSG-FIELD-REQUIRED TO L072-MSG-AREA DTSCU072
00680 GO TO P3000-EXIT. DTSCU072
00681 DTSCU072
00682 IF L072-CITY = SPACES DTSCU072
00683 SET L072-CITY-NOT-VALID-88 TO TRUE DTSCU072
00684 MOVE EMSG-FIELD-REQUIRED TO L072-MSG-AREA DTSCU072
00685 GO TO P3000-EXIT. DTSCU072
00686 P3000-EXIT. DTSCU072
00687 EXIT. DTSCU072
00688 EJECT DTSCU072
00689 S1000-LINK-TO-FINALIST. DTSCU072
00690 EXEC CICS DTSCU072
00691 LINK DTSCU072
00692 PROGRAM ('FINALOL') DTSCU072
00693 COMMAREA (FINAL-CALL-AREA) DTSCU072
00694 END-EXEC. DTSCU072
00695 S1000-EXIT. DTSCU072
00696 EXIT. DTSCU072
00697 SKIP3 DTSCU072
00698 ****************** S071-NAME-CONVERT NOT USED. DTSCU072
00699 *S071-NAME-CONVERT. DTSCU072
00700 * EXEC CICS DTSCU072
00701 * LINK DTSCU072
00702 * PROGRAM ('DTSCU071') DTSCU072
00703 * COMMAREA (L071-COMM-AREA) DTSCU072
00704 * END-EXEC. DTSCU072
00705 *S071-EXIT. DTSCU072
00706 * EXIT. DTSCU072
00707 ****************** S899-ABEND NOT USED. DTSCU072
00708 *S899-ABEND. DTSCU072
00709 * SKIP1 DTSCU072
00710 * EXEC CICS DTSCU072
00711 * ABEND DTSCU072
00712 * ABCODE (WRK-ABEND-CODE) DTSCU072
00713 * END-EXEC. DTSCU072
00714 * SKIP1 DTSCU072
00715 *S899-EXIT. DTSCU072
00716 * EXIT. DTSCU072