1 | XQOO2 ;LUKE/SEATTLE - Out Of Order Manager Utilities ;06/16/95 14:40
|
---|
2 | ;;8.0;KERNEL;;Jul 10, 1995
|
---|
3 | ;
|
---|
4 | SETS(XQI) ;Show the sets of options in ^XTMP return # in XQI
|
---|
5 | EN ;Option entry doesn't care about XQI
|
---|
6 | N XQ,XQD,XQF,XQFLG,XQM,XQO,XQOO,XQU
|
---|
7 | S (XQD,XQU)="",XQ=0
|
---|
8 | I $O(^XTMP("XQOO",0))="" W !,"There are no defined option sets currently listed in ^XTMP." Q
|
---|
9 | F XQI=1:1 S XQ=$O(^XTMP("XQOO",XQ)) Q:XQ="" D
|
---|
10 | .I '$D(^XTMP("XQOO",XQ,0))#2 D
|
---|
11 | ..W !,XQI_".",?5,"Option set named '",XQ,"' Unknown creator or date of creation!"
|
---|
12 | ..W !?5,*7,"Warning: Incomplete option set named '",XQ,"' with no zeroth node."
|
---|
13 | ..S XQFLG=""
|
---|
14 | ..Q
|
---|
15 | .I $D(XQFLG) K XQFLG Q
|
---|
16 | .S XQMESS=$P(^XTMP("XQOO",XQ,0),U),XQD=$P(^(0),U,2),XQU=$P(^(0),U,3)
|
---|
17 | .W !!,XQI_".",?5,"Option set named '",XQ,"' created on ",XQD," by ",XQU
|
---|
18 | .I $O(^XTMP("XQOO",XQ,0))'="" D
|
---|
19 | ..S XQF=$O(^XTMP("XQOO",XQ,0)),XQO=$O(^XTMP("XQOO",XQ,XQF,0))
|
---|
20 | ..S XQM=$P(^XTMP("XQOO",XQ,0),U),XQOO=""
|
---|
21 | ..I XQF=19,$D(^DIC(19,XQO,0)) S XQOO=$P(^DIC(19,XQO,0),U,3)
|
---|
22 | ..E S:$D(^ORD(101,XQO,0)) XQOO=$P(^ORD(101,XQO,0),U,3)
|
---|
23 | ..I XQOO=XQM W !?5,XQ,"'s options/protocols appear to be Out-Of-Order."
|
---|
24 | ..E W !?5,XQ,"'s options/protocols do not appear to be marked Out-Of-Order."
|
---|
25 | ..Q
|
---|
26 | .Q
|
---|
27 | W !
|
---|
28 | S XQI=XQI-1
|
---|
29 | Q
|
---|
30 | ;
|
---|
31 | BXREF(XQSTART,XQEND) ;List from XQSTART to XQEND in the "B" cross reference.
|
---|
32 | N %,XQI,XQN
|
---|
33 | S:'$D(IOSL)#2 IOSL=24
|
---|
34 | I $L(XQSTART)>1 S %=$E(XQSTART,1,$L(XQSTART)-1)_$C($A($E(XQSTART,$L(XQSTART)))-1)_"z"
|
---|
35 | E S %=XQSTART
|
---|
36 | W @IOF,"This range includes the following options:",!
|
---|
37 | F XQI=1:1 Q:%=XQEND S %=$O(^DIC(19,"B",%)) Q:%=""!($E(%,1,$L(XQEND))]XQEND) S XQN=$O(^(%,0)) W !,%," ",$P(^DIC(19,XQN,0),U,2) D:XQI#(IOSL-3)=0 PAUSE I $D(XQUPAR) K XQUPAR G OUT
|
---|
38 | D:XQI#(IOSL-3)'=0 PAUSE
|
---|
39 | W @IOF,"And the following protocols:",!
|
---|
40 | W !!,XQSTART," ",XQEND
|
---|
41 | S %=XQSTART
|
---|
42 | F XQI=1:1 Q:%=XQEND S %=$O(^ORD(101,"B",%)) Q:%=""!($E(%,1,$L(XQEND))]XQEND) S XQN=$O(^(%,0)) W !,%," ",$P(^ORD(101,XQN,0),U,2) D:XQI#(IOSL-3)=0 PAUSE I $D(XQUPAR) K XQUPAR Q
|
---|
43 | Q
|
---|
44 | ;
|
---|
45 | RANGE(XQS,XQE,XQR) ;Get a range of Options from XQS(tart) to XQE(nd)
|
---|
46 | ;
|
---|
47 | S DIR(0)="Y",DIR("A")="List all options in the Option File",DIR("B")="No" D ^DIR G:$D(DIRUT) OUT1 I Y S XQS="z",XQE="ZZZZZZZZ",XQR=1 G OUT
|
---|
48 | XQS R !?5,"From: ",XQS:DTIME S:'$T XQS=U G:XQS=U OUT1
|
---|
49 | I XQS="?"!($L(XQS)>30)!(XQS=+XQS)!(XQS="") W *7,!?10,"Enter a partial option name, e.g., ""XQ"", or ""^"" to quit." G XQS
|
---|
50 | XQE R !?5,"To: ",XQE:DTIME S:'$T XQE=U G:XQE=U OUT1
|
---|
51 | I XQE="?" W !,"Enter a partial option name, e.g. ""SD"", or ""^"" to quit." G XQE
|
---|
52 | I XQE']XQS W *7,"The ending value preceeds the starting value." G XQS
|
---|
53 | OUT ;Normal exit
|
---|
54 | S XQR=1
|
---|
55 | K DIR
|
---|
56 | Q
|
---|
57 | OUT1 ;Failure exit
|
---|
58 | S (XQR,XQS,XQE)=0
|
---|
59 | K DIR
|
---|
60 | Q
|
---|
61 | ;
|
---|
62 | PAUSE ;Hold screen
|
---|
63 | N XQ
|
---|
64 | R !!,"Hit RETURN to continue, or type ""^"" to quit: ",XQ:DTIME
|
---|
65 | I XQ=U S XQUPAR="" Q
|
---|
66 | E W !
|
---|
67 | Q
|
---|