191 lines
15 KiB
COBOL
191 lines
15 KiB
COBOL
00001 IDENTIFICATION DIVISION. 04/30/08
|
|
00002 PROGRAM-ID. DTSBU109. DTSBU109
|
|
00003 AUTHOR. TRICOASTAL CONSULTING LTD. LV012
|
|
00004 DATE-WRITTEN. MAY 1994. DTSBU109
|
|
00005 DATE-COMPILED. DTSBU109
|
|
00006 SKIP3 DTSBU109
|
|
00007 ***** DTSBU109
|
|
00008 * DTSBU109
|
|
00009 * FUNCTION: RATE LOOKUP. DTSBU109
|
|
00010 * DTSBU109
|
|
00011 * TO CHANGE RATES, MODIFY THE WORKING-STORAGE TABLE: DTSBU109
|
|
00012 * WRK-RATE-TABLE. THE START DATE FOR ADMIN ASSESSMENT DTSBU109
|
|
00013 * IS STORED IN WRK-FIRST-QTR. DTSBU109
|
|
00014 * DTSBU109
|
|
00015 * MODIFICATION LOG: DTSBU109
|
|
00016 * DTSBU109
|
|
00017 * 05/16/94 INITIAL DEVELOPMENT. DTSBU109
|
|
00018 * WORK ORDER: PROGRAMMER: TCL DTSBU109
|
|
00019 * DTSBU109
|
|
00020 * 11/11/1998 REVIEWED AND MODIFIED FOR DC. AT DEVELOPMENT DTSBU109
|
|
00021 * TIME SUR RATE ALWAYS EQUAL TO ZERO. SUR TAX IS DTSBU109
|
|
00022 * INCORPORATED INTO THE SYSTEM IN ANTICIPATION OF DTSBU109
|
|
00023 * FUTURE REQUIREMENTS. DTSBU109
|
|
00024 * REFERENCE: DC DEVELOPMENT PROGRAMMER: EHH DTSBU109
|
|
00025 * DTSBU109
|
|
00026 * 11/11/1998 CLONED FROM DTSCU109. DTSBU109
|
|
00027 * REFERENCE: DC DEVELOPMENT PROGRAMMER: EHH DTSBU109
|
|
00028 * DTSBU109
|
|
00029 * 12/19/2005 MODIFIED FOR NEW ADMINISTRATIVE ASSESSMENT. DTSBU109
|
|
00030 * REFERENCE: PROGRAMMER: GD DTSBU109
|
|
00031 * DTSBU109
|
|
00032 * 02/28/2006 MODIFIED TO CHECK COMMAND CODE IN LINKAGE: DTSBU109
|
|
00033 * CMND = 0: RETURN FIRST QUARTER FOR WHICH DTSBU109
|
|
00034 * ADMIN ASSESSMENT IS EFFECTIVE. DTSBU109
|
|
00035 * CMND = 1: RETURN TAX RATE FOR QUARTER DTSBU109
|
|
00036 * SPECIFIED. DTSBU109
|
|
00037 * REFERENCE: PROGRAMMER: GD DTSBU109
|
|
00038 * DTSBU109
|
|
00039 * 01/31/2008 MODIFIED TO ADD COMMAND CODE IN LINKAGE: DTSBU109
|
|
00040 * CMND = 2: RETURN FIRST PENALTY INTERESR DTSBU109
|
|
00041 * QUARTER (20081). DTSBU109
|
|
00042 * REFERENCE: PROGRAMMER: RW1 DTSBU109
|
|
00043 * DTSBU109
|
|
00044 * MM/DD/YYYY XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSBU109
|
|
00045 * XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSBU109
|
|
00046 * REFERENCE: XXXXXXXXXXXXXXX PROGRAMMER: XXX DTSBU109
|
|
00047 * DTSBU109
|
|
00048 * DTSBU109
|
|
00049 * DESCRIPTION: DTSBU109
|
|
00050 * DTSBU109
|
|
00051 * DTSBU109
|
|
00052 ***** DTSBU109
|
|
00053 SKIP2 DTSBU109
|
|
00054 ENVIRONMENT DIVISION. DTSBU109
|
|
00055 DTSBU109
|
|
00056 DTSBU109
|
|
00057 DTSBU109
|
|
00058 DATA DIVISION. DTSBU109
|
|
00059 DTSBU109
|
|
00060 DTSBU109
|
|
00061 DTSBU109
|
|
00062 WORKING-STORAGE SECTION. DTSBU109
|
|
000625 77 PAN-VALET PICTURE X(24) VALUE '012DTSBU109 04/30/08'. DTSBU109
|
|
00063 DTSBU109
|
|
00064 01 WRK-AREA. DTSBU109
|
|
00065 DTSBU109
|
|
00066 05 WRK-ABEND-CODE PIC S9(04) COMP DTSBU109
|
|
00067 VALUE +109. DTSBU109
|
|
00068 DTSBU109
|
|
00069 05 WRK-RESP-CODE PIC S9(08) COMP. DTSBU109
|
|
00070 DTSBU109
|
|
00071 05 WRK-FIRST-QTR PIC S9(05) COMP-3 DTSBU109
|
|
00072 VALUE +20061. DTSBU109
|
|
00073 DTSBU109
|
|
00074 05 WRK-FIRST-PEN-INT-YRQ PIC S9(05) COMP-3 DTSBU109
|
|
00075 VALUE +20081. DTSBU109
|
|
00076 DTSBU109
|
|
00077 05 WRK-TAX-WAGE-BASE PIC S9(07)V99 COMP-3 DTSBU109
|
|
00078 VALUE +9000. DTSBU109
|
|
00079 DTSBU109
|
|
00080 05 WRK-SURTAX-RATE PIC S9V9(04) COMP-3. DTSBU109
|
|
00081 DTSBU109
|
|
00082 ********************************************************* DTSBU109
|
|
00083 05 WRK-RATE-TABLE. DTSBU109
|
|
00084 10 FILLER PIC S9(05) COMP-3 DTSBU109
|
|
00085 VALUE +00000. DTSBU109
|
|
00086 10 FILLER PIC S9(05) COMP-3 DTSBU109
|
|
00087 VALUE +20054. DTSBU109
|
|
00088 10 FILLER PIC S9V9(04) COMP-3 DTSBU109
|
|
00089 VALUE +0.000. DTSBU109
|
|
00090 10 FILLER PIC S9(05) COMP-3 DTSBU109
|
|
00091 VALUE +20061. DTSBU109
|
|
00092 10 FILLER PIC S9(05) COMP-3 DTSBU109
|
|
00093 VALUE +99999. DTSBU109
|
|
00094 10 FILLER PIC S9V9(04) COMP-3 DTSBU109
|
|
00095 VALUE +0.002. DTSBU109
|
|
00096 05 FILLER REDEFINES WRK-RATE-TABLE. DTSBU109
|
|
00097 10 WRK-RATE-TABLE-ENTRY OCCURS 2 TIMES DTSBU109
|
|
00098 INDEXED BY RATE-IDX. DTSBU109
|
|
00099 15 TAB-START-YRQ PIC S9(05) COMP-3. DTSBU109
|
|
00100 15 TAB-END-YRQ PIC S9(05) COMP-3. DTSBU109
|
|
00101 15 TAB-SURTAX-RATE PIC S9V9(04) COMP-3. DTSBU109
|
|
00102 EJECT DTSBU109
|
|
00103 LINKAGE SECTION. DTSBU109
|
|
00104 SKIP3 DTSBU109
|
|
00105 01 L109-LINK-AREA. DTSBU109
|
|
00106 ++INCLUDE DTSIL109 DTSBU109
|
|
00107 EJECT DTSBU109
|
|
00108 PROCEDURE DIVISION USING L109-LINK-AREA. DTSBU109
|
|
00109 DTSBU109
|
|
00110 DTSBU109
|
|
00111 PERFORM P0000-PROCESS THRU P0000-EXIT. DTSBU109
|
|
00112 DTSBU109
|
|
00113 DTSBU109
|
|
00114 GOBACK. DTSBU109
|
|
00115 EJECT DTSBU109
|
|
00116 P0000-PROCESS. DTSBU109
|
|
00117 IF L109-CMND-FIRST-QTR-88 DTSBU109
|
|
00118 PERFORM P1000-FIRST-QTR THRU P1000-EXIT DTSBU109
|
|
00119 ELSE DTSBU109
|
|
00120 IF L109-CMND-INPUT-QTR-88 DTSBU109
|
|
00121 PERFORM P2000-INPUT-QTR THRU P2000-EXIT DTSBU109
|
|
00122 ELSE DTSBU109
|
|
00123 IF L109-CMND-PEN-INT-QTR-88 DTSBU109
|
|
00124 PERFORM P3000-PEN-INT-QTR THRU P3000-EXIT DTSBU109
|
|
00125 ELSE DTSBU109
|
|
00126 DISPLAY 'DTSBU109 INVALID REQUEST ' DTSBU109
|
|
00127 L109-CMND-CD DTSBU109
|
|
00128 PERFORM S999-ABEND THRU S999-EXIT DTSBU109
|
|
00129 END-IF DTSBU109
|
|
00130 END-IF DTSBU109
|
|
00131 END-IF. DTSBU109
|
|
00132 DTSBU109
|
|
00133 P0000-EXIT. DTSBU109
|
|
00134 EXIT. DTSBU109
|
|
00135 EJECT DTSBU109
|
|
00136 P1000-FIRST-QTR. DTSBU109
|
|
00137 MOVE WRK-FIRST-QTR TO L109-YRQ. DTSBU109
|
|
00138 MOVE WRK-TAX-WAGE-BASE TO L109-TAX-WAGE-BASE. DTSBU109
|
|
00139 MOVE ZERO TO L109-SUR-RATE. DTSBU109
|
|
00140 DTSBU109
|
|
00141 P1000-EXIT. DTSBU109
|
|
00142 EXIT. DTSBU109
|
|
00143 DTSBU109
|
|
00144 P2000-INPUT-QTR. DTSBU109
|
|
00145 MOVE +0 TO WRK-SURTAX-RATE. DTSBU109
|
|
00146 DTSBU109
|
|
00147 SET RATE-IDX TO 1. DTSBU109
|
|
00148 SEARCH WRK-RATE-TABLE-ENTRY DTSBU109
|
|
00149 VARYING RATE-IDX DTSBU109
|
|
00150 AT END DTSBU109
|
|
00151 DISPLAY 'DTSBU109 - CANNOT FIND SURTAX RATE ' DTSBU109
|
|
00152 L109-YRQ DTSBU109
|
|
00153 PERFORM S999-ABEND THRU S999-EXIT DTSBU109
|
|
00154 WHEN L109-YRQ >= TAB-START-YRQ (RATE-IDX) DTSBU109
|
|
00155 AND <= TAB-END-YRQ (RATE-IDX) DTSBU109
|
|
00156 MOVE TAB-SURTAX-RATE (RATE-IDX) DTSBU109
|
|
00157 TO WRK-SURTAX-RATE DTSBU109
|
|
00158 END-SEARCH. DTSBU109
|
|
00159 DTSBU109
|
|
00160 IF L109-CLASS-RATED-88 DTSBU109
|
|
00161 PERFORM P2100-CLASS-RATED THRU P2100-EXIT DTSBU109
|
|
00162 ELSE DTSBU109
|
|
00163 IF L109-CLASS-SELF-INS-88 DTSBU109
|
|
00164 PERFORM P2200-CLASS-SELF-INS THRU P2200-EXIT. DTSBU109
|
|
00165 P2000-EXIT. DTSBU109
|
|
00166 EXIT. DTSBU109
|
|
00167 DTSBU109
|
|
00168 P2100-CLASS-RATED. DTSBU109
|
|
00169 MOVE WRK-SURTAX-RATE TO L109-SUR-RATE. DTSBU109
|
|
00170 *** DISPLAY 'BU109 YRQ ' L109-YRQ ' RATE ' L109-SUR-RATE. DTSBU109
|
|
00171 P2100-EXIT. DTSBU109
|
|
00172 EXIT. DTSBU109
|
|
00173 SKIP3 DTSBU109
|
|
00174 P2200-CLASS-SELF-INS. DTSBU109
|
|
00175 MOVE WRK-SURTAX-RATE TO L109-SUR-RATE. DTSBU109
|
|
00176 *** DISPLAY 'BU109 YRQ ' L109-YRQ ' RATE ' L109-SUR-RATE. DTSBU109
|
|
00177 P2200-EXIT. DTSBU109
|
|
00178 EXIT. DTSBU109
|
|
00179 DTSBU109
|
|
00180 P3000-PEN-INT-QTR. DTSBU109
|
|
00181 MOVE WRK-FIRST-PEN-INT-YRQ TO L109-FIRST-PEN-INT-YRQ. DTSBU109
|
|
00182 DTSBU109
|
|
00183 P3000-EXIT. DTSBU109
|
|
00184 EXIT. DTSBU109
|
|
00185 DTSBU109
|
|
00186 S999-ABEND. DTSBU109
|
|
00187 CALL 'DTSBU999' USING WRK-ABEND-CODE. DTSBU109
|
|
00188 S999-EXIT. DTSBU109
|
|
00189 EXIT. DTSBU109
|