DUTAS re-platformed to Raincode - Initial Source Code
This commit is contained in:
498
CICS/DTSCU003.cob
Normal file
498
CICS/DTSCU003.cob
Normal file
@ -0,0 +1,498 @@
|
||||
00001 IDENTIFICATION DIVISION. 03/12/12
|
||||
00002 PROGRAM-ID. DTSCU003. DTSCU003
|
||||
00003 AUTHOR. NGC. LV003
|
||||
00004 DATE-WRITTEN. NOVEMBER 2009. DTSCU003
|
||||
00005 DATE-COMPILED. DTSCU003
|
||||
00006 SKIP3 DTSCU003
|
||||
00007 ***** DTSCU003
|
||||
00008 * DTSCU003
|
||||
00009 * FUNCTION: WORK DAYS. DTSCU003
|
||||
00010 * DTSCU003
|
||||
00011 * DTSCU003
|
||||
00012 * MODIFICATION LOG: DTSCU003
|
||||
00013 * DTSCU003
|
||||
00014 * 11/25/2009 INITIAL DEVELOPMENT - CLONED FROM DTSBU003. DTSCU003
|
||||
00015 * WORK ORDER: PROGRAMMER: GD DTSCU003
|
||||
00016 * DTSCU003
|
||||
00017 * MM/DD/YYYY XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSCU003
|
||||
00018 * REFERENCE: XXXXXXXXXXXXXXX PROGRAMMER: XXX DTSCU003
|
||||
00019 * DTSCU003
|
||||
00020 * DTSCU003
|
||||
00021 * DESCRIPTION: DTSCU003
|
||||
00022 * DTSCU003
|
||||
00023 * DETERMINE WHETHER A GIVEN DATE IS AN AGENCY WORK DAY. DTSCU003
|
||||
00024 * DTSCU003
|
||||
00025 ***** DTSCU003
|
||||
00026 SKIP3 DTSCU003
|
||||
00027 ENVIRONMENT DIVISION. DTSCU003
|
||||
00028 SKIP3 DTSCU003
|
||||
00029 DATA DIVISION. DTSCU003
|
||||
00030 SKIP3 DTSCU003
|
||||
00031 WORKING-STORAGE SECTION. DTSCU003
|
||||
000315 77 PAN-VALET PICTURE X(24) VALUE '003DTSCU003 03/12/12'. DTSCU003
|
||||
00032 SKIP3 DTSCU003
|
||||
00033 01 WRK-AREA. DTSCU003
|
||||
00034 05 WRK-ABEND-CD PIC X(04) VALUE 'U003'. DTSCU003
|
||||
00035 DTSCU003
|
||||
00036 05 HOLIDAY-AREA. DTSCU003
|
||||
00037 10 HOLIDAY-YEAR PIC 9(04). DTSCU003
|
||||
00038 DTSCU003
|
||||
00039 10 HOLIDAYS-IN-YEAR. DTSCU003
|
||||
00040 15 NEW-YEARS-DAY PIC S9(09) COMP-3. DTSCU003
|
||||
00041 15 MARTIN-LUTHER-KING-DAY PIC S9(09) COMP-3. DTSCU003
|
||||
00042 15 PRESIDENTS-DAY PIC S9(09) COMP-3. DTSCU003
|
||||
00043 15 INAGURATION-DAY PIC S9(09) COMP-3. DTSCU003
|
||||
00044 15 MEMORIAL-DAY PIC S9(09) COMP-3. DTSCU003
|
||||
00045 15 INDEPENDENCE-DAY PIC S9(09) COMP-3. DTSCU003
|
||||
00046 15 LABOR-DAY PIC S9(09) COMP-3. DTSCU003
|
||||
00047 15 COLUMBUS-DAY PIC S9(09) COMP-3. DTSCU003
|
||||
00048 15 VETERANS-DAY PIC S9(09) COMP-3. DTSCU003
|
||||
00049 15 THANKSGIVING-DAY PIC S9(09) COMP-3. DTSCU003
|
||||
00050 15 CHRISTMAS-DAY PIC S9(09) COMP-3. DTSCU003
|
||||
00051 15 NEW-YEARS-EVE PIC S9(09) COMP-3. DTSCU003
|
||||
00052 DTSCU003
|
||||
00053 10 FILLER REDEFINES HOLIDAYS-IN-YEAR. DTSCU003
|
||||
00054 15 HOLIDAY-DATE DTSCU003
|
||||
00055 OCCURS 12 TIMES DTSCU003
|
||||
00056 INDEXED BY HOLIDAY-IDX PIC S9(09) COMP-3. DTSCU003
|
||||
00057 DTSCU003
|
||||
00058 10 HOLIDAY-CNT PIC S9(04) COMP DTSCU003
|
||||
00059 VALUE +12. DTSCU003
|
||||
00060 DTSCU003
|
||||
00061 05 WRK-RESULT PIC S9(05) COMP-3. DTSCU003
|
||||
00062 DTSCU003
|
||||
00063 05 WRK-REMAINDER PIC S9(05) COMP-3. DTSCU003
|
||||
00064 EJECT DTSCU003
|
||||
00065 01 L001-LINK-AREA. DTSCU003
|
||||
00066 ++INCLUDE DTSIL001 DTSCU003
|
||||
00067 EJECT DTSCU003
|
||||
00068 01 L005-LINK-AREA. DTSCU003
|
||||
00069 ++INCLUDE DTSIL005 DTSCU003
|
||||
00070 EJECT DTSCU003
|
||||
00071 LINKAGE SECTION. DTSCU003
|
||||
00072 SKIP3 DTSCU003
|
||||
00073 01 DFHCOMMAREA. DTSCU003
|
||||
00074 ++INCLUDE DTSIL003 DTSCU003
|
||||
00075 EJECT DTSCU003
|
||||
00076 PROCEDURE DIVISION. DTSCU003
|
||||
00077 DTSCU003
|
||||
00078 PERFORM I0000-INITIALIZE THRU I0000-EXIT. DTSCU003
|
||||
00079 DTSCU003
|
||||
00080 IF L003-AGENCY-DAY DTSCU003
|
||||
00081 PERFORM P0000-PROCESS THRU P0000-EXIT DTSCU003
|
||||
00082 ELSE DTSCU003
|
||||
00083 EXEC CICS ABEND ABCODE (WRK-ABEND-CD) END-EXEC DTSCU003
|
||||
00084 END-IF. DTSCU003
|
||||
00085 DTSCU003
|
||||
00086 GOBACK. DTSCU003
|
||||
00087 EJECT DTSCU003
|
||||
00088 I0000-INITIALIZE. DTSCU003
|
||||
00089 MOVE L003-DATE TO L001-FED-8-DATE-9. DTSCU003
|
||||
00090 DTSCU003
|
||||
00091 MOVE L001-FED-8-YR TO HOLIDAY-YEAR. DTSCU003
|
||||
00092 DTSCU003
|
||||
00093 PERFORM S1000-DETERMINE-HOLIDAYS THRU S1000-EXIT. DTSCU003
|
||||
00094 DTSCU003
|
||||
00095 DTSCU003
|
||||
00096 I0000-EXIT. DTSCU003
|
||||
00097 EXIT. DTSCU003
|
||||
00098 EJECT DTSCU003
|
||||
00099 P0000-PROCESS. DTSCU003
|
||||
00100 MOVE L003-DATE TO L001-FED-8-DATE-9. DTSCU003
|
||||
00101 DTSCU003
|
||||
00102 SET L001-FROM-FED-8 TO TRUE. DTSCU003
|
||||
00103 PERFORM S001-DATE-CONVERT THRU S001-EXIT. DTSCU003
|
||||
00104 DTSCU003
|
||||
00105 IF L001-INVALID-DATE DTSCU003
|
||||
00106 EXEC CICS ABEND ABCODE (WRK-ABEND-CD) END-EXEC DTSCU003
|
||||
00107 END-IF. DTSCU003
|
||||
00108 DTSCU003
|
||||
00109 IF L001-SATURDAY OR L001-SUNDAY DTSCU003
|
||||
00110 SET L003-NOT-WORK-DAY TO TRUE DTSCU003
|
||||
00111 ELSE DTSCU003
|
||||
00112 SET L003-IS-WORK-DAY TO TRUE DTSCU003
|
||||
00113 PERFORM P1000-CHECK-FOR-HOLIDAY THRU P1000-EXIT DTSCU003
|
||||
00114 END-IF. DTSCU003
|
||||
00115 DTSCU003
|
||||
00116 P0000-EXIT. DTSCU003
|
||||
00117 EXIT. DTSCU003
|
||||
00118 DTSCU003
|
||||
00119 P1000-CHECK-FOR-HOLIDAY. DTSCU003
|
||||
00120 MOVE L003-DATE TO L001-FED-8-DATE-9. DTSCU003
|
||||
00121 DTSCU003
|
||||
00122 IF L001-FED-8-YR = HOLIDAY-YEAR DTSCU003
|
||||
00123 NEXT SENTENCE DTSCU003
|
||||
00124 ELSE DTSCU003
|
||||
00125 MOVE L001-FED-8-YR TO HOLIDAY-YEAR DTSCU003
|
||||
00126 PERFORM S1000-DETERMINE-HOLIDAYS THRU S1000-EXIT. DTSCU003
|
||||
00127 DTSCU003
|
||||
00128 PERFORM DTSCU003
|
||||
00129 VARYING HOLIDAY-IDX FROM 1 BY 1 DTSCU003
|
||||
00130 UNTIL HOLIDAY-IDX > HOLIDAY-CNT DTSCU003
|
||||
00131 IF HOLIDAY-DATE (HOLIDAY-IDX) = L003-DATE DTSCU003
|
||||
00132 SET L003-NOT-WORK-DAY TO TRUE DTSCU003
|
||||
00133 END-IF DTSCU003
|
||||
00134 END-PERFORM. DTSCU003
|
||||
00135 P1000-EXIT. DTSCU003
|
||||
00136 EXIT. DTSCU003
|
||||
00137 EJECT DTSCU003
|
||||
00138 S1000-DETERMINE-HOLIDAYS. DTSCU003
|
||||
00139 MOVE HOLIDAY-YEAR TO L001-FED-8-YR. DTSCU003
|
||||
00140 DTSCU003
|
||||
00141 MOVE 01 TO L001-FED-8-MO. DTSCU003
|
||||
00142 DTSCU003
|
||||
00143 MOVE 01 TO L001-FED-8-DA. DTSCU003
|
||||
00144 DTSCU003
|
||||
00145 SET L001-FROM-FED-8 TO TRUE. DTSCU003
|
||||
00146 PERFORM S001-DATE-CONVERT THRU S001-EXIT. DTSCU003
|
||||
00147 DTSCU003
|
||||
00148 IF L001-INVALID-DATE DTSCU003
|
||||
00149 EXEC CICS ABEND ABCODE (WRK-ABEND-CD) END-EXEC DTSCU003
|
||||
00150 END-IF. DTSCU003
|
||||
00151 DTSCU003
|
||||
00152 IF L001-SUNDAY DTSCU003
|
||||
00153 MOVE 02 TO L001-FED-8-DA DTSCU003
|
||||
00154 MOVE L001-FED-8-DATE-9 TO NEW-YEARS-DAY DTSCU003
|
||||
00155 ELSE DTSCU003
|
||||
00156 IF L001-SATURDAY DTSCU003
|
||||
00157 MOVE 0 TO NEW-YEARS-DAY DTSCU003
|
||||
00158 ELSE DTSCU003
|
||||
00159 MOVE L001-FED-8-DATE-9 TO NEW-YEARS-DAY DTSCU003
|
||||
00160 END-IF DTSCU003
|
||||
00161 END-IF. DTSCU003
|
||||
00162 DTSCU003
|
||||
00163 MOVE HOLIDAY-YEAR TO L001-FED-8-YR. DTSCU003
|
||||
00164 DTSCU003
|
||||
00165 MOVE 01 TO L001-FED-8-MO. DTSCU003
|
||||
00166 DTSCU003
|
||||
00167 MOVE 21 TO L001-FED-8-DA. DTSCU003
|
||||
00168 DTSCU003
|
||||
00169 SET L001-FROM-FED-8 TO TRUE. DTSCU003
|
||||
00170 PERFORM S001-DATE-CONVERT THRU S001-EXIT. DTSCU003
|
||||
00171 DTSCU003
|
||||
00172 IF L001-INVALID-DATE DTSCU003
|
||||
00173 EXEC CICS ABEND ABCODE (WRK-ABEND-CD) END-EXEC DTSCU003
|
||||
00174 END-IF. DTSCU003
|
||||
00175 DTSCU003
|
||||
00176 IF L001-MONDAY DTSCU003
|
||||
00177 NEXT SENTENCE DTSCU003
|
||||
00178 ELSE DTSCU003
|
||||
00179 IF L001-SUNDAY DTSCU003
|
||||
00180 COMPUTE L001-JUL-ABS-DAY = L001-JUL-ABS-DAY - 6 DTSCU003
|
||||
00181 ELSE DTSCU003
|
||||
00182 COMPUTE L001-JUL-ABS-DAY DTSCU003
|
||||
00183 = L001-JUL-ABS-DAY - (L001-DAY-OF-WEEK - 2) DTSCU003
|
||||
00184 END-IF. DTSCU003
|
||||
00185 DTSCU003
|
||||
00186 SET L001-FROM-ABS-DAY TO TRUE. DTSCU003
|
||||
00187 PERFORM S001-DATE-CONVERT THRU S001-EXIT. DTSCU003
|
||||
00188 DTSCU003
|
||||
00189 IF L001-INVALID-DATE DTSCU003
|
||||
00190 EXEC CICS ABEND ABCODE (WRK-ABEND-CD) END-EXEC DTSCU003
|
||||
00191 END-IF. DTSCU003
|
||||
00192 DTSCU003
|
||||
00193 MOVE L001-FED-8-DATE-9 TO MARTIN-LUTHER-KING-DAY. DTSCU003
|
||||
00194 DTSCU003
|
||||
00195 DTSCU003
|
||||
00196 MOVE HOLIDAY-YEAR TO L001-FED-8-YR. DTSCU003
|
||||
00197 DTSCU003
|
||||
00198 MOVE 01 TO L001-FED-8-MO. DTSCU003
|
||||
00199 DTSCU003
|
||||
00200 MOVE 20 TO L001-FED-8-DA. DTSCU003
|
||||
00201 DTSCU003
|
||||
00202 SET L001-FROM-FED-8 TO TRUE. DTSCU003
|
||||
00203 PERFORM S001-DATE-CONVERT THRU S001-EXIT. DTSCU003
|
||||
00204 DTSCU003
|
||||
00205 IF L001-INVALID-DATE DTSCU003
|
||||
00206 EXEC CICS ABEND ABCODE (WRK-ABEND-CD) END-EXEC DTSCU003
|
||||
00207 END-IF. DTSCU003
|
||||
00208 DTSCU003
|
||||
00209 DIVIDE L001-FED-8-YR BY 4 DTSCU003
|
||||
00210 GIVING WRK-RESULT DTSCU003
|
||||
00211 REMAINDER WRK-REMAINDER. DTSCU003
|
||||
00212 DTSCU003
|
||||
00213 IF (WRK-REMAINDER NOT = 1) DTSCU003
|
||||
00214 OR DTSCU003
|
||||
00215 (L001-SATURDAY) DTSCU003
|
||||
00216 OR DTSCU003
|
||||
00217 (L001-SUNDAY) DTSCU003
|
||||
00218 OR DTSCU003
|
||||
00219 (L001-FED-8-DATE-9 = MARTIN-LUTHER-KING-DAY) DTSCU003
|
||||
00220 MOVE +0 TO INAGURATION-DAY DTSCU003
|
||||
00221 ELSE DTSCU003
|
||||
00222 MOVE L001-FED-8-DATE-9 TO INAGURATION-DAY DTSCU003
|
||||
00223 END-IF. DTSCU003
|
||||
00224 DTSCU003
|
||||
00225 MOVE HOLIDAY-YEAR TO L001-FED-8-YR. DTSCU003
|
||||
00226 DTSCU003
|
||||
00227 MOVE 02 TO L001-FED-8-MO. DTSCU003
|
||||
00228 DTSCU003
|
||||
00229 MOVE 01 TO L001-FED-8-DA. DTSCU003
|
||||
00230 DTSCU003
|
||||
00231 SET L001-FROM-FED-8 TO TRUE. DTSCU003
|
||||
00232 PERFORM S001-DATE-CONVERT THRU S001-EXIT. DTSCU003
|
||||
00233 DTSCU003
|
||||
00234 IF L001-INVALID-DATE DTSCU003
|
||||
00235 EXEC CICS ABEND ABCODE (WRK-ABEND-CD) END-EXEC DTSCU003
|
||||
00236 END-IF. DTSCU003
|
||||
00237 DTSCU003
|
||||
00238 IF L001-DAY-OF-WEEK < 3 DTSCU003
|
||||
00239 COMPUTE L001-JUL-ABS-DAY DTSCU003
|
||||
00240 = L001-JUL-ABS-DAY + 16 - L001-DAY-OF-WEEK DTSCU003
|
||||
00241 ELSE DTSCU003
|
||||
00242 COMPUTE L001-JUL-ABS-DAY DTSCU003
|
||||
00243 = L001-JUL-ABS-DAY + 23 - L001-DAY-OF-WEEK. DTSCU003
|
||||
00244 DTSCU003
|
||||
00245 SET L001-FROM-ABS-DAY TO TRUE. DTSCU003
|
||||
00246 PERFORM S001-DATE-CONVERT THRU S001-EXIT. DTSCU003
|
||||
00247 DTSCU003
|
||||
00248 IF L001-INVALID-DATE DTSCU003
|
||||
00249 EXEC CICS ABEND ABCODE (WRK-ABEND-CD) END-EXEC DTSCU003
|
||||
00250 END-IF. DTSCU003
|
||||
00251 DTSCU003
|
||||
00252 MOVE L001-FED-8-DATE-9 TO PRESIDENTS-DAY. DTSCU003
|
||||
00253 DTSCU003
|
||||
00254 DTSCU003
|
||||
00255 MOVE HOLIDAY-YEAR TO L001-FED-8-YR. DTSCU003
|
||||
00256 DTSCU003
|
||||
00257 MOVE 05 TO L001-FED-8-MO. DTSCU003
|
||||
00258 DTSCU003
|
||||
00259 MOVE 31 TO L001-FED-8-DA. DTSCU003
|
||||
00260 DTSCU003
|
||||
00261 SET L001-FROM-FED-8 TO TRUE. DTSCU003
|
||||
00262 PERFORM S001-DATE-CONVERT THRU S001-EXIT. DTSCU003
|
||||
00263 DTSCU003
|
||||
00264 IF L001-INVALID-DATE DTSCU003
|
||||
00265 EXEC CICS ABEND ABCODE (WRK-ABEND-CD) END-EXEC DTSCU003
|
||||
00266 END-IF. DTSCU003
|
||||
00267 DTSCU003
|
||||
00268 IF L001-MONDAY DTSCU003
|
||||
00269 NEXT SENTENCE DTSCU003
|
||||
00270 ELSE DTSCU003
|
||||
00271 IF L001-SUNDAY DTSCU003
|
||||
00272 COMPUTE L001-JUL-ABS-DAY = L001-JUL-ABS-DAY - 6 DTSCU003
|
||||
00273 ELSE DTSCU003
|
||||
00274 COMPUTE L001-JUL-ABS-DAY DTSCU003
|
||||
00275 = L001-JUL-ABS-DAY - (L001-DAY-OF-WEEK - 2). DTSCU003
|
||||
00276 DTSCU003
|
||||
00277 SET L001-FROM-ABS-DAY TO TRUE. DTSCU003
|
||||
00278 PERFORM S001-DATE-CONVERT THRU S001-EXIT. DTSCU003
|
||||
00279 DTSCU003
|
||||
00280 IF L001-INVALID-DATE DTSCU003
|
||||
00281 EXEC CICS ABEND ABCODE (WRK-ABEND-CD) END-EXEC DTSCU003
|
||||
00282 END-IF. DTSCU003
|
||||
00283 DTSCU003
|
||||
00284 MOVE L001-FED-8-DATE-9 TO MEMORIAL-DAY. DTSCU003
|
||||
00285 DTSCU003
|
||||
00286 DTSCU003
|
||||
00287 MOVE HOLIDAY-YEAR TO L001-FED-8-YR. DTSCU003
|
||||
00288 DTSCU003
|
||||
00289 MOVE 07 TO L001-FED-8-MO. DTSCU003
|
||||
00290 DTSCU003
|
||||
00291 MOVE 04 TO L001-FED-8-DA. DTSCU003
|
||||
00292 DTSCU003
|
||||
00293 SET L001-FROM-FED-8 TO TRUE. DTSCU003
|
||||
00294 PERFORM S001-DATE-CONVERT THRU S001-EXIT. DTSCU003
|
||||
00295 DTSCU003
|
||||
00296 IF L001-INVALID-DATE DTSCU003
|
||||
00297 EXEC CICS ABEND ABCODE (WRK-ABEND-CD) END-EXEC DTSCU003
|
||||
00298 END-IF. DTSCU003
|
||||
00299 DTSCU003
|
||||
00300 IF L001-SUNDAY DTSCU003
|
||||
00301 COMPUTE L001-JUL-ABS-DAY = L001-JUL-ABS-DAY + 1 DTSCU003
|
||||
00302 ELSE DTSCU003
|
||||
00303 IF L001-SATURDAY DTSCU003
|
||||
00304 COMPUTE L001-JUL-ABS-DAY = L001-JUL-ABS-DAY - 1. DTSCU003
|
||||
00305 DTSCU003
|
||||
00306 SET L001-FROM-ABS-DAY TO TRUE. DTSCU003
|
||||
00307 PERFORM S001-DATE-CONVERT THRU S001-EXIT. DTSCU003
|
||||
00308 DTSCU003
|
||||
00309 IF L001-INVALID-DATE DTSCU003
|
||||
00310 EXEC CICS ABEND ABCODE (WRK-ABEND-CD) END-EXEC DTSCU003
|
||||
00311 END-IF. DTSCU003
|
||||
00312 DTSCU003
|
||||
00313 MOVE L001-FED-8-DATE-9 TO INDEPENDENCE-DAY. DTSCU003
|
||||
00314 DTSCU003
|
||||
00315 DTSCU003
|
||||
00316 MOVE HOLIDAY-YEAR TO L001-FED-8-YR. DTSCU003
|
||||
00317 DTSCU003
|
||||
00318 MOVE 09 TO L001-FED-8-MO. DTSCU003
|
||||
00319 DTSCU003
|
||||
00320 MOVE 01 TO L001-FED-8-DA. DTSCU003
|
||||
00321 DTSCU003
|
||||
00322 SET L001-FROM-FED-8 TO TRUE. DTSCU003
|
||||
00323 PERFORM S001-DATE-CONVERT THRU S001-EXIT. DTSCU003
|
||||
00324 DTSCU003
|
||||
00325 IF L001-INVALID-DATE DTSCU003
|
||||
00326 EXEC CICS ABEND ABCODE (WRK-ABEND-CD) END-EXEC DTSCU003
|
||||
00327 END-IF. DTSCU003
|
||||
00328 DTSCU003
|
||||
00329 IF L001-DAY-OF-WEEK < 3 DTSCU003
|
||||
00330 COMPUTE L001-JUL-ABS-DAY DTSCU003
|
||||
00331 = L001-JUL-ABS-DAY + 2 - L001-DAY-OF-WEEK DTSCU003
|
||||
00332 ELSE DTSCU003
|
||||
00333 COMPUTE L001-JUL-ABS-DAY DTSCU003
|
||||
00334 = L001-JUL-ABS-DAY + 9 - L001-DAY-OF-WEEK. DTSCU003
|
||||
00335 DTSCU003
|
||||
00336 SET L001-FROM-ABS-DAY TO TRUE. DTSCU003
|
||||
00337 PERFORM S001-DATE-CONVERT THRU S001-EXIT. DTSCU003
|
||||
00338 DTSCU003
|
||||
00339 IF L001-INVALID-DATE DTSCU003
|
||||
00340 EXEC CICS ABEND ABCODE (WRK-ABEND-CD) END-EXEC DTSCU003
|
||||
00341 END-IF. DTSCU003
|
||||
00342 DTSCU003
|
||||
00343 MOVE L001-FED-8-DATE-9 TO LABOR-DAY. DTSCU003
|
||||
00344 DTSCU003
|
||||
00345 DTSCU003
|
||||
00346 MOVE HOLIDAY-YEAR TO L001-FED-8-YR. DTSCU003
|
||||
00347 DTSCU003
|
||||
00348 MOVE 10 TO L001-FED-8-MO. DTSCU003
|
||||
00349 DTSCU003
|
||||
00350 MOVE 01 TO L001-FED-8-DA. DTSCU003
|
||||
00351 DTSCU003
|
||||
00352 SET L001-FROM-FED-8 TO TRUE. DTSCU003
|
||||
00353 PERFORM S001-DATE-CONVERT THRU S001-EXIT. DTSCU003
|
||||
00354 DTSCU003
|
||||
00355 IF L001-INVALID-DATE DTSCU003
|
||||
00356 EXEC CICS ABEND ABCODE (WRK-ABEND-CD) END-EXEC DTSCU003
|
||||
00357 END-IF. DTSCU003
|
||||
00358 DTSCU003
|
||||
00359 IF L001-DAY-OF-WEEK < 3 DTSCU003
|
||||
00360 COMPUTE L001-JUL-ABS-DAY DTSCU003
|
||||
00361 = L001-JUL-ABS-DAY + 9 - L001-DAY-OF-WEEK DTSCU003
|
||||
00362 ELSE DTSCU003
|
||||
00363 COMPUTE L001-JUL-ABS-DAY DTSCU003
|
||||
00364 = L001-JUL-ABS-DAY + 16 - L001-DAY-OF-WEEK. DTSCU003
|
||||
00365 DTSCU003
|
||||
00366 SET L001-FROM-ABS-DAY TO TRUE. DTSCU003
|
||||
00367 PERFORM S001-DATE-CONVERT THRU S001-EXIT. DTSCU003
|
||||
00368 DTSCU003
|
||||
00369 IF L001-INVALID-DATE DTSCU003
|
||||
00370 EXEC CICS ABEND ABCODE (WRK-ABEND-CD) END-EXEC DTSCU003
|
||||
00371 END-IF. DTSCU003
|
||||
00372 DTSCU003
|
||||
00373 MOVE L001-FED-8-DATE-9 TO COLUMBUS-DAY. DTSCU003
|
||||
00374 DTSCU003
|
||||
00375 DTSCU003
|
||||
00376 MOVE HOLIDAY-YEAR TO L001-FED-8-YR. DTSCU003
|
||||
00377 DTSCU003
|
||||
00378 MOVE 11 TO L001-FED-8-MO. DTSCU003
|
||||
00379 DTSCU003
|
||||
00380 MOVE 11 TO L001-FED-8-DA. DTSCU003
|
||||
00381 DTSCU003
|
||||
00382 SET L001-FROM-FED-8 TO TRUE. DTSCU003
|
||||
00383 PERFORM S001-DATE-CONVERT THRU S001-EXIT. DTSCU003
|
||||
00384 DTSCU003
|
||||
00385 IF L001-INVALID-DATE DTSCU003
|
||||
00386 EXEC CICS ABEND ABCODE (WRK-ABEND-CD) END-EXEC DTSCU003
|
||||
00387 END-IF. DTSCU003
|
||||
00388 DTSCU003
|
||||
00389 IF L001-SUNDAY DTSCU003
|
||||
00390 COMPUTE L001-JUL-ABS-DAY = L001-JUL-ABS-DAY + 1 DTSCU003
|
||||
00391 ELSE DTSCU003
|
||||
00392 IF L001-SATURDAY DTSCU003
|
||||
00393 COMPUTE L001-JUL-ABS-DAY = L001-JUL-ABS-DAY - 1. DTSCU003
|
||||
00394 DTSCU003
|
||||
00395 SET L001-FROM-ABS-DAY TO TRUE. DTSCU003
|
||||
00396 PERFORM S001-DATE-CONVERT THRU S001-EXIT. DTSCU003
|
||||
00397 DTSCU003
|
||||
00398 IF L001-INVALID-DATE DTSCU003
|
||||
00399 EXEC CICS ABEND ABCODE (WRK-ABEND-CD) END-EXEC DTSCU003
|
||||
00400 END-IF. DTSCU003
|
||||
00401 DTSCU003
|
||||
00402 MOVE L001-FED-8-DATE-9 TO VETERANS-DAY. DTSCU003
|
||||
00403 DTSCU003
|
||||
00404 DTSCU003
|
||||
00405 MOVE HOLIDAY-YEAR TO L001-FED-8-YR. DTSCU003
|
||||
00406 DTSCU003
|
||||
00407 MOVE 11 TO L001-FED-8-MO. DTSCU003
|
||||
00408 DTSCU003
|
||||
00409 MOVE 01 TO L001-FED-8-DA. DTSCU003
|
||||
00410 DTSCU003
|
||||
00411 SET L001-FROM-FED-8 TO TRUE. DTSCU003
|
||||
00412 PERFORM S001-DATE-CONVERT THRU S001-EXIT. DTSCU003
|
||||
00413 DTSCU003
|
||||
00414 IF L001-INVALID-DATE DTSCU003
|
||||
00415 EXEC CICS ABEND ABCODE (WRK-ABEND-CD) END-EXEC DTSCU003
|
||||
00416 END-IF. DTSCU003
|
||||
00417 DTSCU003
|
||||
00418 IF L001-DAY-OF-WEEK < 6 DTSCU003
|
||||
00419 COMPUTE L001-JUL-ABS-DAY DTSCU003
|
||||
00420 = L001-JUL-ABS-DAY + 26 - L001-DAY-OF-WEEK DTSCU003
|
||||
00421 ELSE DTSCU003
|
||||
00422 COMPUTE L001-JUL-ABS-DAY DTSCU003
|
||||
00423 = L001-JUL-ABS-DAY + 33 - L001-DAY-OF-WEEK. DTSCU003
|
||||
00424 DTSCU003
|
||||
00425 SET L001-FROM-ABS-DAY TO TRUE. DTSCU003
|
||||
00426 PERFORM S001-DATE-CONVERT THRU S001-EXIT. DTSCU003
|
||||
00427 DTSCU003
|
||||
00428 IF L001-INVALID-DATE DTSCU003
|
||||
00429 EXEC CICS ABEND ABCODE (WRK-ABEND-CD) END-EXEC DTSCU003
|
||||
00430 END-IF. DTSCU003
|
||||
00431 DTSCU003
|
||||
00432 MOVE L001-FED-8-DATE-9 TO THANKSGIVING-DAY. DTSCU003
|
||||
00433 DTSCU003
|
||||
00434 DTSCU003
|
||||
00435 MOVE HOLIDAY-YEAR TO L001-FED-8-YR. DTSCU003
|
||||
00436 DTSCU003
|
||||
00437 MOVE 12 TO L001-FED-8-MO. DTSCU003
|
||||
00438 DTSCU003
|
||||
00439 MOVE 25 TO L001-FED-8-DA. DTSCU003
|
||||
00440 DTSCU003
|
||||
00441 SET L001-FROM-FED-8 TO TRUE. DTSCU003
|
||||
00442 PERFORM S001-DATE-CONVERT THRU S001-EXIT. DTSCU003
|
||||
00443 DTSCU003
|
||||
00444 IF L001-INVALID-DATE DTSCU003
|
||||
00445 EXEC CICS ABEND ABCODE (WRK-ABEND-CD) END-EXEC DTSCU003
|
||||
00446 END-IF. DTSCU003
|
||||
00447 DTSCU003
|
||||
00448 IF L001-SUNDAY DTSCU003
|
||||
00449 COMPUTE L001-JUL-ABS-DAY = L001-JUL-ABS-DAY + 1 DTSCU003
|
||||
00450 ELSE DTSCU003
|
||||
00451 IF L001-SATURDAY DTSCU003
|
||||
00452 COMPUTE L001-JUL-ABS-DAY = L001-JUL-ABS-DAY - 1. DTSCU003
|
||||
00453 DTSCU003
|
||||
00454 SET L001-FROM-ABS-DAY TO TRUE. DTSCU003
|
||||
00455 PERFORM S001-DATE-CONVERT THRU S001-EXIT. DTSCU003
|
||||
00456 DTSCU003
|
||||
00457 IF L001-INVALID-DATE DTSCU003
|
||||
00458 EXEC CICS ABEND ABCODE (WRK-ABEND-CD) END-EXEC DTSCU003
|
||||
00459 END-IF. DTSCU003
|
||||
00460 DTSCU003
|
||||
00461 MOVE L001-FED-8-DATE-9 TO CHRISTMAS-DAY. DTSCU003
|
||||
00462 DTSCU003
|
||||
00463 DTSCU003
|
||||
00464 MOVE HOLIDAY-YEAR TO L001-FED-8-YR. DTSCU003
|
||||
00465 DTSCU003
|
||||
00466 ADD +1 TO L001-FED-8-YR. DTSCU003
|
||||
00467 DTSCU003
|
||||
00468 MOVE 01 TO L001-FED-8-MO. DTSCU003
|
||||
00469 DTSCU003
|
||||
00470 MOVE 01 TO L001-FED-8-DA. DTSCU003
|
||||
00471 DTSCU003
|
||||
00472 SET L001-FROM-FED-8 TO TRUE. DTSCU003
|
||||
00473 PERFORM S001-DATE-CONVERT THRU S001-EXIT. DTSCU003
|
||||
00474 DTSCU003
|
||||
00475 IF L001-INVALID-DATE DTSCU003
|
||||
00476 EXEC CICS ABEND ABCODE (WRK-ABEND-CD) END-EXEC DTSCU003
|
||||
00477 END-IF. DTSCU003
|
||||
00478 DTSCU003
|
||||
00479 IF L001-SATURDAY DTSCU003
|
||||
00480 MOVE HOLIDAY-YEAR TO L001-FED-8-YR DTSCU003
|
||||
00481 MOVE 12 TO L001-FED-8-MO DTSCU003
|
||||
00482 MOVE 31 TO L001-FED-8-DA DTSCU003
|
||||
00483 MOVE L001-FED-8-DATE-9 TO NEW-YEARS-EVE DTSCU003
|
||||
00484 ELSE DTSCU003
|
||||
00485 MOVE +0 TO NEW-YEARS-EVE. DTSCU003
|
||||
00486 S1000-EXIT. DTSCU003
|
||||
00487 EXIT. DTSCU003
|
||||
00488 DTSCU003
|
||||
00489 S001-DATE-CONVERT. DTSCU003
|
||||
00490 EXEC CICS DTSCU003
|
||||
00491 LINK DTSCU003
|
||||
00492 PROGRAM ('DTSCU001') DTSCU003
|
||||
00493 COMMAREA (L001-LINK-AREA) DTSCU003
|
||||
00494 END-EXEC. DTSCU003
|
||||
00495 DTSCU003
|
||||
00496 S001-EXIT. DTSCU003
|
||||
00497 EXIT. DTSCU003
|
||||
Reference in New Issue
Block a user