!S -UOPT,CHI ! 1000 !O ~UOPT,CHI ! 2000 !L LPX,S ! 3000 !R CED ! 4000 !* ! 4020 !* This source code, documentation, and generated object code has been ! 4040 !* designed by, developed by, and is a software product of MANAGEMENT ! 4060 !* SOFTWARE SOLUTIONS, INC. The exclusive right to display, modify, ! 4080 !* or distribute any part of this product is maintained solely by ! 4100 !* MANAGEMENT SOFTWARE SOLUTIONS, INC. and/or its successors. ! 4120 !* ! 4140 !* This software product is protected by United States copyright laws. ! 4160 !* It is unlawful to use, reproduce, modify, disclose, distribute, ! 4180 !* reverse engineer, decompile or disassemble any part of this ! 4200 !* software product without legal consent and authorization from ! 4220 !* MANAGEMENT SOFTWARE SOLUTIONS, INC. Any such action will be ! 4240 !* considered theft and a violation of copyright. Such activity will ! 4260 !* be agressively pursued and punishable by Federal law. ! 4280 !* ! 4300 !====================================================================! ! 4320 ! TITLE: PROMPT OPTION BLOCK MAINTENANCE ! ! 4340 ! SOURCE: -UOPT ! ! 4360 ! OBJECT: ~UOPT ! ! 4380 ! REVISED: JUN 29/00 RHN ! ! 4400 !====================================================================! ! 4420 ! ! 4440 !====================================================================! ! 4460 ! VARIABLE DEFINITIONS ! ! 4480 !====================================================================! ! 4500 ! ! 4520 LENGTH 2.0 & LOCAL CURR ! 34000 LENGTH 1 & LOCAL AFLAG$ ! 35000 LENGTH 16 & LOCAL WDESC$ ! 36000 ! ! 37000 USE "(STD ",," 10000" ! 38000 USE "(XTERM ",," 1000" ! 38100 ! ! 39000 !====================================================================! ! 40000 ! FILE DEFINITIONS ! ! 41000 !====================================================================! ! 42000 ! ! 43000 SET Z1 = 49 ! 43020 ! ! 43040 USE "(Z1" ! 44000 USE "(ZOPT ",," 1000" ! 45000 ! ! 47000 !====================================================================! ! 48000 ! DISPLAY FORMATS ! ! 49000 !====================================================================! ! 50000 ! ! 51000 USE "(STD ",," 20000" ! 52000 ! ! 53000 3010 FORMAT _ ! 54000 @(0,2);(SB);" PROGRAM ";(SF);(TP);"",8;(TP);_ ! 55000 @(19,2);(SB);" SECTION ";(SF);(TP);" ";(TP);_ ! 56000 @(0,3);FLINE$;_ ! 57000 @(0,4);(SB);" FIELD OPTION DESCRIPTION ";_ ! 58000 @(0,5);" 1 ";(SF);_ ! 59000 @(9,5);(TP);" ",2;(TP);_ ! 60000 @(15,5);(TP);" ",16;(TP);(SB);_ ! 61000 @(0,6);" 2 ";(SF);_ ! 62000 @(9,6);(TP);" ",2;(TP);_ ! 63000 @(15,6);(TP);" ",16;(TP);(SB);_ ! 64000 @(0,7);" 3 ";(SF);_ ! 65000 @(9,7);(TP);" ",2;(TP);_ ! 66000 @(15,7);(TP);" ",16;(TP);(SB);_ ! 67000 @(0,8);" 4 ";(SF);_ ! 68000 @(9,8);(TP);" ",2;(TP);_ ! 69000 @(15,8);(TP);" ",16;(TP);(SB);_ ! 70000 @(0,9);" 5 ";(SF);_ ! 71000 @(9,9);(TP);" ",2;(TP);_ ! 72000 @(15,9);(TP);" ",16;(TP);(SB);_ ! 73000 @(0,10);" 6 ";(SF);_ ! 74000 @(9,10);(TP);" ",2;(TP);_ ! 75000 @(15,10);(TP);" ",16;(TP);(SB);_ ! 76000 @(0,11);" 7 ";(SF);_ ! 77000 @(9,11);(TP);" ",2;(TP);_ ! 78000 @(15,11);(TP);" ",16;(TP);(SB);_ ! 79000 @(0,12);" 8 ";(SF);_ ! 80000 @(9,12);(TP);" ",2;(TP);_ ! 81000 @(15,12);(TP);" ",16;(TP);(SB);_ ! 82000 @(0,13);" 9 ";(SF);_ ! 83000 @(9,13);(TP);" ",2;(TP);_ ! 84000 @(15,13);(TP);" ",16;(TP);(SB);_ ! 85000 @(0,14);" 10 ";(SF);_ ! 86000 @(9,14);(TP);" ",2;(TP);_ ! 87000 @(15,14);(TP);" ",16;(TP);(SB);_ ! 88000 @(0,15);" 11 ";(SF);_ ! 89000 @(9,15);(TP);" ",2;(TP);_ ! 90000 @(15,15);(TP);" ",16;(TP);(SB);_ ! 91000 @(0,16);" 12 ";(SF);_ ! 92000 @(9,16);(TP);" ",2;(TP);_ ! 93000 @(15,16);(TP);" ",16;(TP);(SB);_ ! 94000 @(0,17);" 13 ";(SF);_ ! 95000 @(9,17);(TP);" ",2;(TP);_ ! 96000 @(15,17);(TP);" ",16;(TP);(SB);_ ! 97000 @(0,18);" 14 ";(SF);_ ! 98000 @(9,18);(TP);" ",2;(TP);_ ! 99000 @(15,18);(TP);" ",16;(TP);(SB);_ ! 100000 @(0,19);" 15 ";(SF);_ ! 101000 @(9,19);(TP);" ",2;(TP);_ ! 102000 @(15,19);(TP);" ",16;(TP);(SB);_ ! 103000 @(0,20);" 16 ";(SF);_ ! 104000 @(9,20);(TP);" ",2;(TP);_ ! 105000 @(15,20);(TP);" ",16;(TP) ! 106000 ! ! 107000 3020 FORMAT _ ! 108000 @(10,2);ZPRG$;_ ! 109000 @(29,2);ZPRGSUB$;_ ! 110000 @(10,5);ZOPT$(1);_ ! 111000 @(16,5);ZOPTDSC$(1);_ ! 112000 @(10,6);ZOPT$(2);_ ! 113000 @(16,6);ZOPTDSC$(2);_ ! 114000 @(10,7);ZOPT$(3);_ ! 115000 @(16,7);ZOPTDSC$(3);_ ! 116000 @(10,8);ZOPT$(4);_ ! 117000 @(16,8);ZOPTDSC$(4);_ ! 118000 @(10,9);ZOPT$(5);_ ! 119000 @(16,9);ZOPTDSC$(5);_ ! 120000 @(10,10);ZOPT$(6);_ ! 121000 @(16,10);ZOPTDSC$(6);_ ! 122000 @(10,11);ZOPT$(7);_ ! 123000 @(16,11);ZOPTDSC$(7);_ ! 124000 @(10,12);ZOPT$(8);_ ! 125000 @(16,12);ZOPTDSC$(8);_ ! 126000 @(10,13);ZOPT$(9);_ ! 127000 @(16,13);ZOPTDSC$(9);_ ! 128000 @(10,14);ZOPT$(10);_ ! 129000 @(16,14);ZOPTDSC$(10);_ ! 130000 @(10,15);ZOPT$(11);_ ! 131000 @(16,15);ZOPTDSC$(11);_ ! 132000 @(10,16);ZOPT$(12);_ ! 133000 @(16,16);ZOPTDSC$(12);_ ! 134000 @(10,17);ZOPT$(13);_ ! 135000 @(16,17);ZOPTDSC$(13);_ ! 136000 @(10,18);ZOPT$(14);_ ! 137000 @(16,18);ZOPTDSC$(14);_ ! 138000 @(10,19);ZOPT$(15);_ ! 139000 @(16,19);ZOPTDSC$(15);_ ! 140000 @(10,20);ZOPT$(16);_ ! 141000 @(16,20);ZOPTDSC$(16);(TP) ! 142000 ! ! 143000 3110 FORMAT _ ! 144000 @(0,22);TLINE$;(BF);_ ! 145000 @(1,23);"Is the above correct? (Yes/N):";_ ! 146000 (TP);" ";(TP);@(32,23) ! 147000 ! ! 148000 3120 FORMAT _ ! 149000 @(0,22);TLINE$;(BF);_ ! 150000 @(1,23);"Confirm delete? (Yes/N):";_ ! 151000 (TP);" ";(TP);@(26,23) ! 152000 ! ! 153000 3130 FORMAT _ ! 154000 @(0,22);TLINE$;(BF);_ ! 155000 @(1,23);"Delete this section? (Yes/N):";_ ! 156000 (TP);" ";(TP);@(31,23) ! 157000 ! ! 158000 !====================================================================! ! 160000 ! EXECUTABLE STATEMENTS ! ! 161000 !====================================================================! ! 162000 ! ! 163000 BEG: CLEAR ! 164000 CALLED = 1 ! 165000 EXIT$ = "QMONITOR" ! 166000 ERRORTO ERRX ! 167000 ESCAPESUB ERRF3 ! 168000 CLOSE ! 169000 BEF2 = 1 ! 170000 BEF3 = 1 ! 171000 OPEN (0) TERM$ ! 172000 OPEN (Z1) "Z1", EXCP=ERR11 ! 173000 USE "(XTERM ",," 2000" ! 173100 Z1K$ = "~" + ZTERM$ ! 173200 READ (Z1,ZTRM) KEY=Z1K$ ! 174000 PRINT (0,C) ! 175000 PROG$ = "OPTION BLOCK MAINTENANCE" ! 176000 USE "(STD ",," 30000" ! 177000 PRINT (0,HDR) ! 178000 PRINT (0,3010) ! 179000 ! ! 180000 5010 X = 9 & Y = 2 ! 181000 PRINT (0,XY) ! 182000 INPUT (0) AN$ ! 183000 IF STRIP(AN$) = "" GOTO DONE ! 184000 ZPRG$ = AN$ + STRING(" ",8) ! 185000 ! ! 186000 5020 X = 29 & Y = 2 ! 187000 PRINT (0,XY) ! 188000 INPUT (0) AN$ ! 189000 IF STRIP(AN$) = "" ! 190000 ZPRGSUB$ = "" ! 191000 GOSUB CLRVAR ! 192000 PRINT (0,3020) ! 193000 GOTO 5010 ! 194000 ENDIF ! 195000 ZPRGSUB$ = AN$ ! 196000 ZOPTK$ = ZPRG$ + ZPRGSUB$ ! 197000 READ (44,ZOPT) KEY=ZOPTK$, EXCP=9010 ! 198000 PRINT (0,3020) ! 199000 ! ! 200000 5030 BP$ = "(FIELD #, Delete, Delete #, Insert #, Section, End)" ! 201000 AFLAG$ = "" ! 202000 PRINT (0,PROMPT) ! 203000 INPUT (0) AN$ ! 204000 PRINT (0,L1) ! 205000 AN$ = STRIP(UCASE(AN$)) ! 206000 IF AN$ = "" ! 207000 ZPRG$ = "" ! 208000 ZPRGSUB$ = "" ! 209000 GOSUB CLRVAR ! 210000 PRINT (0,3020) ! 211000 GOTO 5010 ! 212000 ENDIF ! 213000 IF AN$ = "E" GOTO DONE ! 214000 IF AN$ = "D" !! DELETE SECTION ! 215000 ! ! 216000 5040 PRINT (0,3130) ! 217000 INPUT (0) AN$ ! 218000 PRINT (0,L1) ! 219000 AN$ = STRIP(UCASE(AN$)) ! 220000 IF AN$ = "" AN$ = "Y" ! 221000 IF AN$ = "Y" ! 222000 DELETE (44) KEY=ZOPTK$ ! 223000 ZPRGSUB$ = "" ! 224000 GOSUB CLRVAR ! 225000 PRINT (0,3020) ! 226000 GOTO 5020 ! 227000 ENDIF ! 228000 IF AN$ NE "N" GOTO 5040 ! 229000 ENDIF ! 230000 IF AN$ = "S" GOTO 5020 !! CHANGE SECTIONS ! 231000 IF SUB(AN$,1,1) = "D" !! DELETE LINE NUMBER ! 232000 FLDFR = NUM(SUB(AN$,2,2),ERR) ! 233000 IF FLDFR < 1 OR _ ! 234000 FLDFR > 16 _ ! 235000 GOTO 5030 ! 236000 ! ! 237000 5050 PRINT (0,3120) ! 238000 INPUT (0) AN$ ! 239000 PRINT (0,L1) ! 240000 AN$ = STRIP(UCASE(AN$)) ! 241000 IF AN$ = "" AN$ = "Y" ! 242000 IF AN$ = "Y" ! 243000 FOR BLOOP = FLDFR TO 15 ! 244000 ZOPT$(BLOOP) = ZOPT$(BLOOP+1) ! 245000 ZOPTDSC$(BLOOP) = ZOPTDSC$(BLOOP+1) ! 246000 NEXT BLOOP ! 247000 ZOPT$(16) = "" ! 248000 ZOPTDSC$(16) = "" ! 249000 PRINT (0,3020) ! 250000 WRITE (44,ZOPT) KEY=ZOPTK$ ! 250100 GOTO 5030 ! 251000 ENDIF ! 252000 IF AN$ NE "N" GOTO 5050 ! 253000 ENDIF ! 254000 IF SUB(AN$,1,1) = "I" !! INSERT AT LINE ! 255000 FLDFR = NUM(SUB(AN$,2,2),ERR) ! 256000 IF FLDFR < 1 OR _ ! 257000 FLDFR > 16 _ ! 258000 GOTO 5030 ! 259000 CURR = FLDFR ! 260000 BLOOP = 16 ! 261000 ! ! 262000 5060 IF BLOOP = FLDFR ! 263000 ZOPT$(FLDFR) = "" ! 264000 ZOPTDSC$(FLDFR) = "" ! 265000 PRINT (0,3020) ! 266000 Y = CURR + 4 ! 267000 GOTO 6010 ! 268000 ENDIF ! 269000 ZOPT$(BLOOP) = ZOPT$(BLOOP-1) ! 270000 ZOPTDSC$(BLOOP) = ZOPTDSC$(BLOOP-1) ! 271000 BLOOP = BLOOP - 1 ! 272000 GOTO 5060 ! 273000 ENDIF ! 274000 FLDFR = NUM(AN$,ERR) !! ADD AT FIELD NUMBER ! 275000 IF ERR NE 0 OR _ ! 276000 FLDFR < 1 OR _ ! 277000 FLDFR > 16 _ ! 278000 GOTO 5030 ! 279000 CURR = FLDFR ! 280000 Y = FLDFR + 4 ! 281000 ! ! 282000 6010 X = 10 ! 283000 PRINT (0,XY) ! 284000 INPUT (0) AN$ ! 285000 IF AN$ = "" ! 286000 IF AFLAG$ = "*" ! 287000 IF Y = 5 GOTO 5020 ! 288000 FOR BLOOP = CURR TO 16 ! 289000 ZOPT$(BLOOP) = "" ! 290000 ZOPTDSC$(BLOOP) = "" ! 291000 NEXT BLOOP ! 292000 PRINT (0,3020) ! 293000 GOTO 6020 ! 294000 ENDIF ! 295000 PRINT (0,3020) ! 296000 GOTO 5030 ! 297000 ENDIF ! 298000 X = 16 ! 299000 PRINT (0,XY) ! 300000 INPUT (0) WDESC$ ! 301000 IF WDESC$ = "" GOTO 6010 ! 302000 ZOPT$(CURR) = AN$ ! 303000 ZOPTDSC$(CURR) = WDESC$ ! 304000 IF AFLAG$ = "*" ! 305000 IF CURR = 16 GOTO 6020 ! 306000 Y = Y + 1 ! 307000 CURR = CURR + 1 ! 308000 GOTO 6010 ! 309000 ENDIF ! 310000 ! ! 311000 6020 PRINT (0,3110) ! 312000 INPUT (0) AN$ ! 313000 PRINT (0,L1) ! 314000 AN$ = STRIP(UCASE(AN$)) ! 315000 IF AN$ = "" AN$ = "Y" ! 316000 IF AN$ = "Y" ! 317000 WRITE (44,ZOPT) KEY=ZOPTK$ ! 318000 GOTO 5030 ! 319000 ENDIF ! 320000 IF AN$ NE "N" GOTO 6020 ! 321000 IF AFLAG$ = "*" ! 322000 CURR = 1 ! 323000 Y = 5 ! 324000 ENDIF ! 325000 GOTO 6010 ! 326000 ! ! 327000 CLRVAR: ! 328000 FOR BLOOP = 1 TO 16 ! 329000 ZOPT$(BLOOP) = "" ! 330000 ZOPTDSC$(BLOOP) = "" ! 331000 NEXT BLOOP ! 332000 RETURN ! 333000 ! ! 334000 !====================================================================! ! 335000 ! EXCEPTION STATEMENTS ! ! 336000 !====================================================================! ! 337000 ! ! 338000 9010 IF EXCP NE 32 GOTO ERRX !! NEW PROGRAM or SECTION ! 339000 FOR BLOOP = 1 TO 16 ! 340000 ZOPT$(BLOOP) = "" ! 341000 ZOPTDSC$(BLOOP) = "" ! 342000 NEXT BLOOP ! 343000 PRINT (0,3020) ! 344000 CURR = 1 ! 345000 Y = 5 ! 346000 AFLAG$ = "*" ! 347000 GOTO 6010 ! 348000 ! ! 349000 USE "(STD ",," 40000" ! 350000