00001 IDENTIFICATION DIVISION. 10/27/98 00002 PROGRAM-ID. DTSBD312. DTSBD312 00003 AUTHOR. TRICOASTAL CONSULTING LTD. LV005 00004 DATE-WRITTEN. JULY 1994. DTSBD312 00005 DATE-COMPILED. DTSBD312 00006 SKIP3 DTSBD312 00007 ***** DTSBD312 00008 * DTSBD312 00009 * FUNCTION: NOT LIABLE LETTER. DTSBD312 00010 * DTSBD312 00011 * DTSBD312 00012 * MODIFICATION LOG: DTSBD312 00013 * DTSBD312 00014 * 07/19/94 FROM VERMONT TXBD313. DTSBD312 00015 * WORK ORDER: PROGRAMMER: RHC DTSBD312 00016 * DTSBD312 00017 * 10/27/1998 REVIEWED AND MODIFED FOR DC. CL**2 00018 * REFERENCE: DC DEVELOPMENT PROGRAMMER: EHH CL**2 00019 * CL**2 00020 * MM/DD/YYYY XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX CL**2 00021 * XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX CL**2 00022 * REFERENCE: XXXXXXXXXXXXXXX PROGRAMMER: XXX CL**2 00023 * DTSBD312 00024 * DTSBD312 00025 * DESCRIPTION: DTSBD312 00026 * DTSBD312 00027 * IF, FOR A GIVEN EMP-NO, DTSBD312 IS CALLED MORE THAN ONCE, DTSBD312 00028 * THEN BYPASS PROCESSING ON ALL CALLS OTHER THAN THE FIRST. DTSBD312 00029 * DTSBD312 00030 * GENERATE A R108 RECORD. DTSBD312 00031 * DTSBD312 00032 * PLEASE SEE PRINTED OUTPUTS DESCRIPTIONS AND LAYOUTS DTSBD312 00033 * FOR FURTHER INFORMATION. DTSBD312 00034 * DTSBD312 00035 * DTSBD312 00036 * MASTER FILE RECORDS READ: DTSBD312 00037 * DTSBD312 00038 * NONE DTSBD312 00039 * DTSBD312 00040 * DTSBD312 00041 * MASTER FILE RECORDS UPDATED: DTSBD312 00042 * DTSBD312 00043 * NONE DTSBD312 00044 * DTSBD312 00045 * DTSBD312 00046 * REPORT RECORDS WRITTEN: DTSBD312 00047 * DTSBD312 00048 * R108 NOT LIABLE DETERMINATION LETTER. DTSBD312 00049 * DTSBD312 00050 * DTSBD312 00051 * MODULES CALLED: DTSBD312 00052 * DTSBD312 00053 * DTSBU111 LOOKUP ADDRESS. DTSBD312 00054 * DTSBU112 FORMAT ADDRESS. DTSBD312 00055 * DTSBU946 VARIABLE LENGTH RECORD SEQUENTIAL OUTPUT 1. DTSBD312 00056 * DTSBD312 00057 ***** DTSBD312 00058 SKIP3 DTSBD312 00059 ENVIRONMENT DIVISION. DTSBD312 00060 SKIP3 DTSBD312 00061 DATA DIVISION. DTSBD312 00062 EJECT DTSBD312 00063 WORKING-STORAGE SECTION. DTSBD312 000635 77 PAN-VALET PICTURE X(24) VALUE '005DTSBD312 10/27/98'. DTSBD312 00064 SKIP3 DTSBD312 00065 01 WRK-AREA. DTSBD312 00066 05 WRK-ABEND-CD PIC S9(04) COMP VALUE +312.DTSBD312 00067 CL**2 00068 05 WRK-MOD-NAME PIC X(08) VALUE 'DTSBD312'.DTSBD312 00069 CL**2 00070 05 FIRST-TIME-IND PIC X(01) VALUE 'Y'. DTSBD312 00071 CL**2 00072 05 WRK-EMP-NO PIC S9(07) COMP-3. DTSBD312 00073 SKIP3 DTSBD312 00074 01 MSG-TABLE. DTSBD312 00075 05 MSG1-ADDRESS-MISSING. DTSBD312 00076 10 MSG1-ID PIC X(11) VALUE 'DTSBD312909'. DTSBD312 00077 10 MSG1-SHORT-TEXT PIC X(20) VALUE 'ADDRESS MISSING'. DTSBD312 00078 10 MSG1-LONG-TEXT. DTSBD312 00079 15 FILLER PIC X(30) DTSBD312 00080 VALUE 'TRANSACTION FAILED - EXPECTED '. DTSBD312 00081 15 FILLER PIC X(30) DTSBD312 00082 VALUE 'ADDRESS NOT FOUND '. DTSBD312 00083 EJECT DTSBD312 00084 01 L111-LINK-AREA. DTSBD312 00085 ++INCLUDE DTSIL111 CL**2 00086 EJECT DTSBD312 00087 01 L112-LINK-AREA. DTSBD312 00088 ++INCLUDE DTSIL112 CL**2 00089 EJECT DTSBD312 00090 01 R108-REC. DTSBD312 00091 ++INCLUDE DTSIR108 CL**2 00092 EJECT DTSBD312 00093 LINKAGE SECTION. DTSBD312 00094 SKIP3 DTSBD312 00095 01 LBCM-LINK-AREA. DTSBD312 00096 ++INCLUDE DTSILBCM CL**3 00097 EJECT DTSBD312 00098 01 MPRF-REC. DTSBD312 00099 ++INCLUDE DTSIMPRF CL**3 00100 EJECT DTSBD312 00101 01 T001-REC. DTSBD312 00102 ++INCLUDE DTSIT001 CL**3 00103 EJECT DTSBD312 00104 PROCEDURE DIVISION USING LBCM-LINK-AREA DTSBD312 00105 MPRF-REC DTSBD312 00106 T001-REC. DTSBD312 00107 CL**2 00108 IF FIRST-TIME-IND = 'Y' DTSBD312 00109 PERFORM I0000-INITIATE THRU I0000-EXIT DTSBD312 00110 MOVE 'N' TO FIRST-TIME-IND. DTSBD312 00111 CL**2 00112 IF MPRF-EMP-NO NOT = WRK-EMP-NO DTSBD312 00113 PERFORM P0000-PROCESS THRU P0000-EXIT DTSBD312 00114 MOVE MPRF-EMP-NO TO WRK-EMP-NO. DTSBD312 00115 CL**2 00116 GOBACK. DTSBD312 00117 SKIP3 DTSBD312 00118 I0000-INITIATE. DTSBD312 00119 MOVE +0 TO WRK-EMP-NO. DTSBD312 00120 CL**3 00121 SET L111-LOOKUP-TAD-88 TO TRUE. CL**3 00122 CL**3 00123 SET L112-TAD-ADDR-88 TO TRUE. CL**3 00124 CL**3 00125 SET L112-ANCHOR-LAST-88 TO TRUE. DTSBD312 00126 CL**3 00127 MOVE LENGTH OF R108-REC TO R108-LENGTH. CL**3 00128 I0000-EXIT. EXIT. DTSBD312 00129 EJECT DTSBD312 00130 P0000-PROCESS. DTSBD312 00131 MOVE MPRF-EMP-NO TO L111-EMP-NO. CL**3 00132 CL**3 00133 SET L111-ID-NO-TAD-MAIL-88 TO TRUE. CL**5 00134 CL**3 00135 PERFORM S111-LOOKUP-ADDRESS THRU S111-EXIT. DTSBD312 00136 CL**3 00137 IF L111-ADDR-NOT-FOUND-88 DTSBD312 00138 SET LBCM-TRN-NOT-OK-88 TO TRUE DTSBD312 00139 MOVE MSG1-ADDRESS-MISSING TO LBCM-TRN-MSG-AREA DTSBD312 00140 GO TO P0000-EXIT. DTSBD312 00141 CL**2 00142 MOVE MPRF-PRIMARY-NAME TO L112-PRIMARY-NAME. CL**3 00143 CL**3 00144 MOVE L111-RETURN-AREA TO L112-NAME-ADDRESS-AREA. CL**3 00145 CL**3 00146 PERFORM S112-FORMAT-ADDRESS THRU S112-EXIT. DTSBD312 00147 CL**2 00148 MOVE T001-RESP-OP-ID TO R108-OP-ID. CL**4 00149 CL**3 00150 MOVE T001-NOT-LIABLE-LTR-TYPE TO R108-LETTER-TYPE. CL**4 00151 CL**3 00152 MOVE MPRF-EMP-NO TO R108-EMP-NO. CL**4 00153 CL**3 00154 MOVE LBCM-CURR-MAIL-DATE TO R108-MAIL-DATE. CL**4 00155 CL**3 00156 MOVE L112-MAILING-ADDRESS TO R108-FMT-ADDR. CL**4 00157 CL**3 00158 MOVE L111-ZIP TO R108-ZIP. CL**4 00159 CL**4 00160 MOVE L111-ADVANCED-BARCODE TO R108-ADVANCED-BARCODE. CL**4 00161 CL**4 00162 PERFORM S946-RPT-O THRU S946-EXIT. DTSBD312 00163 P0000-EXIT. EXIT. DTSBD312 00164 EJECT DTSBD312 00165 S111-LOOKUP-ADDRESS. DTSBD312 00166 CALL 'DTSBU111' USING L111-LINK-AREA. DTSBD312 00167 S111-EXIT. EXIT. DTSBD312 00168 SKIP3 DTSBD312 00169 S112-FORMAT-ADDRESS. DTSBD312 00170 CALL 'DTSBU112' USING L112-LINK-AREA. DTSBD312 00171 S112-EXIT. EXIT. DTSBD312 00172 SKIP3 DTSBD312 00173 S946-RPT-O. DTSBD312 00174 CALL 'DTSBU946' USING R108-REC. DTSBD312 00175 S946-EXIT. EXIT. DTSBD312