00001 IDENTIFICATION DIVISION. 12/01/05 00002 PROGRAM-ID. DTSBU935. DTSBU935 00003 AUTHOR. TRW. LV002 00004 DATE-WRITTEN. JANUARY 2001. DTSBU935 00005 DATE-COMPILED. DTSBU935 00006 SKIP3 DTSBU935 00007 ***** DTSBU935 00008 * DTSBU935 00009 * FUNCTION: ELECTRONIC MEDIA FILE INPUT/OUTPUT. DTSBU935 00010 * DTSBU935 00011 * DTSBU935 00012 * MODIFICATION LOG: DTSBU935 00013 * DTSBU935 00014 * 01/17/2001 INITIAL DEVELOPMENT. DTSBU935 00015 * WORK ORDER: PROGRAMMER: GD DTSBU935 00016 * DTSBU935 00017 * 03/23/2001 ADDED TEST FOR DUP KEY DURING WRITE. DTSBU935 00018 * WORK ORDER: PROGRAMMER: GD DTSBU935 00019 * DTSBU935 00020 * MM/DD/YYYY XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSBU935 00021 * XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSBU935 00022 * REFERENCE: XXXXXXXXXXXXXXX PROGRAMMER: XXX DTSBU935 00023 * DTSBU935 00024 * DTSBU935 00025 * DESCRIPTION: DTSBU935 00026 * DTSBU935 00027 * DTSBU935 PERFORMS ALL REQUIRED ELECTRONIC MEDIA DTSBU935 00028 * FILE INPUT/OUTPUT. DTSBU935 00029 * DTSBU935 00030 * DTSBU935 00031 * GENERAL SPECIFICATIONS: DTSBU935 00032 * DTSBU935 00033 * ALL COMMANDS ARE VALID. DTSBU935 00034 * DTSBU935 00035 * IF AN INVALID COMMAND IS REQUESTED, THEN ABEND THE DTSBU935 00036 * MODULE. DTSBU935 00037 * DTSBU935 00038 * IF A FILE-STATUS OF OTHER THAN '00', '10', OR '23' IS DTSBU935 00039 * ENCOUNTERED, THEN ABEND PROCESSING (TOLERATE A DTSBU935 00040 * FILE-STATUS OF '97' FROM AN OPEN COMMAND). DTSBU935 00041 * DTSBU935 00042 * DTSBU935 00043 * DTSBU935 00044 * COMMAND SPECIFIC SPECIFICATIONS: DTSBU935 00045 * DTSBU935 00046 * OPEN-READ DTSBU935 00047 * OPEN INPUT. DTSBU935 00048 * DTSBU935 00049 * OPEN-UPDATE DTSBU935 00050 * OPEN I-O. DTSBU935 00051 * DTSBU935 00052 * CLOSE DTSBU935 00053 * DTSBU935 00054 * READ DTSBU935 00055 * DTSBU935 00056 * START BROWSE DTSBU935 00057 * IF THE START-BROWSE IS SUCCESSFUL, THEN PERFORM THE DTSBU935 00058 * READ-NEXT LOGIC. A SUCCESSFUL START-BROWSE RETURNS DTSBU935 00059 * A RECORD. DTSBU935 00060 * DTSBU935 00061 * READ NEXT DTSBU935 00062 * RETURN L935-NO-REC-88 AT A BREAK IN REC-TYPE DTSBU935 00063 * AND AT END OF FILE. DTSBU935 00064 * FOR THE PROFILE RECORD FILE (MSTE) RETURN DTSBU935 00065 * L935-NO-REC-88 ONLY AT END OF FILE. DTSBU935 00066 * FOR THE LOG FILE (MSTF) RETURN DTSBU935 00067 * L935-NO-REC-88 AT A BREAK IN LOG NUMBER. DTSBU935 00068 * FOR THE EMPLOYER HISTORY FILE (MSTG) RETURN DTSBU935 00069 * L935-NO-REC-88 AT A BREAK IN EMP-NO. DTSBU935 00070 * DTSBU935 00071 * WRITE DTSBU935 00072 * DTSBU935 00073 * REWRITE DTSBU935 00074 * DTSBU935 00075 * DELETE DTSBU935 00076 * DTSBU935 00077 * DTSBU935 00078 ***** DTSBU935 00079 SKIP3 DTSBU935 00080 ENVIRONMENT DIVISION. DTSBU935 00081 SKIP2 DTSBU935 00082 INPUT-OUTPUT SECTION. DTSBU935 00083 DTSBU935 00084 FILE-CONTROL. DTSBU935 00085 SELECT MSTE-FILE DTSBU935 00086 ASSIGN TO DTSFMSTE DTSBU935 00087 ORGANIZATION IS INDEXED DTSBU935 00088 RECORD KEY IS ESKL-KEY-AREA OF MSTE-SKL-REC DTSBU935 00089 FILE STATUS IS FILE-STATUS DTSBU935 00090 ACCESS IS DYNAMIC. DTSBU935 00091 SKIP3 DTSBU935 00092 SELECT MSTF-FILE DTSBU935 00093 ASSIGN TO DTSFMSTF DTSBU935 00094 ORGANIZATION IS INDEXED DTSBU935 00095 RECORD KEY IS ESKL-KEY-AREA OF MSTF-SKL-REC DTSBU935 00096 FILE STATUS IS FILE-STATUS DTSBU935 00097 ACCESS IS DYNAMIC. DTSBU935 00098 SKIP3 DTSBU935 00099 SELECT MSTG-FILE DTSBU935 00100 ASSIGN TO DTSFMSTG DTSBU935 00101 ORGANIZATION IS INDEXED DTSBU935 00102 RECORD KEY IS ESKL-KEY-AREA OF MSTG-SKL-REC DTSBU935 00103 FILE STATUS IS FILE-STATUS DTSBU935 00104 ACCESS IS DYNAMIC. DTSBU935 00105 SKIP3 DTSBU935 00106 DATA DIVISION. DTSBU935 00107 SKIP3 DTSBU935 00108 FILE SECTION. DTSBU935 00109 SKIP3 DTSBU935 00110 FD MSTE-FILE. DTSBU935 00111 DTSBU935 00112 01 MSTE-SKL-REC. DTSBU935 00113 ++INCLUDE DTSIESKL DTSBU935 00114 SKIP3 DTSBU935 00115 01 MSTE-VAR-REC. DTSBU935 00116 05 MSTE-VAR-CHAR OCCURS 32 TO 1024 TIMES DTSBU935 00117 DEPENDING ON VAR-CHAR-CNT DTSBU935 00118 PIC X(01). DTSBU935 00119 DTSBU935 00120 FD MSTF-FILE. DTSBU935 00121 DTSBU935 00122 01 MSTF-SKL-REC. DTSBU935 00123 ++INCLUDE DTSIESKL DTSBU935 00124 SKIP3 DTSBU935 00125 01 MSTF-VAR-REC. DTSBU935 00126 05 MSTF-VAR-CHAR OCCURS 32 TO 1024 TIMES DTSBU935 00127 DEPENDING ON VAR-CHAR-CNT DTSBU935 00128 PIC X(01). DTSBU935 00129 DTSBU935 00130 FD MSTG-FILE. DTSBU935 00131 DTSBU935 00132 01 MSTG-SKL-REC. DTSBU935 00133 ++INCLUDE DTSIESKL DTSBU935 00134 SKIP3 DTSBU935 00135 01 MSTG-VAR-REC. DTSBU935 00136 05 MSTG-VAR-CHAR OCCURS 32 TO 1024 TIMES DTSBU935 00137 DEPENDING ON VAR-CHAR-CNT DTSBU935 00138 PIC X(01). DTSBU935 00139 DTSBU935 00140 EJECT DTSBU935 00141 WORKING-STORAGE SECTION. DTSBU935 001415 77 PAN-VALET PICTURE X(24) VALUE '002DTSBU935 12/01/05'. DTSBU935 00142 SKIP3 DTSBU935 00143 01 WRK-AREA. DTSBU935 00144 05 WRK-ABEND-CD PIC S9(04) COMP VALUE +935.DTSBU935 00145 DTSBU935 00146 05 WRK-MOD-NAME PIC X(08) VALUE 'DTSBU935'. DTSBU935 00147 DTSBU935 00148 05 VAR-CHAR-CNT PIC S9(04) COMP. DTSBU935 00149 DTSBU935 00150 05 FILE-STATUS PIC X(02). DTSBU935 00151 88 FILE-OK-88 VALUE '00'. DTSBU935 00152 88 FILE-NO-REC-88 VALUE '10' '23'. DTSBU935 00153 88 FILE-DUP-KEY-88 VALUE '22'. DTSBU935 00154 88 FILE-VERIFY-88 VALUE '97'. DTSBU935 00155 DTSBU935 00156 05 WRK-REC-PREFIX PIC X(04). DTSBU935 00157 DTSBU935 00158 05 REC-TYPE-SUB PIC S9(04) COMP. DTSBU935 00159 DTSBU935 00160 05 FILE-SUB PIC S9(04) COMP. DTSBU935 00161 88 FILE-SUB-MSTE-88 VALUE +1. DTSBU935 00162 88 FILE-SUB-MSTF-88 VALUE +2. DTSBU935 00163 88 FILE-SUB-MSTG-88 VALUE +3. DTSBU935 00164 DTSBU935 00165 05 FILE-STATE PIC X(03) VALUE 'CL '. DTSBU935 00166 88 FILE-OPEN-READ-88 VALUE 'OPR'. DTSBU935 00167 88 FILE-OPEN-UPDATE-88 VALUE 'OPU'. DTSBU935 00168 88 FILE-OPEN-UPDATE-HDR-88 VALUE 'OPH'. DTSBU935 00169 88 FILE-OPEN-UPDATE-NO-AIX-88 VALUE 'OPA'. DTSBU935 00170 88 FILE-CLOSE-88 VALUE 'CL '. DTSBU935 00171 DTSBU935 00172 05 WRK-KEY-FILLER-START PIC S9(04) COMP. DTSBU935 00173 DTSBU935 00174 05 WRK-KEY-FILLER-LENGTH PIC S9(04) COMP. DTSBU935 00175 DTSBU935 00176 01 WRK-REC. DTSBU935 00177 ++INCLUDE DTSIESKL DTSBU935 00178 01 FILLER REDEFINES WRK-REC. DTSBU935 00179 05 WRK-VAR-CHAR OCCURS 1024 TIMES PIC X(01). DTSBU935 00180 DTSBU935 00181 01 EPRF-REC REDEFINES WRK-REC. DTSBU935 00182 ++INCLUDE DTSIEPRF DTSBU935 00183 DTSBU935 00184 01 ELOG-REC REDEFINES WRK-REC. DTSBU935 00185 ++INCLUDE DTSIELOG DTSBU935 00186 DTSBU935 00187 01 EEMH-REC REDEFINES WRK-REC. DTSBU935 00188 ++INCLUDE DTSIEEMH DTSBU935 00189 DTSBU935 00190 EJECT DTSBU935 00191 01 AIX-WORK-AREA. DTSBU935 00192 ++INCLUDE DTSIXAIX DTSBU935 00193 DTSBU935 00194 01 L921-LINK-AREA. DTSBU935 00195 ++INCLUDE DTSIL921 DTSBU935 00196 DTSBU935 00197 01 ISKL-REC. DTSBU935 00198 ++INCLUDE DTSIISKL DTSBU935 00199 DTSBU935 00200 01 IENM-REC REDEFINES ISKL-REC. DTSBU935 00201 ++INCLUDE DTSIIENM DTSBU935 00202 DTSBU935 00203 01 IEAL-REC REDEFINES ISKL-REC. DTSBU935 00204 ++INCLUDE DTSIIEAL DTSBU935 00205 DTSBU935 00206 01 IEAE-REC REDEFINES ISKL-REC. DTSBU935 00207 ++INCLUDE DTSIIEAE DTSBU935 00208 DTSBU935 00209 01 IEBX-REC REDEFINES ISKL-REC. DTSBU935 00210 ++INCLUDE DTSIIEBX DTSBU935 00211 DTSBU935 00212 01 IEOP-REC REDEFINES ISKL-REC. DTSBU935 00213 ++INCLUDE DTSIIEOP DTSBU935 00214 DTSBU935 00215 01 IESR-REC REDEFINES ISKL-REC. DTSBU935 00216 ++INCLUDE DTSIIESR DTSBU935 00217 DTSBU935 00218 01 IEER-REC REDEFINES ISKL-REC. DTSBU935 00219 ++INCLUDE DTSIIEER DTSBU935 00220 DTSBU935 00221 01 IEET-REC REDEFINES ISKL-REC. DTSBU935 00222 ++INCLUDE DTSIIEET DTSBU935 00223 DTSBU935 00224 01 IEPR-REC REDEFINES ISKL-REC. DTSBU935 00225 ++INCLUDE DTSIIEPR DTSBU935 00226 DTSBU935 00227 01 L991-LINK-AREA. DTSBU935 00228 ++INCLUDE DTSIL991 DTSBU935 00229 EJECT DTSBU935 00230 01 ELEN-LENGTH-LITERALS. DTSBU935 00231 ++INCLUDE DTSIELEN DTSBU935 00232 EJECT DTSBU935 00233 LINKAGE SECTION. DTSBU935 00234 SKIP3 DTSBU935 00235 01 L935-LINK-AREA. DTSBU935 00236 ++INCLUDE DTSIL935 DTSBU935 00237 EJECT DTSBU935 00238 01 LINK-REC. DTSBU935 00239 05 ESKL-REC. DTSBU935 00240 ++INCLUDE DTSIESKL DTSBU935 00241 EJECT DTSBU935 00242 PROCEDURE DIVISION USING L935-LINK-AREA DTSBU935 00243 LINK-REC. DTSBU935 00244 DTSBU935 00245 DTSBU935 00246 SET L935-OK-88 TO TRUE. DTSBU935 00247 DTSBU935 00248 IF L935-TRACE-88 DTSBU935 00249 PERFORM S9100-PRE-DISPLAY THRU S9100-EXIT. DTSBU935 00250 DTSBU935 00251 IF L935-OPEN-88 DTSBU935 00252 PERFORM P1100-OPEN THRU P1100-EXIT DTSBU935 00253 ELSE DTSBU935 00254 IF L935-CLOSE-88 DTSBU935 00255 PERFORM P1200-CLOSE THRU P1200-EXIT DTSBU935 00256 ELSE DTSBU935 00257 PERFORM P0100-REC-TYPE THRU P0100-EXIT DTSBU935 00258 IF L935-READ-NEXT-88 DTSBU935 00259 PERFORM P2300-READ-NEXT THRU P2300-EXIT DTSBU935 00260 ELSE DTSBU935 00261 IF L935-READ-88 DTSBU935 00262 PERFORM P2100-READ THRU P2100-EXIT DTSBU935 00263 ELSE DTSBU935 00264 IF L935-START-BROWSE-88 DTSBU935 00265 PERFORM P2200-START-BROWSE THRU P2200-EXIT DTSBU935 00266 ELSE DTSBU935 00267 IF L935-WRITE-88 DTSBU935 00268 OR L935-WRITE-CHK-DUP-KEY-88 DTSBU935 00269 PERFORM P3100-WRITE THRU P3100-EXIT DTSBU935 00270 ELSE DTSBU935 00271 IF L935-REWRITE-88 DTSBU935 00272 PERFORM P3200-REWRITE THRU P3200-EXIT DTSBU935 00273 ELSE DTSBU935 00274 IF L935-DELETE-88 DTSBU935 00275 PERFORM P3300-DELETE THRU P3300-EXIT DTSBU935 00276 ELSE DTSBU935 00277 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00278 DTSBU935 00279 IF L935-TRACE-88 DTSBU935 00280 PERFORM S9200-POST-DISPLAY THRU S9200-EXIT. DTSBU935 00281 DTSBU935 00282 DTSBU935 00283 GOBACK. DTSBU935 00284 EJECT DTSBU935 00285 P0100-REC-TYPE. DTSBU935 00286 MOVE ESKL-REC-TYPE OF LINK-REC TO REC-TYPE-SUB. DTSBU935 00287 DTSBU935 00288 IF (REC-TYPE-SUB < +1) DTSBU935 00289 OR (REC-TYPE-SUB > ELEN-MAX-REC-ID) DTSBU935 00290 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00291 DTSBU935 00292 MOVE ELEN-FILE-ID (REC-TYPE-SUB) TO FILE-SUB. DTSBU935 00293 IF FILE-SUB = +0 DTSBU935 00294 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00295 DTSBU935 00296 MOVE ELEN-REC-LEN (REC-TYPE-SUB) TO VAR-CHAR-CNT. DTSBU935 00297 IF (VAR-CHAR-CNT < +1) DTSBU935 00298 OR DTSBU935 00299 (VAR-CHAR-CNT > ELEN-MAX-REC-LEN) DTSBU935 00300 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00301 DTSBU935 00302 P0100-EXIT. DTSBU935 00303 EXIT. DTSBU935 00304 DTSBU935 00305 P1100-OPEN. DTSBU935 00306 IF L935-OPEN-READ-88 DTSBU935 00307 OR L935-OPEN-UPDATE-88 DTSBU935 00308 OR L935-OPEN-UPDATE-HDR-88 DTSBU935 00309 OR L935-OPEN-UPDATE-NO-AIX-88 DTSBU935 00310 NEXT SENTENCE DTSBU935 00311 ELSE DTSBU935 00312 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00313 DTSBU935 00314 MOVE L935-CMND-CD TO FILE-STATE. DTSBU935 00315 DTSBU935 00316 IF L935-OPEN-READ-88 DTSBU935 00317 OPEN INPUT MSTE-FILE DTSBU935 00318 ELSE DTSBU935 00319 OPEN I-O MSTE-FILE. DTSBU935 00320 DTSBU935 00321 IF FILE-OK-88 OR FILE-VERIFY-88 DTSBU935 00322 NEXT SENTENCE DTSBU935 00323 ELSE DTSBU935 00324 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00325 DTSBU935 00326 IF L935-OPEN-READ-88 DTSBU935 00327 OR L935-OPEN-UPDATE-HDR-88 DTSBU935 00328 OPEN INPUT MSTF-FILE DTSBU935 00329 ELSE DTSBU935 00330 OPEN I-O MSTF-FILE. DTSBU935 00331 DTSBU935 00332 IF FILE-OK-88 OR FILE-VERIFY-88 DTSBU935 00333 NEXT SENTENCE DTSBU935 00334 ELSE DTSBU935 00335 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00336 DTSBU935 00337 IF FILE-OK-88 OR FILE-VERIFY-88 DTSBU935 00338 NEXT SENTENCE DTSBU935 00339 ELSE DTSBU935 00340 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00341 DTSBU935 00342 IF L935-OPEN-READ-88 DTSBU935 00343 OR L935-OPEN-UPDATE-HDR-88 DTSBU935 00344 OPEN INPUT MSTG-FILE DTSBU935 00345 ELSE DTSBU935 00346 OPEN I-O MSTG-FILE. DTSBU935 00347 DTSBU935 00348 IF FILE-OK-88 OR FILE-VERIFY-88 DTSBU935 00349 NEXT SENTENCE DTSBU935 00350 ELSE DTSBU935 00351 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00352 DTSBU935 00353 IF FILE-OK-88 OR FILE-VERIFY-88 DTSBU935 00354 NEXT SENTENCE DTSBU935 00355 ELSE DTSBU935 00356 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00357 DTSBU935 00358 P1100-EXIT. DTSBU935 00359 EXIT. DTSBU935 00360 SKIP3 DTSBU935 00361 P1200-CLOSE. DTSBU935 00362 MOVE L935-CMND-CD TO FILE-STATE. DTSBU935 00363 DTSBU935 00364 CLOSE MSTE-FILE. DTSBU935 00365 DTSBU935 00366 IF FILE-OK-88 DTSBU935 00367 NEXT SENTENCE DTSBU935 00368 ELSE DTSBU935 00369 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00370 DTSBU935 00371 CLOSE MSTF-FILE. DTSBU935 00372 DTSBU935 00373 IF FILE-OK-88 DTSBU935 00374 NEXT SENTENCE DTSBU935 00375 ELSE DTSBU935 00376 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00377 DTSBU935 00378 CLOSE MSTG-FILE. DTSBU935 00379 DTSBU935 00380 IF FILE-OK-88 DTSBU935 00381 NEXT SENTENCE DTSBU935 00382 ELSE DTSBU935 00383 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00384 DTSBU935 00385 P1200-EXIT. DTSBU935 00386 EXIT. DTSBU935 00387 EJECT DTSBU935 00388 P2100-READ. DTSBU935 00389 IF FILE-SUB-MSTE-88 DTSBU935 00390 MOVE ESKL-KEY-AREA OF LINK-REC DTSBU935 00391 TO ESKL-KEY-AREA OF MSTE-SKL-REC DTSBU935 00392 READ MSTE-FILE INTO WRK-REC DTSBU935 00393 ELSE DTSBU935 00394 IF FILE-SUB-MSTF-88 DTSBU935 00395 MOVE ESKL-KEY-AREA OF LINK-REC DTSBU935 00396 TO ESKL-KEY-AREA OF MSTF-SKL-REC DTSBU935 00397 READ MSTF-FILE INTO WRK-REC DTSBU935 00398 ELSE DTSBU935 00399 IF FILE-SUB-MSTG-88 DTSBU935 00400 MOVE ESKL-KEY-AREA OF LINK-REC DTSBU935 00401 TO ESKL-KEY-AREA OF MSTG-SKL-REC DTSBU935 00402 READ MSTG-FILE INTO WRK-REC DTSBU935 00403 ELSE DTSBU935 00404 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00405 DTSBU935 00406 IF FILE-OK-88 DTSBU935 00407 PERFORM S2200-FILE-TO-LINK THRU S2200-EXIT DTSBU935 00408 ELSE DTSBU935 00409 IF FILE-NO-REC-88 DTSBU935 00410 PERFORM S1100-NO-REC THRU S1100-EXIT DTSBU935 00411 ELSE DTSBU935 00412 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00413 P2100-EXIT. DTSBU935 00414 EXIT. DTSBU935 00415 EJECT DTSBU935 00416 P2200-START-BROWSE. DTSBU935 00417 IF FILE-SUB-MSTE-88 DTSBU935 00418 MOVE ESKL-KEY-AREA OF LINK-REC DTSBU935 00419 TO ESKL-KEY-AREA OF MSTE-SKL-REC DTSBU935 00420 START MSTE-FILE DTSBU935 00421 KEY IS NOT < ESKL-KEY-AREA OF MSTE-SKL-REC DTSBU935 00422 ELSE DTSBU935 00423 IF FILE-SUB-MSTF-88 DTSBU935 00424 MOVE ESKL-KEY-AREA OF LINK-REC DTSBU935 00425 TO ESKL-KEY-AREA OF MSTF-SKL-REC DTSBU935 00426 START MSTF-FILE DTSBU935 00427 KEY IS NOT < ESKL-KEY-AREA OF MSTF-SKL-REC DTSBU935 00428 ELSE DTSBU935 00429 IF FILE-SUB-MSTG-88 DTSBU935 00430 MOVE ESKL-KEY-AREA OF LINK-REC DTSBU935 00431 TO ESKL-KEY-AREA OF MSTG-SKL-REC DTSBU935 00432 START MSTG-FILE DTSBU935 00433 KEY IS NOT < ESKL-KEY-AREA OF MSTG-SKL-REC DTSBU935 00434 ELSE DTSBU935 00435 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00436 DTSBU935 00437 IF FILE-OK-88 DTSBU935 00438 PERFORM P2300-READ-NEXT THRU P2300-EXIT DTSBU935 00439 ELSE DTSBU935 00440 IF FILE-NO-REC-88 DTSBU935 00441 PERFORM S1100-NO-REC THRU S1100-EXIT DTSBU935 00442 ELSE DTSBU935 00443 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00444 P2200-EXIT. DTSBU935 00445 EXIT. DTSBU935 00446 EJECT DTSBU935 00447 P2300-READ-NEXT. DTSBU935 00448 IF FILE-SUB-MSTE-88 DTSBU935 00449 READ MSTE-FILE NEXT INTO WRK-REC DTSBU935 00450 ELSE DTSBU935 00451 IF FILE-SUB-MSTF-88 DTSBU935 00452 READ MSTF-FILE NEXT INTO WRK-REC DTSBU935 00453 ELSE DTSBU935 00454 IF FILE-SUB-MSTG-88 DTSBU935 00455 READ MSTG-FILE NEXT INTO WRK-REC DTSBU935 00456 ELSE DTSBU935 00457 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00458 DTSBU935 00459 IF FILE-NO-REC-88 DTSBU935 00460 PERFORM S1100-NO-REC THRU S1100-EXIT DTSBU935 00461 GO TO P2300-EXIT. DTSBU935 00462 DTSBU935 00463 IF FILE-OK-88 DTSBU935 00464 NEXT SENTENCE DTSBU935 00465 ELSE DTSBU935 00466 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00467 DTSBU935 00468 **************************************************************** DTSBU935 00469 * FOR THE PROFILE RECORD (EPRF) SET NO RECORD FOUND DTSBU935 00470 * ONLY AT END OF FILE. DTSBU935 00471 **************************************************************** DTSBU935 00472 IF ESKL-PRF-88 OF LINK-REC DTSBU935 00473 PERFORM S2200-FILE-TO-LINK THRU S2200-EXIT DTSBU935 00474 GO TO P2300-EXIT. DTSBU935 00475 DTSBU935 00476 **************************************************************** DTSBU935 00477 * FOR ALL OTHER RECORD TYPES SET NO RECORD FOUND DTSBU935 00478 * AT A BREAK IN RECORD TYPE. DTSBU935 00479 **************************************************************** DTSBU935 00480 IF ESKL-REC-TYPE OF WRK-REC DTSBU935 00481 NOT = ESKL-REC-TYPE OF LINK-REC DTSBU935 00482 PERFORM S1100-NO-REC THRU S1100-EXIT DTSBU935 00483 GO TO P2300-EXIT. DTSBU935 00484 DTSBU935 00485 **************************************************************** DTSBU935 00486 * FOR THE MESSAGE (EMSG) AND TRIGGER (ETRG) FILES SET NO DTSBU935 00487 * RECORD FOUND AT A BREAK IN LOG NUMBER. DTSBU935 00488 * DTSBU935 00489 * FOR THE EMPLOYER HISTORY FILE (EEMH) SET NO RECORD FOUND DTSBU935 00490 * AT A BREAK IN EMP-NO. DTSBU935 00491 **************************************************************** DTSBU935 00492 IF ESKL-MSG-88 OF WRK-REC DTSBU935 00493 OR ESKL-TRG-88 OF WRK-REC DTSBU935 00494 IF ESKL-ELOG-LOG-NO OF WRK-REC = CL**2 00495 ESKL-ELOG-LOG-NO OF LINK-REC CL**2 00496 PERFORM S2200-FILE-TO-LINK THRU S2200-EXIT DTSBU935 00497 ELSE DTSBU935 00498 PERFORM S1100-NO-REC THRU S1100-EXIT DTSBU935 00499 END-IF DTSBU935 00500 ELSE DTSBU935 00501 IF ESKL-EMH-88 OF WRK-REC DTSBU935 00502 IF ESKL-EMP-NO OF WRK-REC = ESKL-EMP-NO OF LINK-REC DTSBU935 00503 PERFORM S2200-FILE-TO-LINK THRU S2200-EXIT DTSBU935 00504 ELSE DTSBU935 00505 PERFORM S1100-NO-REC THRU S1100-EXIT DTSBU935 00506 END-IF DTSBU935 00507 ELSE DTSBU935 00508 PERFORM S2200-FILE-TO-LINK THRU S2200-EXIT DTSBU935 00509 END-IF DTSBU935 00510 END-IF. DTSBU935 00511 DTSBU935 00512 P2300-EXIT. DTSBU935 00513 EXIT. DTSBU935 00514 EJECT DTSBU935 00515 P3100-WRITE. DTSBU935 00516 IF FILE-OPEN-UPDATE-HDR-88 DTSBU935 00517 IF ESKL-HDR-88 OF LINK-REC DTSBU935 00518 NEXT SENTENCE DTSBU935 00519 ELSE DTSBU935 00520 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00521 DTSBU935 00522 PERFORM S2100-LINK-TO-FILE THRU S2100-EXIT. DTSBU935 00523 DTSBU935 00524 PERFORM P3110-INIT-KEY-FILLER THRU P3110-EXIT. DTSBU935 00525 DTSBU935 00526 IF FILE-SUB-MSTE-88 DTSBU935 00527 WRITE MSTE-VAR-REC FROM WRK-REC DTSBU935 00528 ELSE DTSBU935 00529 IF FILE-SUB-MSTF-88 DTSBU935 00530 WRITE MSTF-VAR-REC FROM WRK-REC DTSBU935 00531 ELSE DTSBU935 00532 IF FILE-SUB-MSTG-88 DTSBU935 00533 WRITE MSTG-VAR-REC FROM WRK-REC DTSBU935 00534 ELSE DTSBU935 00535 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00536 DTSBU935 00537 IF FILE-OK-88 DTSBU935 00538 NEXT SENTENCE DTSBU935 00539 ELSE DTSBU935 00540 IF L935-WRITE-CHK-DUP-KEY-88 DTSBU935 00541 IF FILE-DUP-KEY-88 DTSBU935 00542 SET L935-DUP-KEY-88 TO TRUE DTSBU935 00543 GO TO P3100-EXIT DTSBU935 00544 ELSE DTSBU935 00545 PERFORM S999-ABEND THRU S999-EXIT DTSBU935 00546 END-IF DTSBU935 00547 ELSE DTSBU935 00548 PERFORM S999-ABEND THRU S999-EXIT DTSBU935 00549 END-IF DTSBU935 00550 END-IF. DTSBU935 00551 DTSBU935 00552 IF FILE-OPEN-UPDATE-NO-AIX-88 DTSBU935 00553 GO TO P3100-EXIT. DTSBU935 00554 DTSBU935 00555 MOVE LOW-VALUES TO PRE-UPDATE-AIX-RECS. DTSBU935 00556 DTSBU935 00557 PERFORM S3200-CONSTRUCT-IPOST THRU S3200-EXIT. DTSBU935 00558 DTSBU935 00559 PERFORM S3300-UPDATE-AIX THRU S3300-EXIT. DTSBU935 00560 DTSBU935 00561 P3100-EXIT. DTSBU935 00562 EXIT. DTSBU935 00563 DTSBU935 00564 P3110-INIT-KEY-FILLER. DTSBU935 00565 COMPUTE WRK-KEY-FILLER-START DTSBU935 00566 = ELEN-KEY-LEN (REC-TYPE-SUB) + 1. DTSBU935 00567 DTSBU935 00568 COMPUTE WRK-KEY-FILLER-LENGTH DTSBU935 00569 = ELEN-MAX-KEY-LEN - ELEN-KEY-LEN (REC-TYPE-SUB). DTSBU935 00570 DTSBU935 00571 IF WRK-KEY-FILLER-LENGTH > +0 DTSBU935 00572 MOVE LOW-VALUES TO ESKL-KEY-AREA OF WRK-REC DTSBU935 00573 (WRK-KEY-FILLER-START:WRK-KEY-FILLER-LENGTH). DTSBU935 00574 DTSBU935 00575 P3110-EXIT. DTSBU935 00576 EXIT. DTSBU935 00577 DTSBU935 00578 EJECT DTSBU935 00579 P3200-REWRITE. DTSBU935 00580 IF FILE-OPEN-UPDATE-HDR-88 DTSBU935 00581 IF ESKL-HDR-88 OF LINK-REC DTSBU935 00582 NEXT SENTENCE DTSBU935 00583 ELSE DTSBU935 00584 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00585 DTSBU935 00586 PERFORM P3900-PREPARE-FOR-UPDATE THRU P3900-EXIT. DTSBU935 00587 DTSBU935 00588 IF FILE-NO-REC-88 DTSBU935 00589 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00590 DTSBU935 00591 PERFORM S2100-LINK-TO-FILE THRU S2100-EXIT. DTSBU935 00592 DTSBU935 00593 IF FILE-SUB-MSTE-88 DTSBU935 00594 REWRITE MSTE-VAR-REC FROM WRK-REC DTSBU935 00595 ELSE DTSBU935 00596 IF FILE-SUB-MSTF-88 DTSBU935 00597 REWRITE MSTF-VAR-REC FROM WRK-REC DTSBU935 00598 ELSE DTSBU935 00599 IF FILE-SUB-MSTG-88 DTSBU935 00600 REWRITE MSTG-VAR-REC FROM WRK-REC DTSBU935 00601 ELSE DTSBU935 00602 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00603 DTSBU935 00604 IF FILE-OK-88 DTSBU935 00605 NEXT SENTENCE DTSBU935 00606 ELSE DTSBU935 00607 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00608 DTSBU935 00609 IF FILE-OPEN-UPDATE-NO-AIX-88 DTSBU935 00610 GO TO P3200-EXIT. DTSBU935 00611 DTSBU935 00612 PERFORM S3200-CONSTRUCT-IPOST THRU S3200-EXIT. DTSBU935 00613 DTSBU935 00614 PERFORM S3300-UPDATE-AIX THRU S3300-EXIT. DTSBU935 00615 DTSBU935 00616 P3200-EXIT. DTSBU935 00617 EXIT. DTSBU935 00618 DTSBU935 00619 EJECT DTSBU935 00620 P3300-DELETE. DTSBU935 00621 IF FILE-OPEN-UPDATE-HDR-88 DTSBU935 00622 IF ESKL-HDR-88 OF LINK-REC DTSBU935 00623 NEXT SENTENCE DTSBU935 00624 ELSE DTSBU935 00625 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00626 DTSBU935 00627 PERFORM P3900-PREPARE-FOR-UPDATE THRU P3900-EXIT. DTSBU935 00628 DTSBU935 00629 IF FILE-NO-REC-88 DTSBU935 00630 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00631 DTSBU935 00632 IF FILE-SUB-MSTE-88 DTSBU935 00633 DELETE MSTE-FILE RECORD DTSBU935 00634 ELSE DTSBU935 00635 IF FILE-SUB-MSTF-88 DTSBU935 00636 DELETE MSTF-FILE RECORD DTSBU935 00637 ELSE DTSBU935 00638 IF FILE-SUB-MSTG-88 DTSBU935 00639 DELETE MSTG-FILE RECORD DTSBU935 00640 ELSE DTSBU935 00641 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00642 DTSBU935 00643 IF FILE-OK-88 DTSBU935 00644 NEXT SENTENCE DTSBU935 00645 ELSE DTSBU935 00646 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00647 DTSBU935 00648 IF FILE-OPEN-UPDATE-NO-AIX-88 DTSBU935 00649 GO TO P3300-EXIT. DTSBU935 00650 DTSBU935 00651 MOVE LOW-VALUES TO POST-UPDATE-AIX-RECS. DTSBU935 00652 DTSBU935 00653 PERFORM S3300-UPDATE-AIX THRU S3300-EXIT. DTSBU935 00654 DTSBU935 00655 P3300-EXIT. DTSBU935 00656 EXIT. DTSBU935 00657 EJECT DTSBU935 00658 P3900-PREPARE-FOR-UPDATE. DTSBU935 00659 IF FILE-SUB-MSTE-88 DTSBU935 00660 MOVE ESKL-KEY-AREA OF LINK-REC DTSBU935 00661 TO ESKL-KEY-AREA OF MSTE-SKL-REC DTSBU935 00662 READ MSTE-FILE INTO WRK-REC DTSBU935 00663 ELSE DTSBU935 00664 IF FILE-SUB-MSTF-88 DTSBU935 00665 MOVE ESKL-KEY-AREA OF LINK-REC DTSBU935 00666 TO ESKL-KEY-AREA OF MSTF-SKL-REC DTSBU935 00667 READ MSTF-FILE INTO WRK-REC DTSBU935 00668 ELSE DTSBU935 00669 IF FILE-SUB-MSTG-88 DTSBU935 00670 MOVE ESKL-KEY-AREA OF LINK-REC DTSBU935 00671 TO ESKL-KEY-AREA OF MSTG-SKL-REC DTSBU935 00672 READ MSTG-FILE INTO WRK-REC DTSBU935 00673 ELSE DTSBU935 00674 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00675 DTSBU935 00676 IF FILE-OK-88 DTSBU935 00677 NEXT SENTENCE DTSBU935 00678 ELSE DTSBU935 00679 IF FILE-NO-REC-88 DTSBU935 00680 PERFORM S1100-NO-REC THRU S1100-EXIT DTSBU935 00681 ELSE DTSBU935 00682 PERFORM S999-ABEND THRU S999-EXIT. DTSBU935 00683 DTSBU935 00684 IF FILE-OPEN-UPDATE-NO-AIX-88 DTSBU935 00685 MOVE LOW-VALUES TO PRE-UPDATE-AIX-RECS DTSBU935 00686 ELSE DTSBU935 00687 IF ELEN-AIX-YES-88 (REC-TYPE-SUB) DTSBU935 00688 PERFORM S3100-CONSTRUCT-IPRE THRU S3100-EXIT DTSBU935 00689 ELSE DTSBU935 00690 MOVE LOW-VALUES TO PRE-UPDATE-AIX-RECS. DTSBU935 00691 DTSBU935 00692 P3900-EXIT. DTSBU935 00693 EXIT. DTSBU935 00694 DTSBU935 00695 S1100-NO-REC. DTSBU935 00696 SET L935-NO-REC-88 TO TRUE. DTSBU935 00697 S1100-EXIT. DTSBU935 00698 EXIT. DTSBU935 00699 SKIP3 DTSBU935 00700 S2100-LINK-TO-FILE. DTSBU935 00701 MOVE LINK-REC (1:VAR-CHAR-CNT) DTSBU935 00702 TO WRK-REC (1:VAR-CHAR-CNT). DTSBU935 00703 DTSBU935 00704 S2100-EXIT. DTSBU935 00705 EXIT. DTSBU935 00706 EJECT DTSBU935 00707 S2200-FILE-TO-LINK. DTSBU935 00708 MOVE WRK-REC (1:VAR-CHAR-CNT) DTSBU935 00709 TO LINK-REC (1:VAR-CHAR-CNT). DTSBU935 00710 S2200-EXIT. DTSBU935 00711 EXIT. DTSBU935 00712 EJECT DTSBU935 00713 ********************************************************* DTSBU935 00714 * DTSIP011 ALTERNATE INDEX RECORD CONSTRUCTION DTSBU935 00715 * PROCEDURE DIVISION CODE. S3100 PARAGRAPH. DTSBU935 00716 ********************************************************* DTSBU935 00717 ++INCLUDE DTSIP011 DTSBU935 00718 DTSBU935 00719 ********************************************************* DTSBU935 00720 * DTSIP012 ALTERNATE INDEX RECORD CONSTRUCTION DTSBU935 00721 * PROCEDURE DIVISION CODE. S3200 PARAGRAPH. DTSBU935 00722 ********************************************************* DTSBU935 00723 ++INCLUDE DTSIP012 DTSBU935 00724 DTSBU935 00725 S3300-UPDATE-AIX. DTSBU935 00726 MOVE WRK-MOD-NAME TO L921-MOD-NAME. DTSBU935 00727 DTSBU935 00728 MOVE L935-TRACE-IND TO L921-TRACE-IND. DTSBU935 00729 DTSBU935 00730 PERFORM S3310-AIX-LOOP THRU S3310-EXIT DTSBU935 00731 VARYING AIX-REC-SUB FROM 1 BY 1 DTSBU935 00732 UNTIL (AIX-REC-SUB > AIX-REC-MAX). DTSBU935 00733 S3300-EXIT. DTSBU935 00734 EXIT. DTSBU935 00735 S3310-AIX-LOOP. DTSBU935 00736 IF PRE-UPDATE-AIX-REC (AIX-REC-SUB) DTSBU935 00737 = POST-UPDATE-AIX-REC (AIX-REC-SUB) DTSBU935 00738 GO TO S3310-EXIT. DTSBU935 00739 DTSBU935 00740 IF PRE-UPDATE-AIX-REC (AIX-REC-SUB) NOT = LOW-VALUES DTSBU935 00741 MOVE PRE-UPDATE-AIX-REC (AIX-REC-SUB) TO ISKL-REC DTSBU935 00742 PERFORM S3311-AIX-DELETE THRU S3311-EXIT. DTSBU935 00743 DTSBU935 00744 IF POST-UPDATE-AIX-REC (AIX-REC-SUB) NOT = LOW-VALUES DTSBU935 00745 MOVE POST-UPDATE-AIX-REC (AIX-REC-SUB) TO ISKL-REC DTSBU935 00746 PERFORM S3312-AIX-WRITE THRU S3312-EXIT. DTSBU935 00747 DTSBU935 00748 S3310-EXIT. DTSBU935 00749 EXIT. DTSBU935 00750 DTSBU935 00751 S3311-AIX-DELETE. DTSBU935 00752 PERFORM S921-AIX-READ THRU S921-EXIT. DTSBU935 00753 DTSBU935 00754 IF L921-NO-REC-88 DTSBU935 00755 GO TO S3311-EXIT. DTSBU935 00756 DTSBU935 00757 PERFORM S921-AIX-DELETE THRU S921-EXIT. DTSBU935 00758 DTSBU935 00759 S3311-EXIT. DTSBU935 00760 EXIT. DTSBU935 00761 DTSBU935 00762 S3312-AIX-WRITE. DTSBU935 00763 PERFORM S921-AIX-READ THRU S921-EXIT. DTSBU935 00764 DTSBU935 00765 IF NOT L921-NO-REC-88 DTSBU935 00766 GO TO S3312-EXIT. DTSBU935 00767 DTSBU935 00768 PERFORM S921-AIX-WRITE THRU S921-EXIT. DTSBU935 00769 DTSBU935 00770 S3312-EXIT. DTSBU935 00771 EXIT. DTSBU935 00772 DTSBU935 00773 ********************************************************* DTSBU935 00774 * DTSIP13 ALTERNATE INDEX RECORD CONSTRUCTION DTSBU935 00775 * PROCEDURE DIVISION CODE. S39** PARAGRAPHS. DTSBU935 00776 ********************************************************* DTSBU935 00777 ++INCLUDE DTSIP013 DTSBU935 00778 DTSBU935 00779 S9100-PRE-DISPLAY. DTSBU935 00780 DISPLAY ' '. DTSBU935 00781 DTSBU935 00782 DISPLAY ' '. DTSBU935 00783 DTSBU935 00784 DISPLAY '*** DTSBU935 PRE TRACE DISPLAY ***'. DTSBU935 00785 DTSBU935 00786 DISPLAY L935-MOD-NAME DTSBU935 00787 ' = L935-MOD-NAME'. DTSBU935 00788 DTSBU935 00789 DISPLAY L935-CMND-CD DTSBU935 00790 ' = L935-CMND-CD'. DTSBU935 00791 DTSBU935 00792 PERFORM S9300-REC-DISPLAY THRU S9300-EXIT. DTSBU935 00793 S9100-EXIT. DTSBU935 00794 EXIT. DTSBU935 00795 SKIP3 DTSBU935 00796 S9200-POST-DISPLAY. DTSBU935 00797 DISPLAY ' '. DTSBU935 00798 DTSBU935 00799 DISPLAY ' '. DTSBU935 00800 DTSBU935 00801 DISPLAY '*** DTSBU935 POST TRACE DISPLAY ***'. DTSBU935 00802 DTSBU935 00803 DISPLAY L935-RESULT-IND DTSBU935 00804 ' = L935-RESULT-IND'. DTSBU935 00805 DTSBU935 00806 PERFORM S9300-REC-DISPLAY THRU S9300-EXIT. DTSBU935 00807 S9200-EXIT. DTSBU935 00808 EXIT. DTSBU935 00809 SKIP3 DTSBU935 00810 S9300-REC-DISPLAY. DTSBU935 00811 DISPLAY ' '. DTSBU935 00812 DTSBU935 00813 IF (ESKL-REC-TYPE OF LINK-REC < +1) DTSBU935 00814 OR DTSBU935 00815 (ESKL-REC-TYPE OF LINK-REC > ELEN-MAX-REC-ID) DTSBU935 00816 MOVE SPACES TO WRK-REC-PREFIX DTSBU935 00817 ELSE DTSBU935 00818 MOVE ELEN-REC-PREFIX (ESKL-REC-TYPE OF LINK-REC) DTSBU935 00819 TO WRK-REC-PREFIX. DTSBU935 00820 DTSBU935 00821 IF WRK-REC-PREFIX = SPACES DTSBU935 00822 MOVE '????' TO WRK-REC-PREFIX. DTSBU935 00823 DTSBU935 00824 MOVE ELEN-MAX-KEY-LEN TO L991-REQ-CHAR-CNT. DTSBU935 00825 DTSBU935 00826 MOVE ESKL-KEY-AREA OF LINK-REC TO L991-REQ-AREA. DTSBU935 00827 DTSBU935 00828 PERFORM S991-HEX-FORMAT THRU S991-EXIT. DTSBU935 00829 DTSBU935 00830 DISPLAY 'REC TYPE = ' DTSBU935 00831 WRK-REC-PREFIX. DTSBU935 00832 DTSBU935 00833 DISPLAY 'KEY AREA = ' DTSBU935 00834 L991-REPLY-HEX-1-AREA. DTSBU935 00835 DTSBU935 00836 DISPLAY ' ' DTSBU935 00837 L991-REPLY-HEX-2-AREA. DTSBU935 00838 DTSBU935 00839 DISPLAY ' ' DTSBU935 00840 L991-REPLY-AN-AREA. DTSBU935 00841 S9300-EXIT. DTSBU935 00842 EXIT. DTSBU935 00843 EJECT DTSBU935 00844 S921-AIX-READ. DTSBU935 00845 SET L921-READ-88 TO TRUE. DTSBU935 00846 GO TO S921-AIX-IO. DTSBU935 00847 DTSBU935 00848 S921-AIX-DELETE. DTSBU935 00849 SET L921-DELETE-88 TO TRUE. DTSBU935 00850 GO TO S921-AIX-IO. DTSBU935 00851 DTSBU935 00852 S921-AIX-WRITE. DTSBU935 00853 SET L921-WRITE-88 TO TRUE. DTSBU935 00854 GO TO S921-AIX-IO. DTSBU935 00855 DTSBU935 00856 S921-AIX-IO. DTSBU935 00857 CALL 'DTSBU921' USING L921-LINK-AREA DTSBU935 00858 ISKL-REC. DTSBU935 00859 S921-EXIT. DTSBU935 00860 EXIT. DTSBU935 00861 SKIP3 DTSBU935 00862 S991-HEX-FORMAT. DTSBU935 00863 CALL 'DTSBU991' USING L991-LINK-AREA. DTSBU935 00864 S991-EXIT. DTSBU935 00865 EXIT. DTSBU935 00866 SKIP3 DTSBU935 00867 S999-ABEND. DTSBU935 00868 DISPLAY '*** I/O MODULE ABENDING'. DTSBU935 00869 DTSBU935 00870 DISPLAY '*** CMND-CD = ' L935-CMND-CD. DTSBU935 00871 DTSBU935 00872 DISPLAY '*** FILE-STATUS = ' FILE-STATUS. DTSBU935 00873 DTSBU935 00874 DISPLAY '*** CALLING MODULE = ' L935-MOD-NAME. DTSBU935 00875 DTSBU935 00876 PERFORM S9300-REC-DISPLAY THRU S9300-EXIT. DTSBU935 00877 DTSBU935 00878 CALL 'DTSBU999' USING WRK-ABEND-CD. DTSBU935 00879 S999-EXIT. DTSBU935 00880 EXIT. DTSBU935