00001 IDENTIFICATION DIVISION. 01/08/07 00002 PROGRAM-ID. DTSCU356. DTSCU356 00003 AUTHOR. TRICOASTAL CONSULTING LTD. LV004 00004 DATE-WRITTEN. DECEMBER 1994. DTSCU356 00005 DATE-COMPILED. DTSCU356 00006 SKIP3 DTSCU356 00007 ***** DTSCU356 00008 * DTSCU356 00009 * FUNCTION: DTSCU356 00010 * DTSCU356 00011 * CONVERT "INTERNAL" PRINTER CONTROL CHARACTERS TO DTSCU356 00012 * "EXTERNAL" PRINTER CONTROL CHARACTERS. DTSCU356 00013 * DTSCU356 00014 * THE VALID "INTERNAL" PRINTER CONTROL CHARACTERS ARE DTSCU356 00015 * FOUND IN DTSICPRT. CL**2 00016 * DTSCU356 00017 * "EXTERNAL" PRINTER CONTROL CHARACTERS REQUIRED DEPEND DTSCU356 00018 * ON PRINTER TYPE. DTSCU356 00019 * DTSCU356 00020 * WE ARE AWARE THAT IT WOULD BE A BETTER SOLUTION TO DTSCU356 00021 * PROGRAM THE ATTACHMATE PRINTER DRIVER TO COPE WITH DTSCU356 00022 * "EXTERNAL" PRINTER CONTROL COMMANDS. DTSCU356 00023 * DTSCU356 00024 * HOWEVER, DLI AND ISD TECHNICIANS SEEM UNABLE TO GET DTSCU356 00025 * THE ATTACHMATE PRINTER DRIVER TO FUNCTIONS. DTSCU356 00026 * DTSCU356 00027 * THUS, THIS MODULE IS WRITTEN AS A HEDGE AGAINST DTSCU356 00028 * THE UNKOWN ATTACHMATE REQUIREMENTS. DTSCU356 00029 * DTSCU356 00030 * REGARDLESS OF THE RESOLUTION OF THE ATTACHMATE SNAFUE, DTSCU356 00031 * DTSCU356 WILL BE USEFUL IN STRIPPING "INTERNAL" CL**2 00032 * PRINTER CONTROL CHARACTERS OUT OF "PRINT" LINES DTSCU356 00033 * DESTINED TO BE DISPLAYED ON A WORK STATION (SCREEN 46) DTSCU356 00034 * OR PRINTED ON THE ANCIENT 3287 PRINTERS (WHICH CAN DO DTSCU356 00035 * A FORM FEED, AND THATS IT). DTSCU356 00036 * DTSCU356 00037 * DTSCU356 00038 * MODIFICATION LOG: DTSCU356 00039 * DTSCU356 00040 * 05/07/99 INITIAL DEVELOPMENT. COPIED FROM MACCU356 CL**2 00041 * WORK ORDER: PROGRAMMER: ZL1 CL**2 00042 * DTSCU356 00043 * 05/30/95 MOVED REPETITIVE CODE TO MACCU357. SPECIALIZED DTSCU356 00044 * THE OUT-PRINT-LINE HANDLING FOR PCL5 DEVICES DTSCU356 00045 * (PC LASER PRINTERS) SINCE "EXTRA FOR WINDOWS" DTSCU356 00046 * TRANSLATES DIFFERENTLY THAN THE DOS "EXTRA". DTSCU356 00047 * (WINDOWS: EBCDIC TO ANSI. DOS: EBCDIC TO ASCII.) DTSCU356 00048 * WORK ORDER: PROGRAMMER: RHC DTSCU356 00049 * DTSCU356 00050 * XX/XX/XX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSCU356 00051 * XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSCU356 00052 * WORK ORDER: PROGRAMMER: XXX DTSCU356 00053 * DTSCU356 00054 * DTSCU356 00055 ***** DTSCU356 00056 SKIP3 DTSCU356 00057 ENVIRONMENT DIVISION. DTSCU356 00058 SKIP3 DTSCU356 00059 DATA DIVISION. DTSCU356 00060 SKIP3 DTSCU356 00061 WORKING-STORAGE SECTION. DTSCU356 000615 77 PAN-VALET PICTURE X(24) VALUE '004DTSCU356 01/08/07'. DTSCU356 00062 SKIP3 DTSCU356 00063 01 WRK-AREA. DTSCU356 00064 05 WRK-ABEND-CD PIC X(04) VALUE 'U356'. DTSCU356 00065 DTSCU356 00066 05 PRINT-LINE-LEN PIC S9(04) COMP VALUE +132. CL**2 00067 DTSCU356 00068 05 WRK-RESP-CD PIC S9(08) COMP. DTSCU356 00069 DTSCU356 00070 05 WRK-CHAR PIC X(01). DTSCU356 00071 88 WRK-PRINTER-CONTROL-CHAR-88 VALUE X'01' DTSCU356 00072 THRU X'07' DTSCU356 00073 X'15' DTSCU356 00074 X'0C'. DTSCU356 00075 EJECT DTSCU356 00076 05 IN-PRINT-LAST PIC S9(04) COMP. DTSCU356 00077 DTSCU356 00078 05 IN-PRINT-LINE. DTSCU356 00079 10 IN-PRINT-CHAR OCCURS 132 TIMES CL**2 00080 INDEXED BY IN-PRINT-IDX DTSCU356 00081 PIC X(01). DTSCU356 00082 DTSCU356 00083 ***** DTSCU356 00084 * DTSCU356 00085 * HOW TO CONVERT EBCDIC TO ASCII USING "EXTRA FOR WINDOWS": DTSCU356 00086 * DTSCU356 00087 * . SET TRANSPARENCY-PCL5 TO TRUE. DTSCU356 00088 * DTSCU356 00089 * . HEADER-LENGTH IS A ONE BYTE FIELD WHOSE DECIMAL DTSCU356 00090 * VALUE IS THE LENGTH OF OUT-PRINT-LINE. IT MUST DTSCU356 00091 * BE BETWEEN 1 AND 254. DTSCU356 00092 * DTSCU356 00093 * FOR MORE INFORMATION SEE APPENDIX B "PRINTER EMULATION AND DTSCU356 00094 * SNA CHARACTER STRING TRANSPARENCY" IN THE "EXTRA FOR WINDOWS" DTSCU356 00095 * USER GUIDE. DTSCU356 00096 * DTSCU356 00097 ***** DTSCU356 00098 DTSCU356 00099 05 TRANSPARENCY-BLOCK. DTSCU356 00100 10 OUT-PRINT-CNT PIC S9(04) COMP. DTSCU356 00101 DTSCU356 00102 10 HEADER-BYTES REDEFINES OUT-PRINT-CNT. DTSCU356 00103 15 HEADER-TRANSPARENCY PIC X(01). DTSCU356 00104 88 TRANSPARENCY-PCL5 VALUE X'35'. DTSCU356 00105 15 HEADER-LENGTH PIC X(01). DTSCU356 00106 DTSCU356 00107 10 OUT-PRINT-LINE. DTSCU356 00108 15 OUT-PRINT-CHAR OCCURS 132 TIMES CL**2 00109 INDEXED BY OUT-PRINT-IDX DTSCU356 00110 PIC X(01). DTSCU356 00111 EJECT DTSCU356 00112 01 CPRT-LITERALS. DTSCU356 00113 ++INCLUDE DTSICPRT CL**2 00114 EJECT DTSCU356 00115 LINKAGE SECTION. DTSCU356 00116 SKIP3 DTSCU356 00117 01 DFHCOMMAREA. DTSCU356 00118 ++INCLUDE DTSIL356 CL**2 00119 EJECT DTSCU356 00120 PROCEDURE DIVISION. DTSCU356 00121 DTSCU356 00122 MOVE L356-PRINT-LINE TO IN-PRINT-LINE. DTSCU356 00123 DTSCU356 00124 MOVE +0 TO IN-PRINT-LAST. DTSCU356 00125 DTSCU356 00126 PERFORM DTSCU356 00127 VARYING IN-PRINT-IDX FROM PRINT-LINE-LEN BY -1 DTSCU356 00128 UNTIL (IN-PRINT-LAST NOT = +0) DTSCU356 00129 OR DTSCU356 00130 (IN-PRINT-IDX < +1) DTSCU356 00131 IF IN-PRINT-CHAR (IN-PRINT-IDX) = SPACES OR LOW-VALUES DTSCU356 00132 CONTINUE DTSCU356 00133 ELSE DTSCU356 00134 SET IN-PRINT-LAST TO IN-PRINT-IDX DTSCU356 00135 END-IF DTSCU356 00136 END-PERFORM. DTSCU356 00137 DTSCU356 00138 MOVE LOW-VALUES TO OUT-PRINT-LINE. DTSCU356 00139 DTSCU356 00140 MOVE +0 TO OUT-PRINT-CNT. DTSCU356 00141 DTSCU356 00142 PERFORM P0000-PROCESS-IN-CHAR THRU P0000-EXIT DTSCU356 00143 VARYING IN-PRINT-IDX FROM 1 BY 1 DTSCU356 00144 UNTIL IN-PRINT-IDX > IN-PRINT-LAST. DTSCU356 00145 DTSCU356 00146 IF OUT-PRINT-CNT = +0 DTSCU356 00147 ADD +1 TO OUT-PRINT-CNT DTSCU356 00148 MOVE SPACE TO OUT-PRINT-CHAR (OUT-PRINT-CNT). DTSCU356 00149 DTSCU356 00150 IF L356-DEVICE-PCL5-YES-88 DTSCU356 00151 SET TRANSPARENCY-PCL5 TO TRUE DTSCU356 00152 MOVE TRANSPARENCY-BLOCK TO L356-PRINT-LINE DTSCU356 00153 ELSE DTSCU356 00154 MOVE OUT-PRINT-LINE TO L356-PRINT-LINE. DTSCU356 00155 DTSCU356 00156 DTSCU356 00157 EXEC CICS DTSCU356 00158 RETURN DTSCU356 00159 END-EXEC. DTSCU356 00160 DTSCU356 00161 DTSCU356 00162 GOBACK. DTSCU356 00163 EJECT DTSCU356 00164 P0000-PROCESS-IN-CHAR. DTSCU356 00165 MOVE IN-PRINT-CHAR (IN-PRINT-IDX) TO WRK-CHAR. DTSCU356 00166 DTSCU356 00167 IF WRK-PRINTER-CONTROL-CHAR-88 DTSCU356 00168 PERFORM P1000-PRINTER-CONTROL-CHAR THRU P1000-EXIT DTSCU356 00169 ELSE DTSCU356 00170 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00171 P0000-EXIT. DTSCU356 00172 EXIT. DTSCU356 00173 EJECT DTSCU356 00174 P1000-PRINTER-CONTROL-CHAR. DTSCU356 00175 IF L356-DEVICE-PCL5-YES-88 DTSCU356 00176 PERFORM P1100-PCL-PRINTER THRU P1100-EXIT DTSCU356 00177 ELSE DTSCU356 00178 IF L356-DEVICE-PCL5-NO-88 DTSCU356 00179 PERFORM P1200-3287-PRINTER THRU P1200-EXIT DTSCU356 00180 ELSE DTSCU356 00181 IF L356-DEVICE-TERMINAL-88 DTSCU356 00182 PERFORM P1300-TERMINAL THRU P1300-EXIT. DTSCU356 00183 P1000-EXIT. DTSCU356 00184 EXIT. DTSCU356 00185 SKIP3 DTSCU356 00186 P1100-PCL-PRINTER. DTSCU356 00187 ***** DTSCU356 00188 * DTSCU356 00189 * DTSCU356 00190 ***** DTSCU356 00191 DTSCU356 00192 IF WRK-CHAR = CPRT-FORM-FEED DTSCU356 00193 NEXT SENTENCE CL**4 00194 ELSE DTSCU356 00195 IF WRK-CHAR = CPRT-NEW-LINE DTSCU356 00196 NEXT SENTENCE DTSCU356 00197 ELSE DTSCU356 00198 IF WRK-CHAR = CPRT-SELECT-UPPER-TRAY DTSCU356 00199 PERFORM P1110-SELECT-UPPER-TRAY THRU P1110-EXIT DTSCU356 00200 ELSE DTSCU356 00201 IF WRK-CHAR = CPRT-SELECT-LOWER-TRAY DTSCU356 00202 PERFORM P1120-SELECT-LOWER-TRAY THRU P1120-EXIT DTSCU356 00203 ELSE DTSCU356 00204 IF WRK-CHAR = CPRT-ENABLE-UNDERLINE-FIX DTSCU356 00205 PERFORM P1130-ENABLE-UNDERLINE-FIX THRU P1130-EXIT DTSCU356 00206 ELSE DTSCU356 00207 IF WRK-CHAR = CPRT-ENABLE-UNDERLINE-FLOAT DTSCU356 00208 PERFORM P1140-ENABLE-UNDERLINE-FLOAT THRU P1140-EXIT DTSCU356 00209 ELSE DTSCU356 00210 IF WRK-CHAR = CPRT-DISABLE-UNDERLINE DTSCU356 00211 PERFORM P1150-DISABLE-UNDERLINE THRU P1150-EXIT DTSCU356 00212 ELSE DTSCU356 00213 IF WRK-CHAR = CPRT-STROKE-WEIGHT-BOLD DTSCU356 00214 PERFORM P1160-STROKE-WEIGHT-BOLD THRU P1160-EXIT DTSCU356 00215 ELSE DTSCU356 00216 IF WRK-CHAR = CPRT-STROKE-WEIGHT-REGULAR DTSCU356 00217 PERFORM P1170-STROKE-WEIGHT-REGULAR THRU P1170-EXIT. DTSCU356 00218 P1100-EXIT. DTSCU356 00219 EXIT. DTSCU356 00220 SKIP3 DTSCU356 00221 P1110-SELECT-UPPER-TRAY. DTSCU356 00222 ***** DTSCU356 00223 * SELECT UPPER TRAY = X'1B5093F1C8' DTSCU356 00224 ***** DTSCU356 00225 MOVE CPRT-PCL5-ESCAPE-CHAR TO WRK-CHAR. DTSCU356 00226 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00227 MOVE X'50' TO WRK-CHAR. DTSCU356 00228 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00229 MOVE X'93' TO WRK-CHAR. DTSCU356 00230 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00231 MOVE X'F1' TO WRK-CHAR. DTSCU356 00232 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00233 MOVE X'C8' TO WRK-CHAR. DTSCU356 00234 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00235 P1110-EXIT. DTSCU356 00236 EXIT. DTSCU356 00237 SKIP3 DTSCU356 00238 P1120-SELECT-LOWER-TRAY. DTSCU356 00239 ***** DTSCU356 00240 * SELECT LOWER TRAY = X'1B5093F4C8' DTSCU356 00241 ***** DTSCU356 00242 MOVE CPRT-PCL5-ESCAPE-CHAR TO WRK-CHAR. DTSCU356 00243 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00244 MOVE X'50' TO WRK-CHAR. DTSCU356 00245 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00246 MOVE X'93' TO WRK-CHAR. DTSCU356 00247 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00248 MOVE X'F4' TO WRK-CHAR. DTSCU356 00249 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00250 MOVE X'C8' TO WRK-CHAR. DTSCU356 00251 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00252 P1120-EXIT. DTSCU356 00253 EXIT. DTSCU356 00254 SKIP3 DTSCU356 00255 P1130-ENABLE-UNDERLINE-FIX. DTSCU356 00256 ***** DTSCU356 00257 * ENABLE UNDERLINE FIXED = X'1B5084F0C4' DTSCU356 00258 ***** DTSCU356 00259 MOVE CPRT-PCL5-ESCAPE-CHAR TO WRK-CHAR. DTSCU356 00260 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00261 MOVE X'50' TO WRK-CHAR. DTSCU356 00262 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00263 MOVE X'84' TO WRK-CHAR. DTSCU356 00264 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00265 MOVE X'F0' TO WRK-CHAR. DTSCU356 00266 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00267 MOVE X'C4' TO WRK-CHAR. DTSCU356 00268 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00269 P1130-EXIT. DTSCU356 00270 EXIT. DTSCU356 00271 SKIP3 DTSCU356 00272 P1140-ENABLE-UNDERLINE-FLOAT. DTSCU356 00273 ***** DTSCU356 00274 * ENABLE UNDERLINE FLOATING = X'1B5084F3C4' DTSCU356 00275 ***** DTSCU356 00276 MOVE CPRT-PCL5-ESCAPE-CHAR TO WRK-CHAR. DTSCU356 00277 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00278 MOVE X'50' TO WRK-CHAR. DTSCU356 00279 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00280 MOVE X'84' TO WRK-CHAR. DTSCU356 00281 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00282 MOVE X'F3' TO WRK-CHAR. DTSCU356 00283 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00284 MOVE X'C4' TO WRK-CHAR. DTSCU356 00285 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00286 P1140-EXIT. DTSCU356 00287 EXIT. DTSCU356 00288 SKIP3 DTSCU356 00289 P1150-DISABLE-UNDERLINE. DTSCU356 00290 ***** DTSCU356 00291 * DISABLE UNDERLINE = X'1B50847C' DTSCU356 00292 ***** DTSCU356 00293 MOVE CPRT-PCL5-ESCAPE-CHAR TO WRK-CHAR. DTSCU356 00294 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00295 MOVE X'50' TO WRK-CHAR. DTSCU356 00296 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00297 MOVE X'84' TO WRK-CHAR. DTSCU356 00298 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00299 MOVE X'7C' TO WRK-CHAR. DTSCU356 00300 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00301 P1150-EXIT. DTSCU356 00302 EXIT. DTSCU356 00303 SKIP3 DTSCU356 00304 P1160-STROKE-WEIGHT-BOLD. DTSCU356 00305 ***** DTSCU356 00306 * STROKE WEIGHT BOLD = X'1B4DA2F3C2' DTSCU356 00307 ***** DTSCU356 00308 MOVE CPRT-PCL5-ESCAPE-CHAR TO WRK-CHAR. DTSCU356 00309 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00310 MOVE X'4D' TO WRK-CHAR. DTSCU356 00311 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00312 MOVE X'A2' TO WRK-CHAR. DTSCU356 00313 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00314 MOVE X'F3' TO WRK-CHAR. DTSCU356 00315 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00316 MOVE X'C2' TO WRK-CHAR. DTSCU356 00317 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00318 P1160-EXIT. DTSCU356 00319 EXIT. DTSCU356 00320 SKIP3 DTSCU356 00321 P1170-STROKE-WEIGHT-REGULAR. DTSCU356 00322 ***** DTSCU356 00323 * STROKE WEIGHT REGULAR = X'1B4DA2F0C2' DTSCU356 00324 ***** DTSCU356 00325 MOVE CPRT-PCL5-ESCAPE-CHAR TO WRK-CHAR. DTSCU356 00326 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00327 MOVE X'4D' TO WRK-CHAR. DTSCU356 00328 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00329 MOVE X'A2' TO WRK-CHAR. DTSCU356 00330 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00331 MOVE X'F0' TO WRK-CHAR. DTSCU356 00332 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00333 MOVE X'C2' TO WRK-CHAR. DTSCU356 00334 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00335 P1170-EXIT. DTSCU356 00336 EXIT. DTSCU356 00337 EJECT DTSCU356 00338 P1200-3287-PRINTER. DTSCU356 00339 IF WRK-CHAR = CPRT-FORM-FEED DTSCU356 00340 MOVE CPRT-NEW-LINE TO WRK-CHAR DTSCU356 00341 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT DTSCU356 00342 MOVE CPRT-FORM-FEED TO WRK-CHAR DTSCU356 00343 PERFORM S1000-WRK-CHAR-TO-OUT-CHAR THRU S1000-EXIT. DTSCU356 00344 P1200-EXIT. DTSCU356 00345 EXIT. DTSCU356 00346 EJECT DTSCU356 00347 P1300-TERMINAL. DTSCU356 00348 P1300-EXIT. DTSCU356 00349 EXIT. DTSCU356 00350 EJECT DTSCU356 00351 S1000-WRK-CHAR-TO-OUT-CHAR. DTSCU356 00352 IF OUT-PRINT-CNT < PRINT-LINE-LEN DTSCU356 00353 ADD +1 TO OUT-PRINT-CNT DTSCU356 00354 MOVE WRK-CHAR TO OUT-PRINT-CHAR (OUT-PRINT-CNT) DTSCU356 00355 ELSE DTSCU356 00356 PERFORM S899-ABEND THRU S899-EXIT. DTSCU356 00357 S1000-EXIT. DTSCU356 00358 EXIT. DTSCU356 00359 EJECT DTSCU356 00360 S899-ABEND. DTSCU356 00361 SKIP1 DTSCU356 00362 EXEC CICS DTSCU356 00363 ABEND DTSCU356 00364 ABCODE (WRK-ABEND-CD) DTSCU356 00365 END-EXEC. DTSCU356 00366 SKIP1 DTSCU356 00367 S899-EXIT. DTSCU356 00368 EXIT. DTSCU356