349 lines
28 KiB
COBOL
349 lines
28 KiB
COBOL
00001 IDENTIFICATION DIVISION. 04/05/04
|
|
00002 PROGRAM-ID. DTSBU983. DTSBU983
|
|
00003 AUTHOR. TRW. LV003
|
|
00004 DATE-WRITTEN. DECEMBER 2001. DTSBU983
|
|
00005 DATE-COMPILED. DTSBU983
|
|
00006 SKIP3 DTSBU983
|
|
00007 ***** DTSBU983
|
|
00008 * DTSBU983
|
|
00009 * FUNCTION: WAGE TRANSACTION FILE INPUT/OUTPUT. DTSBU983
|
|
00010 * DTSBU983
|
|
00011 * DTSBU983
|
|
00012 * MODIFICATION LOG: DTSBU983
|
|
00013 * DTSBU983
|
|
00014 * 12/28/2001 INITIAL DEVELOPMENT. DTSBU983
|
|
00015 * WORK ORDER: PROGRAMMER: GD DTSBU983
|
|
00016 * DTSBU983
|
|
00017 * 10/06/2003 MODIFIED NAME FIELD FOR WEB REPORTING. DTSBU983
|
|
00018 * WORK ORDER: EFT PROGRAMMER: GD DTSBU983
|
|
00019 * DTSBU983
|
|
00020 * MM/DD/YYYY XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSBU983
|
|
00021 * XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSBU983
|
|
00022 * REFERENCE: XXXXXXXXXXXXXXX PROGRAMMER: XXX DTSBU983
|
|
00023 * DTSBU983
|
|
00024 * DTSBU983
|
|
00025 * DESCRIPTION: DTSBU983
|
|
00026 * DTSBU983
|
|
00027 * DTSBU983 PERFORMS ALL REQUIRED WAGE TRANSACTION FILE DTSBU983
|
|
00028 * INPUT/OUTPUT. DTSBU983
|
|
00029 * DTSBU983
|
|
00030 * DTSBU983
|
|
00031 * GENERAL SPECIFICATIONS: DTSBU983
|
|
00032 * DTSBU983
|
|
00033 * ALL COMMANDS ARE VALID. DTSBU983
|
|
00034 * DTSBU983
|
|
00035 * IF AN INVALID COMMAND IS REQUESTED, THEN ABEND THE DTSBU983
|
|
00036 * MODULE. DTSBU983
|
|
00037 * DTSBU983
|
|
00038 * IF A FILE-STATUS OF OTHER THAN '00', '10', OR '23' IS DTSBU983
|
|
00039 * ENCOUNTERED, THEN ABEND PROCESSING (TOLERATE A DTSBU983
|
|
00040 * FILE-STATUS OF '97' FROM AN OPEN COMMAND). DTSBU983
|
|
00041 * DTSBU983
|
|
00042 * DTSBU983
|
|
00043 * DTSBU983
|
|
00044 * COMMAND SPECIFIC SPECIFICATIONS: DTSBU983
|
|
00045 * DTSBU983
|
|
00046 * OPEN-READ DTSBU983
|
|
00047 * OPEN INPUT. DTSBU983
|
|
00048 * DTSBU983
|
|
00049 * OPEN-UPDATE DTSBU983
|
|
00050 * OPEN I-O. DTSBU983
|
|
00051 * DTSBU983
|
|
00052 * CLOSE DTSBU983
|
|
00053 * DTSBU983
|
|
00054 * READ DTSBU983
|
|
00055 * DTSBU983
|
|
00056 * START BROWSE DTSBU983
|
|
00057 * IF THE START-BROWSE IS SUCCESSFUL, THEN PERFORM THE DTSBU983
|
|
00058 * READ-NEXT LOGIC. A SUCCESSFUL START-BROWSE RETURNS DTSBU983
|
|
00059 * A RECORD. DTSBU983
|
|
00060 * DTSBU983
|
|
00061 * READ NEXT DTSBU983
|
|
00062 * DTSBU983
|
|
00063 * WRITE DTSBU983
|
|
00064 * DTSBU983
|
|
00065 * REWRITE DTSBU983
|
|
00066 * DTSBU983
|
|
00067 * DELETE DTSBU983
|
|
00068 * DTSBU983
|
|
00069 * DTSBU983
|
|
00070 ***** DTSBU983
|
|
00071 SKIP3 DTSBU983
|
|
00072 ENVIRONMENT DIVISION. DTSBU983
|
|
00073 SKIP2 DTSBU983
|
|
00074 INPUT-OUTPUT SECTION. DTSBU983
|
|
00075 DTSBU983
|
|
00076 FILE-CONTROL. DTSBU983
|
|
00077 SELECT WTC-FILE ASSIGN TO DTSFWTC DTSBU983
|
|
00078 ORGANIZATION IS INDEXED DTSBU983
|
|
00079 RECORD KEY IS WSKL-KEY-AREA OF FILE-REC DTSBU983
|
|
00080 FILE STATUS IS FILE-STATUS DTSBU983
|
|
00081 ACCESS IS DYNAMIC. DTSBU983
|
|
00082 SKIP3 DTSBU983
|
|
00083 DATA DIVISION. DTSBU983
|
|
00084 SKIP3 DTSBU983
|
|
00085 FILE SECTION. DTSBU983
|
|
00086 SKIP3 DTSBU983
|
|
00087 FD WTC-FILE. DTSBU983
|
|
00088 DTSBU983
|
|
00089 01 FILE-REC. DTSBU983
|
|
00090 ++INCLUDE DTSIWSKL DTSBU983
|
|
00091 EJECT DTSBU983
|
|
00092 WORKING-STORAGE SECTION. DTSBU983
|
|
000925 77 PAN-VALET PICTURE X(24) VALUE '003DTSBU983 04/05/04'. DTSBU983
|
|
00093 SKIP3 DTSBU983
|
|
00094 01 WRK-AREA. DTSBU983
|
|
00095 05 WRK-ABEND-CD PIC S9(04) COMP VALUE +983.DTSBU983
|
|
00096 DTSBU983
|
|
00097 05 WRK-MOD-NAME PIC X(08) VALUE 'DTSBU983'.DTSBU983
|
|
00098 DTSBU983
|
|
00099 05 WRK-REC-PREFIX PIC X(04). DTSBU983
|
|
00100 DTSBU983
|
|
00101 05 WRK-KEY-LENGTH PIC S9(04) COMP DTSBU983
|
|
00102 VALUE +9. DTSBU983
|
|
00103 DTSBU983
|
|
00104 05 FILE-STATUS PIC X(02). DTSBU983
|
|
00105 88 FILE-OK-88 VALUE '00'. DTSBU983
|
|
00106 88 FILE-NO-REC-88 VALUE '10' '23'. DTSBU983
|
|
00107 88 FILE-VERIFY-88 VALUE '97'. DTSBU983
|
|
00108 EJECT DTSBU983
|
|
00109 01 L991-LINK-AREA. DTSBU983
|
|
00110 ++INCLUDE DTSIL991 DTSBU983
|
|
00111 EJECT DTSBU983
|
|
00112 LINKAGE SECTION. DTSBU983
|
|
00113 SKIP3 DTSBU983
|
|
00114 01 L983-LINK-AREA. DTSBU983
|
|
00115 ++INCLUDE DTSIL983 DTSBU983
|
|
00116 EJECT DTSBU983
|
|
00117 01 LINK-REC. DTSBU983
|
|
00118 05 WSKL-REC. DTSBU983
|
|
00119 ++INCLUDE DTSIWSKL DTSBU983
|
|
00120 EJECT DTSBU983
|
|
00121 PROCEDURE DIVISION USING L983-LINK-AREA DTSBU983
|
|
00122 LINK-REC. DTSBU983
|
|
00123 DTSBU983
|
|
00124 DTSBU983
|
|
00125 SET L983-OK-88 TO TRUE. DTSBU983
|
|
00126 DTSBU983
|
|
00127 IF L983-TRACE-88 DTSBU983
|
|
00128 PERFORM S9100-PRE-DISPLAY THRU S9100-EXIT. DTSBU983
|
|
00129 DTSBU983
|
|
00130 IF L983-READ-NEXT-88 DTSBU983
|
|
00131 PERFORM P2300-READ-NEXT THRU P2300-EXIT DTSBU983
|
|
00132 ELSE DTSBU983
|
|
00133 IF L983-READ-88 DTSBU983
|
|
00134 PERFORM P2100-READ THRU P2100-EXIT DTSBU983
|
|
00135 ELSE DTSBU983
|
|
00136 IF L983-START-BROWSE-88 DTSBU983
|
|
00137 PERFORM P2200-START-BROWSE THRU P2200-EXIT DTSBU983
|
|
00138 ELSE DTSBU983
|
|
00139 IF L983-WRITE-88 DTSBU983
|
|
00140 PERFORM P3100-WRITE THRU P3100-EXIT DTSBU983
|
|
00141 ELSE DTSBU983
|
|
00142 IF L983-REWRITE-88 DTSBU983
|
|
00143 PERFORM P3200-REWRITE THRU P3200-EXIT DTSBU983
|
|
00144 ELSE DTSBU983
|
|
00145 IF L983-DELETE-88 DTSBU983
|
|
00146 PERFORM P3300-DELETE THRU P3300-EXIT DTSBU983
|
|
00147 ELSE DTSBU983
|
|
00148 IF L983-OPEN-READ-88 DTSBU983
|
|
00149 OR DTSBU983
|
|
00150 L983-OPEN-UPDATE-88 DTSBU983
|
|
00151 PERFORM P1100-OPEN THRU P1100-EXIT DTSBU983
|
|
00152 ELSE DTSBU983
|
|
00153 IF L983-CLOSE-88 DTSBU983
|
|
00154 PERFORM P1200-CLOSE THRU P1200-EXIT DTSBU983
|
|
00155 ELSE DTSBU983
|
|
00156 PERFORM S999-ABEND THRU S999-EXIT. DTSBU983
|
|
00157 DTSBU983
|
|
00158 IF L983-TRACE-88 DTSBU983
|
|
00159 PERFORM S9200-POST-DISPLAY THRU S9200-EXIT. DTSBU983
|
|
00160 SKIP2 DTSBU983
|
|
00161 GOBACK. DTSBU983
|
|
00162 EJECT DTSBU983
|
|
00163 P1100-OPEN. DTSBU983
|
|
00164 IF L983-OPEN-UPDATE-88 DTSBU983
|
|
00165 OPEN I-O WTC-FILE DTSBU983
|
|
00166 ELSE DTSBU983
|
|
00167 OPEN INPUT WTC-FILE. DTSBU983
|
|
00168 DTSBU983
|
|
00169 IF FILE-OK-88 OR FILE-VERIFY-88 DTSBU983
|
|
00170 NEXT SENTENCE DTSBU983
|
|
00171 ELSE DTSBU983
|
|
00172 PERFORM S999-ABEND THRU S999-EXIT. DTSBU983
|
|
00173 P1100-EXIT. DTSBU983
|
|
00174 EXIT. DTSBU983
|
|
00175 SKIP3 DTSBU983
|
|
00176 P1200-CLOSE. DTSBU983
|
|
00177 CLOSE WTC-FILE. DTSBU983
|
|
00178 DTSBU983
|
|
00179 IF FILE-OK-88 DTSBU983
|
|
00180 NEXT SENTENCE DTSBU983
|
|
00181 ELSE DTSBU983
|
|
00182 PERFORM S999-ABEND THRU S999-EXIT. DTSBU983
|
|
00183 P1200-EXIT. DTSBU983
|
|
00184 EXIT. DTSBU983
|
|
00185 EJECT DTSBU983
|
|
00186 P2100-READ. DTSBU983
|
|
00187 MOVE WSKL-KEY-AREA OF LINK-REC DTSBU983
|
|
00188 TO WSKL-KEY-AREA OF FILE-REC. DTSBU983
|
|
00189 DTSBU983
|
|
00190 READ WTC-FILE. DTSBU983
|
|
00191 DTSBU983
|
|
00192 IF FILE-OK-88 DTSBU983
|
|
00193 MOVE FILE-REC TO LINK-REC DTSBU983
|
|
00194 ELSE DTSBU983
|
|
00195 IF FILE-NO-REC-88 DTSBU983
|
|
00196 PERFORM S1100-NO-REC THRU S1100-EXIT DTSBU983
|
|
00197 ELSE DTSBU983
|
|
00198 PERFORM S999-ABEND THRU S999-EXIT. DTSBU983
|
|
00199 P2100-EXIT. DTSBU983
|
|
00200 EXIT. DTSBU983
|
|
00201 EJECT DTSBU983
|
|
00202 P2200-START-BROWSE. DTSBU983
|
|
00203 MOVE WSKL-KEY-AREA OF LINK-REC DTSBU983
|
|
00204 TO WSKL-KEY-AREA OF FILE-REC. DTSBU983
|
|
00205 DTSBU983
|
|
00206 START WTC-FILE DTSBU983
|
|
00207 KEY IS NOT < WSKL-KEY-AREA OF FILE-REC. DTSBU983
|
|
00208 DTSBU983
|
|
00209 IF FILE-OK-88 DTSBU983
|
|
00210 PERFORM P2300-READ-NEXT THRU P2300-EXIT DTSBU983
|
|
00211 ELSE DTSBU983
|
|
00212 IF FILE-NO-REC-88 DTSBU983
|
|
00213 PERFORM S1100-NO-REC THRU S1100-EXIT DTSBU983
|
|
00214 ELSE DTSBU983
|
|
00215 PERFORM S999-ABEND THRU S999-EXIT. DTSBU983
|
|
00216 P2200-EXIT. DTSBU983
|
|
00217 EXIT. DTSBU983
|
|
00218 EJECT DTSBU983
|
|
00219 P2300-READ-NEXT. DTSBU983
|
|
00220 READ WTC-FILE NEXT. DTSBU983
|
|
00221 DTSBU983
|
|
00222 IF FILE-OK-88 DTSBU983
|
|
00223 MOVE FILE-REC TO LINK-REC DTSBU983
|
|
00224 ELSE DTSBU983
|
|
00225 IF FILE-NO-REC-88 DTSBU983
|
|
00226 PERFORM S1100-NO-REC THRU S1100-EXIT DTSBU983
|
|
00227 ELSE DTSBU983
|
|
00228 PERFORM S999-ABEND THRU S999-EXIT. DTSBU983
|
|
00229 P2300-EXIT. DTSBU983
|
|
00230 EXIT. DTSBU983
|
|
00231 EJECT DTSBU983
|
|
00232 P3100-WRITE. DTSBU983
|
|
00233 MOVE LINK-REC TO FILE-REC. DTSBU983
|
|
00234 DTSBU983
|
|
00235 WRITE FILE-REC. DTSBU983
|
|
00236 DTSBU983
|
|
00237 IF FILE-OK-88 DTSBU983
|
|
00238 NEXT SENTENCE DTSBU983
|
|
00239 ELSE DTSBU983
|
|
00240 PERFORM S999-ABEND THRU S999-EXIT. DTSBU983
|
|
00241 P3100-EXIT. DTSBU983
|
|
00242 EXIT. DTSBU983
|
|
00243 EJECT DTSBU983
|
|
00244 P3200-REWRITE. DTSBU983
|
|
00245 MOVE LINK-REC TO FILE-REC. DTSBU983
|
|
00246 DTSBU983
|
|
00247 REWRITE FILE-REC. DTSBU983
|
|
00248 DTSBU983
|
|
00249 IF FILE-OK-88 DTSBU983
|
|
00250 NEXT SENTENCE DTSBU983
|
|
00251 ELSE DTSBU983
|
|
00252 PERFORM S999-ABEND THRU S999-EXIT. DTSBU983
|
|
00253 P3200-EXIT. DTSBU983
|
|
00254 EXIT. DTSBU983
|
|
00255 EJECT DTSBU983
|
|
00256 P3300-DELETE. DTSBU983
|
|
00257 MOVE WSKL-KEY-AREA OF LINK-REC DTSBU983
|
|
00258 TO WSKL-KEY-AREA OF FILE-REC. DTSBU983
|
|
00259 DTSBU983
|
|
00260 DELETE WTC-FILE RECORD. DTSBU983
|
|
00261 DTSBU983
|
|
00262 IF FILE-OK-88 DTSBU983
|
|
00263 NEXT SENTENCE DTSBU983
|
|
00264 ELSE DTSBU983
|
|
00265 PERFORM S999-ABEND THRU S999-EXIT. DTSBU983
|
|
00266 P3300-EXIT. DTSBU983
|
|
00267 EXIT. DTSBU983
|
|
00268 EJECT DTSBU983
|
|
00269 S1100-NO-REC. DTSBU983
|
|
00270 SET L983-NO-REC-88 TO TRUE. DTSBU983
|
|
00271 S1100-EXIT. DTSBU983
|
|
00272 EXIT. DTSBU983
|
|
00273 SKIP3 DTSBU983
|
|
00274 S9100-PRE-DISPLAY. DTSBU983
|
|
00275 DISPLAY ' '. DTSBU983
|
|
00276 DTSBU983
|
|
00277 DISPLAY ' '. DTSBU983
|
|
00278 DTSBU983
|
|
00279 DISPLAY '*** DTSBU983 PRE TRACE DISPLAY ***'. DTSBU983
|
|
00280 DTSBU983
|
|
00281 DISPLAY L983-MOD-NAME DTSBU983
|
|
00282 ' = L983-MOD-NAME'. DTSBU983
|
|
00283 DTSBU983
|
|
00284 DISPLAY L983-CMND-CD DTSBU983
|
|
00285 ' = L983-CMND-CD'. DTSBU983
|
|
00286 DTSBU983
|
|
00287 PERFORM S9300-REC-DISPLAY THRU S9300-EXIT. DTSBU983
|
|
00288 S9100-EXIT. DTSBU983
|
|
00289 EXIT. DTSBU983
|
|
00290 SKIP3 DTSBU983
|
|
00291 S9200-POST-DISPLAY. DTSBU983
|
|
00292 DISPLAY ' '. DTSBU983
|
|
00293 DTSBU983
|
|
00294 DISPLAY ' '. DTSBU983
|
|
00295 DTSBU983
|
|
00296 DISPLAY '*** DTSBU983 POST TRACE DISPLAY ***'. DTSBU983
|
|
00297 DTSBU983
|
|
00298 DISPLAY L983-RESULT-IND DTSBU983
|
|
00299 ' = L983-RESULT-IND'. DTSBU983
|
|
00300 DTSBU983
|
|
00301 PERFORM S9300-REC-DISPLAY THRU S9300-EXIT. DTSBU983
|
|
00302 S9200-EXIT. DTSBU983
|
|
00303 EXIT. DTSBU983
|
|
00304 SKIP3 DTSBU983
|
|
00305 S9300-REC-DISPLAY. DTSBU983
|
|
00306 DISPLAY ' '. DTSBU983
|
|
00307 DTSBU983
|
|
00308 MOVE 'W001' TO WRK-REC-PREFIX. DTSBU983
|
|
00309 MOVE WRK-KEY-LENGTH TO L991-REQ-CHAR-CNT. DTSBU983
|
|
00310 DTSBU983
|
|
00311 MOVE WSKL-KEY-AREA OF LINK-REC TO L991-REQ-AREA. DTSBU983
|
|
00312 DTSBU983
|
|
00313 PERFORM S991-HEX-FORMAT THRU S991-EXIT. DTSBU983
|
|
00314 DTSBU983
|
|
00315 DISPLAY 'REC TYPE = ' DTSBU983
|
|
00316 WRK-REC-PREFIX. DTSBU983
|
|
00317 DTSBU983
|
|
00318 DISPLAY 'KEY AREA = ' DTSBU983
|
|
00319 L991-REPLY-HEX-1-AREA. DTSBU983
|
|
00320 DTSBU983
|
|
00321 DISPLAY ' ' DTSBU983
|
|
00322 L991-REPLY-HEX-2-AREA. DTSBU983
|
|
00323 DTSBU983
|
|
00324 DISPLAY ' ' DTSBU983
|
|
00325 L991-REPLY-AN-AREA. DTSBU983
|
|
00326 S9300-EXIT. DTSBU983
|
|
00327 EXIT. DTSBU983
|
|
00328 EJECT DTSBU983
|
|
00329 S991-HEX-FORMAT. DTSBU983
|
|
00330 CALL 'DTSBU991' USING L991-LINK-AREA. DTSBU983
|
|
00331 S991-EXIT. DTSBU983
|
|
00332 EXIT. DTSBU983
|
|
00333 EJECT DTSBU983
|
|
00334 S999-ABEND. DTSBU983
|
|
00335 DISPLAY '*** I/O MODULE ABENDING'. DTSBU983
|
|
00336 DTSBU983
|
|
00337 DISPLAY '*** CMND-CD = ' L983-CMND-CD. DTSBU983
|
|
00338 DTSBU983
|
|
00339 DISPLAY '*** FILE-STATUS = ' FILE-STATUS. DTSBU983
|
|
00340 DTSBU983
|
|
00341 DISPLAY '*** CALLING MODULE = ' L983-MOD-NAME. DTSBU983
|
|
00342 DTSBU983
|
|
00343 PERFORM S9300-REC-DISPLAY THRU S9300-EXIT. DTSBU983
|
|
00344 DTSBU983
|
|
00345 CALL 'DTSBU999' USING WRK-ABEND-CD. DTSBU983
|
|
00346 S999-EXIT. DTSBU983
|
|
00347 EXIT. DTSBU983
|