1 | XQTOC ;SEA/MJM - Time Out/Continue/Jump Start ;05/31/2001 10:57
|
---|
2 | ;;8.0;KERNEL;**20,157**;Jul 10, 1995
|
---|
3 | ;
|
---|
4 | S ^XUTL("XQ",$J,1)=XQY_XQPSM_U_XQY0,^("T")=1
|
---|
5 | Q:XQJS=0
|
---|
6 | S %=^VA(200,DUZ,202.1) K ^(202.1) S $P(XQJS,U,2)=%,XQY=+%,XQPSM=$P(%,XQY,2,99),XQDIC=$S(XQPSM[",":$P(XQPSM,",",2),1:XQPSM)
|
---|
7 | I '$D(^XUTL("XQO",XQDIC,"^",XQY)) D NOGO Q
|
---|
8 | D
|
---|
9 | .N %
|
---|
10 | .S %=$G(^XUTL("XQO",XQDIC,"^",XQY))
|
---|
11 | .I %="" S %=$G(^DIC(19,"AXQ",XQDIC,"^",XQY))
|
---|
12 | .I %]"" S XQOPTN=$P(%,"^",1,99)
|
---|
13 | .E D NOGO S XQFAIL=""
|
---|
14 | .Q
|
---|
15 | I $D(XQFAIL) K XQFAIL Q
|
---|
16 | ;
|
---|
17 | W !!,"You were last executing the '",$P(XQOPTN,U,3),"' menu option."
|
---|
18 | ASK W !,"Do you wish to resume" S %=1 D YN^DICN I '% W !!,"If you wish to continue at the last option you were executing, enter 'Y',",! G ASK
|
---|
19 | I %=1
|
---|
20 | E D NOGO Q
|
---|
21 | ;
|
---|
22 | ;S XQY0=$P(^XUTL("XQO",XQDIC,"^",XQY),U,2,99)
|
---|
23 | D
|
---|
24 | .N %
|
---|
25 | .S %=$G(^XUTL("XQO",XQDIC,"^",XQY))
|
---|
26 | .I %="" S %=$G(^DIC(19,"AXQ",XQDIC,"^",XQY))
|
---|
27 | .I %]"" S XQY0=$P(%,"^",2,99)
|
---|
28 | .E D NOGO S XQFAIL=""
|
---|
29 | .Q
|
---|
30 | I $D(XQFAIL) K XQFAIL Q
|
---|
31 | ;
|
---|
32 | I $D(^XUTL("XQO",XQDIC,"^",XQY,0)) D
|
---|
33 | .S XQ=^(0)
|
---|
34 | .F XQI=1:1:XQ D
|
---|
35 | ..N %
|
---|
36 | ..S %=$G(^XUTL("XQO",XQDIC,"^",XQY,0,XQI))
|
---|
37 | ..I %="" S %=$G(^DIC(19,"AXQ",XQDIC,"^",XQY,0,XQI))
|
---|
38 | ..I %]"" S XQ(XQI)=% ;$P(^XUTL("XQO",XQDIC,"^",XQY,0,XQI),U)
|
---|
39 | ..Q
|
---|
40 | .Q
|
---|
41 | E S XQ=0
|
---|
42 | Q
|
---|
43 | ;
|
---|
44 | SET ;Set up variables to GO JUMP^XQ72. Enter from ASK1+1^XQ
|
---|
45 | S %=^XUTL("XQ",$J,1),XQSV=+%_U_+%_U_$P(%,U,2,99)
|
---|
46 | K XQJS
|
---|
47 | Q
|
---|
48 | ;
|
---|
49 | LOOK ;Look up the Jump Start Entry
|
---|
50 | F Q:XQUR'[U S XQUR=$P(XQUR,U,2)
|
---|
51 | I '$L(XQUR) D NOGO Q
|
---|
52 | D S^XQ75 I 'XQY D NOGO Q
|
---|
53 | Q
|
---|
54 | ;
|
---|
55 | NOGO ;Continue fails: reset to primary menu
|
---|
56 | S XQY=^XUTL("XQ",$J,"XQM"),XQA3="",XQA=0 K XQCON,XQRE,XQJS,XQUR,XQOPTN
|
---|
57 | D S1^XQCHK ; Reconstruct XQY0
|
---|
58 | S $P(^XUTL("XQ",$J,0),U,3)=$P(^(0),U,3)_", NOGO"
|
---|
59 | Q
|
---|
60 | ;
|
---|
61 | ;
|
---|
62 | CON ;Continue option logic. Enter from ASK^XQ on timeout.
|
---|
63 | W !!,"Do you want to halt and continue with this option later? YES// " R XQUR:20 S:(XQUR="")!('$T) XQUR="Y"
|
---|
64 | I "YyNn"'[$E(XQUR,1) W !!," If you enter 'Y' or 'RETURN' you will halt and continue here next time",!," you logon to the computer.",!," If you enter 'N' you will resume processing where you were." G CON
|
---|
65 | I "Nn"[$E(XQUR,1) W ! S XQUR=0,Y=^XUTL("XQ",$J,"T"),Y=^(Y),XQY0=$P(Y,U,2,99),XQPSM=$P(Y,U,1),(XQY,XQDIC)=+XQPSM,XQPSM=$P(XQPSM,XQY,2,3),XQAA="Select "_$P(XQY0,U,2)_" Option: " G ASK^XQ
|
---|
66 | S X=^XUTL("XQ",$J,^XUTL("XQ",$J,"T")),Y=^("XQM") I (+X'=+Y) S XQM="P"_+Y S XQPSM=$S($D(^XUTL("XQO",XQM,"^",+X)):XQM,$D(^XUTL("XQO","PXU","^",+X)):"PXU",1:"") D:XQPSM="" SS S:XQPSM'="" ^VA(200,DUZ,202.1)=+X_XQPSM
|
---|
67 | S X=$P($H,",",2),X=(X>41400&(X<46800))
|
---|
68 | W !!,$P("Great^OK^All right^Well certainly^Fine","^",$R(5)+1),". ",$P("See you later.^I'll be ready when you are.^Hurry back!^Have a nice lunch.","^",$R(3)+X+1)
|
---|
69 | G H^XUS
|
---|
70 | ;
|
---|
71 | SS ;Search Secondaries for a particular option.
|
---|
72 | Q:'$D(^VA(200,DUZ,203,0)) Q:$P(^VA(200,DUZ,203,0),U,4)<1
|
---|
73 | S Y=0 F XQI=1:1 Q:XQPSM'="" S Y=$O(^VA(200,DUZ,203,Y)) Q:Y'>0 S %=+^(Y,0) I $D(^XUTL("XQO","P"_%,"^",+X)) S XQPSM="U"_DUZ_",P"_%
|
---|
74 | Q
|
---|