[613] | 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
|
---|