00001 IDENTIFICATION DIVISION. 07/10/12 00002 PROGRAM-ID. DTSCSL0. DTSCSL0 00003 AUTHOR. TRICOASTAL CONSULTING LTD. LV004 00004 DATE-WRITTEN. NOVEMBER 1991. DTSCSL0 00005 DATE-COMPILED. DTSCSL0 00006 SKIP3 DTSCSL0 00007 *** CL**4 00008 * DTSCSL0 00009 * FUNCTION: LMI MENU SCREEN PROCESSOR DTSCSL0 00010 * DTSCSL0 00011 * DTSCSL0 00012 * MODIFICATION LOG: DTSCSL0 00013 * DTSCSL0 00014 * 11/06/91 INITIAL DEVELOPMENT. DTSCSL0 00015 * WORK ORDER: PROGRAMMER: TCL DTSCSL0 00016 * DTSCSL0 00017 * 04/11/94 MODIFIED FOR MONTANA. DTSCSL0 00018 * WORK ORDER: PROGRAMMER: RHC DTSCSL0 00019 * DTSCSL0 00020 * 08/13/1998 REVIEWED AND MODIFIED FOR DC. DTSCSL0 00021 * REFERENCE: DC DEVELOPMENT PROGRAMMER: EHH DTSCSL0 00022 * DTSCSL0 00023 * DTSCSL0 00024 * 03/08/2001 REVIEWED AND MODIFIED TAPE TRACKING SYSTEM DTSCSL0 00025 * REFERENCE: DC DEVELOPMENT PROGRAMMER: ZL1 DTSCSL0 00026 * DTSCSL0 00027 * MM/DD/YYYY XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSCSL0 00028 * XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSCSL0 00029 * REFERENCE: XXXXXXXXXXXXXXX PROGRAMMER: XXX DTSCSL0 00030 * DTSCSL0 00031 * DTSCSL0 00032 * DESCRIPTION: DTSCSL0 00033 * DTSCSL0 00034 * IF SCREEN 'L0' NOT CURRENTLY DISPLAYED DTSCSL0 00035 * SEND SCREEN L0 (WITH PMSG-KEY-OPTION MESSAGE) DTSCSL0 00036 * RETURN TO DRIVER. DTSCSL0 00037 * DTSCSL0 00038 * RECEIVE SCREEN 'L0'. DTSCSL0 00039 * DTSCSL0 00040 * IF CLEAR KEY PRESSED DTSCSL0 00041 * SEND SCREEN L0 (WITH PMSG-KEY-OPTION MESSAGE) DTSCSL0 00042 * SET LCCM-END-TASK-88 TO TRUE DTSCSL0 00043 * RETURN TO DRIVER. DTSCSL0 00044 * DTSCSL0 00045 * IF PA2 KEY PRESSED DTSCSL0 00046 * SEND SCREEN L0 (DATA ONLY) DTSCSL0 00047 * SET LCCM-END-TASK-88 TO TRUE DTSCSL0 00048 * RETURN TO DRIVER. DTSCSL0 00049 * DTSCSL0 00050 * IF F3 KEY PRESSED DTSCSL0 00051 * MOVE WRK-F03-SCR-ID TO LCCM-REQ-SCR-ID DTSCSL0 00052 * SET LCCM-LINK-SCREEN-88 TO TRUE DTSCSL0 00053 * RETURN TO DRIVER. DTSCSL0 00054 * DTSCSL0 00055 * IF F4 KEY PRESSED DTSCSL0 00056 * MOVE LCCM-PRIOR-SCR-ID TO LCCM-REQ-SCR-ID DTSCSL0 00057 * SET LCCM-LINK-SCREEN-88 TO TRUE DTSCSL0 00058 * RETURN TO DRIVER. DTSCSL0 00059 * DTSCSL0 00060 * IF NOT ENTER KEY PRESSED DTSCSL0 00061 * BUILD INVALID KEY MESSAGE (VIA LINK TO DTSCU804) DTSCSL0 00062 * SEND SCREEN L0 (WITH THE INVALID KEY PRESSED MESSAGE) DTSCSL0 00063 * SET LCCM-END-TASK-88 TO TRUE DTSCSL0 00064 * RETURN TO DRIVER. DTSCSL0 00065 * DTSCSL0 00066 * DTSCSL0 00067 * IF MAP-OPT = SPACES OR LOW-VALUES OR 'L0' DTSCSL0 00068 * SEND SCREEN L0 (WITH THE PMSG-KEY-OPTION MESSAGE) DTSCSL0 00069 * SET LCCM-END-TASK-88 TO TRUE DTSCSL0 00070 * RETURN TO DRIVER. DTSCSL0 00071 * DTSCSL0 00072 * CONVERT MAP-OPT INTO A SCREEN IDENTIFIER, PLACING THE DTSCSL0 00073 * RESULT IN LCCM-REQ-SCR-ID. DTSCSL0 00074 * DTSCSL0 00075 * EDIT LCCM-REQ-SCR-ID FOR VALIDITY (VIA A CALL TO DTSIU803). DTSCSL0 00076 * DTSCSL0 00077 * IF LCCM-REQ-SCR-ID VALID (LCCM-NO-MSG) DTSCSL0 00078 * SET LCCM-LINK-SCREEN-88 TO TRUE DTSCSL0 00079 * RETURN TO DRIVER DTSCSL0 00080 * ELSE DTSCSL0 00081 * SEND SCREEN L0 (WITH ERROR MESSAGE) DTSCSL0 00082 * SET LCCM-END-TASK-88 TO TRUE DTSCSL0 00083 * RETURN TO DRIVER. DTSCSL0 00084 * DTSCSL0 00085 * DTSCSL0 00086 ***** DTSCSL0 00087 SKIP3 DTSCSL0 00088 ENVIRONMENT DIVISION. DTSCSL0 00089 SKIP3 DTSCSL0 00090 DATA DIVISION. DTSCSL0 00091 SKIP3 DTSCSL0 00092 WORKING-STORAGE SECTION. DTSCSL0 000925 77 PAN-VALET PICTURE X(24) VALUE '004DTSCSL0 07/10/12'. DTSCSL0 00093 SKIP3 DTSCSL0 00094 01 WRK-AREA. DTSCSL0 00095 05 WRK-ABEND-CD PIC X(04) VALUE 'SL0 '. DTSCSL0 00096 05 WRK-RESP-CD PIC S9(08) COMP. DTSCSL0 00097 DTSCSL0 00098 05 WRK-SCR-ID PIC X(02) VALUE 'L0'. DTSCSL0 00099 05 WRK-F03-SCR-ID PIC X(02) VALUE '00'. DTSCSL0 00100 DTSCSL0 00101 05 RESP-IND PIC X(01). DTSCSL0 00102 88 RESP-CURSOR-TO-OPT-88 VALUE 'C'. DTSCSL0 00103 88 RESP-MSGONLY-88 VALUE 'M'. DTSCSL0 00104 88 RESP-SCREEN-88 VALUE 'S'. DTSCSL0 00105 88 RESP-JUMP-88 VALUE 'J'. DTSCSL0 00106 DTSCSL0 00107 05 CURSOR-IND PIC X(01). DTSCSL0 00108 88 CURSOR-SET-88 VALUE 'Y'. DTSCSL0 00109 DTSCSL0 00110 05 WRK-DATE-AREA. DTSCSL0 00111 10 WRK-DATE PIC X(08). DTSCSL0 00112 10 FILLER PIC X(01) VALUE '.'. DTSCSL0 00113 EJECT DTSCSL0 00114 01 L851-COMM-AREA. DTSCSL0 00115 ++INCLUDE DTSIL851 DTSCSL0 00116 SKIP3 DTSCSL0 00117 05 MAP-AREA REDEFINES L851-MAP-AREA. DTSCSL0 00118 ++INCLUDE DTSISSM DTSCSL0 00119 EJECT DTSCSL0 00120 01 L805-COMM-AREA. DTSCSL0 00121 ++INCLUDE DTSIL805 DTSCSL0 00122 EJECT DTSCSL0 00123 01 CATB-LITERALS. DTSCSL0 00124 ++INCLUDE DTSICATB DTSCSL0 00125 SKIP3 DTSCSL0 00126 01 EMSG-LITERALS. DTSCSL0 00127 ++INCLUDE DTSICECD DTSCSL0 00128 SKIP3 DTSCSL0 00129 01 PMSG-LITERALS. DTSCSL0 00130 ++INCLUDE DTSICPCD DTSCSL0 00131 EJECT DTSCSL0 00132 LINKAGE SECTION. DTSCSL0 00133 SKIP3 DTSCSL0 00134 01 DFHCOMMAREA. DTSCSL0 00135 ++INCLUDE DTSILCCM DTSCSL0 00136 EJECT DTSCSL0 00137 PROCEDURE DIVISION. DTSCSL0 00138 SKIP2 DTSCSL0 00139 MOVE LOW-VALUES TO MAP-AREA. DTSCSL0 00140 DTSCSL0 00141 MOVE 'N' TO CURSOR-IND. DTSCSL0 00142 SKIP2 DTSCSL0 00143 MOVE SPACE TO RESP-IND. DTSCSL0 00144 PERFORM P1000-ANALYZE-REQUEST THRU P1000-EXIT. DTSCSL0 00145 SKIP2 DTSCSL0 00146 IF RESP-MSGONLY-88 DTSCSL0 00147 MOVE LOW-VALUES TO MAP-AREA DTSCSL0 00148 PERFORM S805-MSG-AREA THRU S805-EXIT DTSCSL0 00149 PERFORM S2200-SEND-DATAONLY THRU S2200-EXIT DTSCSL0 00150 SET LCCM-END-TASK-88 TO TRUE DTSCSL0 00151 ELSE DTSCSL0 00152 IF RESP-SCREEN-88 DTSCSL0 00153 PERFORM P2000-CONSTRUCT-S-AREA THRU P2000-EXIT DTSCSL0 00154 PERFORM S2100-SEND THRU S2100-EXIT DTSCSL0 00155 SET LCCM-END-TASK-88 TO TRUE DTSCSL0 00156 ELSE DTSCSL0 00157 IF RESP-JUMP-88 DTSCSL0 00158 SET LCCM-LINK-SCREEN-88 TO TRUE DTSCSL0 00159 ELSE DTSCSL0 00160 IF RESP-CURSOR-TO-OPT-88 DTSCSL0 00161 MOVE LOW-VALUES TO MAP-AREA DTSCSL0 00162 MOVE CATB-CURSOR TO MAP-OPT-L DTSCSL0 00163 SET CURSOR-SET-88 TO TRUE DTSCSL0 00164 PERFORM S2200-SEND-DATAONLY THRU S2200-EXIT DTSCSL0 00165 SET LCCM-END-TASK-88 TO TRUE DTSCSL0 00166 ELSE DTSCSL0 00167 PERFORM S899-ABEND THRU S899-EXIT. DTSCSL0 00168 SKIP2 DTSCSL0 00169 EXEC CICS DTSCSL0 00170 RETURN DTSCSL0 00171 END-EXEC. DTSCSL0 00172 SKIP2 DTSCSL0 00173 GOBACK. DTSCSL0 00174 EJECT DTSCSL0 00175 P1000-ANALYZE-REQUEST. DTSCSL0 00176 IF LCCM-SCR-ID NOT = WRK-SCR-ID DTSCSL0 00177 MOVE PMSG-KEY-OPTION TO LCCM-MSG-AREA DTSCSL0 00178 SET RESP-SCREEN-88 TO TRUE DTSCSL0 00179 GO TO P1000-EXIT. DTSCSL0 00180 DTSCSL0 00181 PERFORM S1100-RECEIVE THRU S1100-EXIT. DTSCSL0 00182 DTSCSL0 00183 IF LCCM-CLEAR-88 OR LCCM-F12-88 DTSCSL0 00184 MOVE LOW-VALUES TO MAP-AREA DTSCSL0 00185 MOVE PMSG-KEY-OPTION TO LCCM-MSG-AREA DTSCSL0 00186 SET RESP-SCREEN-88 TO TRUE DTSCSL0 00187 GO TO P1000-EXIT. DTSCSL0 00188 DTSCSL0 00189 IF LCCM-PA2-88 DTSCSL0 00190 SET RESP-CURSOR-TO-OPT-88 TO TRUE DTSCSL0 00191 GO TO P1000-EXIT. DTSCSL0 00192 DTSCSL0 00193 IF LCCM-ENTER-88 OR LCCM-F03-88 OR LCCM-F04-88 OR LCCM-F14-88DTSCSL0 00194 NEXT SENTENCE DTSCSL0 00195 ELSE DTSCSL0 00196 PERFORM S804-INVALID-KEY THRU S804-EXIT DTSCSL0 00197 SET RESP-MSGONLY-88 TO TRUE DTSCSL0 00198 GO TO P1000-EXIT. DTSCSL0 00199 DTSCSL0 00200 IF LCCM-F03-88 DTSCSL0 00201 MOVE WRK-F03-SCR-ID TO LCCM-REQ-SCR-ID DTSCSL0 00202 SET RESP-JUMP-88 TO TRUE DTSCSL0 00203 GO TO P1000-EXIT. DTSCSL0 00204 DTSCSL0 00205 IF LCCM-F04-88 DTSCSL0 00206 MOVE LCCM-PRIOR-SCR-ID TO LCCM-REQ-SCR-ID DTSCSL0 00207 SET RESP-JUMP-88 TO TRUE DTSCSL0 00208 GO TO P1000-EXIT. DTSCSL0 00209 DTSCSL0 00210 IF LCCM-F14-88 DTSCSL0 00211 MOVE LCCM-CORR-SCR-ID TO LCCM-REQ-SCR-ID DTSCSL0 00212 PERFORM S803-REQ-SCR-ID-EDIT THRU S803-EXIT DTSCSL0 00213 IF LCCM-MSG DTSCSL0 00214 SET RESP-SCREEN-88 TO TRUE DTSCSL0 00215 GO TO P1000-EXIT DTSCSL0 00216 ELSE DTSCSL0 00217 SET RESP-JUMP-88 TO TRUE DTSCSL0 00218 GO TO P1000-EXIT. DTSCSL0 00219 DTSCSL0 00220 IF MAP-OPT = SPACES OR LOW-VALUES OR WRK-SCR-ID DTSCSL0 00221 MOVE PMSG-KEY-OPTION TO LCCM-MSG-AREA DTSCSL0 00222 SET RESP-SCREEN-88 TO TRUE DTSCSL0 00223 GO TO P1000-EXIT. DTSCSL0 00224 DTSCSL0 00225 IF MAP-OPT = '1 ' OR ' 1' DTSCSL0 00226 MOVE 'L1' TO LCCM-REQ-SCR-ID DTSCSL0 00227 ELSE DTSCSL0 00228 IF MAP-OPT = '2 ' OR ' 2' DTSCSL0 00229 MOVE 'L2' TO LCCM-REQ-SCR-ID DTSCSL0 00230 ELSE DTSCSL0 00231 IF MAP-OPT = '5 ' OR ' 5' DTSCSL0 00232 MOVE 'L5' TO LCCM-REQ-SCR-ID DTSCSL0 00233 ELSE DTSCSL0 00234 IF MAP-OPT = '6 ' OR ' 6' DTSCSL0 00235 MOVE 'L6' TO LCCM-REQ-SCR-ID DTSCSL0 00236 ELSE DTSCSL0 00237 IF MAP-OPT = '7 ' OR ' 7' DTSCSL0 00238 MOVE 'L7' TO LCCM-REQ-SCR-ID DTSCSL0 00239 ELSE DTSCSL0 00240 IF MAP-OPT = '8 ' OR ' 8' DTSCSL0 00241 MOVE 'L8' TO LCCM-REQ-SCR-ID DTSCSL0 00242 ELSE DTSCSL0 00243 IF MAP-OPT = '9 ' OR ' 9' DTSCSL0 00244 MOVE 'L9' TO LCCM-REQ-SCR-ID DTSCSL0 00245 ELSE DTSCSL0 00246 MOVE MAP-OPT TO LCCM-REQ-SCR-ID. DTSCSL0 00247 DTSCSL0 00248 PERFORM S803-REQ-SCR-ID-EDIT THRU S803-EXIT. DTSCSL0 00249 IF LCCM-MSG DTSCSL0 00250 SET RESP-SCREEN-88 TO TRUE DTSCSL0 00251 ELSE DTSCSL0 00252 SET RESP-JUMP-88 TO TRUE. DTSCSL0 00253 P1000-EXIT. DTSCSL0 00254 EXIT. DTSCSL0 00255 EJECT DTSCSL0 00256 P2000-CONSTRUCT-S-AREA. DTSCSL0 00257 MOVE LCCM-TASK-START-DISP-DATE TO MAP-SYS-DATE. DTSCSL0 00258 MOVE LCCM-TASK-START-DISP-TIME TO MAP-SYS-TIME. DTSCSL0 00259 MOVE LCCM-CICS-REGION-NAME TO MAP-CICS-REGION-NAME. DTSCSL0 00260 DTSCSL0 00261 PERFORM S805-MSG-AREA THRU S805-EXIT. DTSCSL0 00262 P2000-EXIT. DTSCSL0 00263 EXIT. DTSCSL0 00264 EJECT DTSCSL0 00265 S803-REQ-SCR-ID-EDIT. DTSCSL0 00266 DTSCSL0 00267 EXEC CICS DTSCSL0 00268 LINK DTSCSL0 00269 PROGRAM ('DTSCU803') DTSCSL0 00270 COMMAREA (DFHCOMMAREA) DTSCSL0 00271 END-EXEC. DTSCSL0 00272 DTSCSL0 00273 S803-EXIT. DTSCSL0 00274 EXIT. DTSCSL0 00275 SKIP3 DTSCSL0 00276 S804-INVALID-KEY. DTSCSL0 00277 DTSCSL0 00278 EXEC CICS DTSCSL0 00279 LINK DTSCSL0 00280 PROGRAM ('DTSCU804') DTSCSL0 00281 COMMAREA (DFHCOMMAREA) DTSCSL0 00282 END-EXEC. DTSCSL0 00283 DTSCSL0 00284 S804-EXIT. DTSCSL0 00285 EXIT. DTSCSL0 00286 SKIP3 DTSCSL0 00287 S805-MSG-AREA. DTSCSL0 00288 MOVE LCCM-MSG-AREA TO L805-MSG-AREA. DTSCSL0 00289 DTSCSL0 00290 EXEC CICS DTSCSL0 00291 LINK DTSCSL0 00292 PROGRAM ('DTSCU805') DTSCSL0 00293 COMMAREA (L805-COMM-AREA) DTSCSL0 00294 END-EXEC. DTSCSL0 00295 DTSCSL0 00296 MOVE L805-S-MSG-AREA TO MAP-MSG-AREA. DTSCSL0 00297 S805-EXIT. DTSCSL0 00298 EXIT. DTSCSL0 00299 SKIP3 DTSCSL0 00300 S851-SCREEN-PROCESSING. DTSCSL0 00301 EXEC CICS DTSCSL0 00302 LINK DTSCSL0 00303 PROGRAM ('DTSCU851') DTSCSL0 00304 COMMAREA (L851-COMM-AREA) DTSCSL0 00305 END-EXEC. DTSCSL0 00306 S851-EXIT. DTSCSL0 00307 EXIT. DTSCSL0 00308 SKIP3 DTSCSL0 00309 S899-ABEND. DTSCSL0 00310 DTSCSL0 00311 EXEC CICS DTSCSL0 00312 ABEND DTSCSL0 00313 ABCODE (WRK-ABEND-CD) DTSCSL0 00314 END-EXEC. DTSCSL0 00315 DTSCSL0 00316 S899-EXIT. DTSCSL0 00317 EXIT. DTSCSL0 00318 EJECT DTSCSL0 00319 S1100-RECEIVE. DTSCSL0 00320 SET L851-RECEIVE-88 TO TRUE. DTSCSL0 00321 MOVE WRK-SCR-ID TO L851-SCR-ID. DTSCSL0 00322 PERFORM S851-SCREEN-PROCESSING THRU S851-EXIT. DTSCSL0 00323 MOVE L851-AID TO LCCM-AID. DTSCSL0 00324 MOVE L851-CURSOR TO LCCM-CURSOR. DTSCSL0 00325 S1100-EXIT. DTSCSL0 00326 EXIT. DTSCSL0 00327 SKIP3 DTSCSL0 00328 S2100-SEND. DTSCSL0 00329 SET L851-SEND-88 TO TRUE. DTSCSL0 00330 PERFORM S2900-PREPARE-SEND THRU S2900-EXIT. DTSCSL0 00331 PERFORM S851-SCREEN-PROCESSING THRU S851-EXIT. DTSCSL0 00332 S2100-EXIT. DTSCSL0 00333 EXIT. DTSCSL0 00334 SKIP3 DTSCSL0 00335 S2200-SEND-DATAONLY. DTSCSL0 00336 SET L851-SEND-DATAONLY-88 TO TRUE. DTSCSL0 00337 PERFORM S2900-PREPARE-SEND THRU S2900-EXIT. DTSCSL0 00338 PERFORM S851-SCREEN-PROCESSING THRU S851-EXIT. DTSCSL0 00339 S2200-EXIT. DTSCSL0 00340 EXIT. DTSCSL0 00341 SKIP3 DTSCSL0 00342 S2900-PREPARE-SEND. DTSCSL0 00343 MOVE WRK-SCR-ID TO L851-SCR-ID DTSCSL0 00344 LCCM-SCR-ID. DTSCSL0 00345 MOVE LCCM-OP-ALARM-IND TO L851-ALARM-IND. DTSCSL0 00346 MOVE LCCM-MSG-TYPE TO L851-MSG-TYPE. DTSCSL0 00347 IF CURSOR-SET-88 DTSCSL0 00348 NEXT SENTENCE DTSCSL0 00349 ELSE DTSCSL0 00350 MOVE CATB-CURSOR TO MAP-OPT-L. DTSCSL0 00351 S2900-EXIT. DTSCSL0 00352 EXIT. DTSCSL0