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