1 | MDRPCOV ; HOIFO/DP - Object RPCs (TMDParameter) ; [04-15-2003 12:42]
|
---|
2 | ;;1.0;CLINICAL PROCEDURES;;Apr 01, 2004
|
---|
3 | ; Integration Agreements:
|
---|
4 | ; IA# 2263 [Supported] XPAR parameter call.
|
---|
5 | ; IA# 2541 [Supported] Call to XUPARAM.
|
---|
6 | ;
|
---|
7 | DELLST ; [Procedure] Delete list of parameters
|
---|
8 | D NDEL^XPAR(ENT,PAR,.ERR)
|
---|
9 | S:'$G(ERR) @RESULTS@(0)="1^All instances removed"
|
---|
10 | Q
|
---|
11 | ;
|
---|
12 | DELPAR ; [Procedure] Delete single parameter value
|
---|
13 | D DEL^XPAR(ENT,PAR,INST,.ERR)
|
---|
14 | S:'$G(ERR) @RESULTS@(0)="1^Instance deleted"
|
---|
15 | Q
|
---|
16 | ;
|
---|
17 | ENTVAL ; [Procedure] Return value of the entity
|
---|
18 | I ENT="SYS" S ENT=$$KSP^XUPARAM("WHERE")
|
---|
19 | E I ENT="DIV" S ENT=$$GET1^DIQ(4,DUZ(2)_",",.01)
|
---|
20 | E I ENT="USR" S ENT=$$GET1^DIQ(200,DUZ_",",.01)
|
---|
21 | E S ENT=$$GET1^DIQ(+$P(ENT,"(",2),+ENT_",",.01)
|
---|
22 | S @RESULTS@(0)=ENT
|
---|
23 | Q
|
---|
24 | ;
|
---|
25 | GETHDR ; [Procedure] Returns common header format for TMDRecordID
|
---|
26 | S X=$$FIND1^DIC(8989.51,,"QX",PAR)
|
---|
27 | I X S @RESULTS@(0)=X_";8989.51^"_PAR
|
---|
28 | E S @RESULTS@(0)="-1^No such parameter ["_PAR_"]"
|
---|
29 | Q
|
---|
30 | ;
|
---|
31 | GETLST ; [Procedure] Return all instances of a parameter
|
---|
32 | D GETLST^XPAR(.RET,ENT,PAR,"E",.ERR)
|
---|
33 | Q:$G(ERR,0)
|
---|
34 | S TMP="RET"
|
---|
35 | F S TMP=$Q(@TMP) Q:TMP="" D
|
---|
36 | .S @RESULTS@($O(@RESULTS@(""),-1)+1)=@TMP
|
---|
37 | S @RESULTS@(0)=$O(@RESULTS@(""),-1)
|
---|
38 | Q
|
---|
39 | ;
|
---|
40 | GETPAR ; [Procedure] Returns external value of a parameter
|
---|
41 | S @RESULTS@(0)=$$GET^XPAR(ENT,PAR,INST,"E")
|
---|
42 | Q
|
---|
43 | ;
|
---|
44 | GETWP ; [Procedure] Returns WP text for a parameter
|
---|
45 | D GETWP^XPAR(.RET,ENT,PAR,INST,.ERR)
|
---|
46 | Q:$G(ERR,0)
|
---|
47 | S TMP="RET"
|
---|
48 | F S TMP=$Q(@TMP) Q:TMP="" D
|
---|
49 | .S @RESULTS@($O(@RESULTS@(""),-1)+1)=@TMP
|
---|
50 | S @RESULTS@(0)=$O(@RESULTS@(""),-1)_U_INST
|
---|
51 | Q
|
---|
52 | ;
|
---|
53 | LOCK ; [Procedure] Gain exclusive access to the CP Parameters
|
---|
54 | L +(^MDD("CP PARAMETERS")):5 S @RESULTS@(0)=$T
|
---|
55 | Q
|
---|
56 | ;
|
---|
57 | PARLST ; [Procedure] Returns list of all parameters
|
---|
58 | F Y=1:1 Q:$P($T(PARS+Y),";;",2)["**EOD**" D
|
---|
59 | .S @RESULTS@(Y)=$P($T(PARS+Y),";;",2)
|
---|
60 | S @RESULTS@(0)=+$O(@RESULTS@(""),-1)
|
---|
61 | Q
|
---|
62 | ;
|
---|
63 | RPC(RESULTS,OPTION,ENT,PAR,INST,VAL) ; [Procedure] Main RPC Hit Point
|
---|
64 | ; RPC: [MD TMDPARAMETER]
|
---|
65 | ;
|
---|
66 | ; Requires that the parameter name in PAR
|
---|
67 | ; be in the Clinical Procedures namespace.
|
---|
68 | ;
|
---|
69 | ; Input parameters
|
---|
70 | ; 1. RESULTS [Literal/Required] No description
|
---|
71 | ; 2. OPTION [Literal/Required] No description
|
---|
72 | ; 3. ENT [Literal/Required] No description
|
---|
73 | ; 4. PAR [Literal/Required] No description
|
---|
74 | ; 5. INST [Literal/Required] No description
|
---|
75 | ; 6. VAL [Literal/Required] No description
|
---|
76 | ;
|
---|
77 | N ERR,TMP,RET,TXT,IEN,IENS,ROOT,MDD
|
---|
78 | S INST=$G(INST,1)
|
---|
79 | S PAR=$G(PAR,"MD")
|
---|
80 | S RESULTS=$NA(^TMP($J)) K @RESULTS
|
---|
81 | I PAR'?1"MD".E S ^TMP($J,0)="-1^Non Clinical Procedures Parameter" Q
|
---|
82 | D:$T(@OPTION)]"" @OPTION
|
---|
83 | I +$G(ERR) K ^TMP($J,0) S ^(0)="-1^Error: "_(+ERR)_" "_$P(ERR,U,2)
|
---|
84 | D:'$D(^TMP($J)) BADRPC^MDRPCU("MD TMDPARAMETER",$T(+0),OPTION)
|
---|
85 | D CLEAN^DILF
|
---|
86 | Q
|
---|
87 | ;
|
---|
88 | SETLST ; [Procedure] Build list of parameters
|
---|
89 | N MDINS ; Instance Counter
|
---|
90 | D DELLST(ENT,PAR)
|
---|
91 | S MDINS=""
|
---|
92 | F S MDINS=$O(VAL(MDINS)) Q:MDINS="" D
|
---|
93 | .D EN^XPAR(ENT,PAR,MDINS,VAL(MDINS),.ERR)
|
---|
94 | S:'$G(ERR) @RESULTS@(0)="1^List "_PAR_" rebuilt"
|
---|
95 | Q
|
---|
96 | ;
|
---|
97 | SETPAR ; [Procedure] Set single value into a parameter
|
---|
98 | D EN^XPAR(ENT,PAR,INST,VAL,.ERR)
|
---|
99 | S:'$G(ERR) @RESULTS@(0)="1^Parameter updated"
|
---|
100 | Q
|
---|
101 | ;
|
---|
102 | SETWP ; [Procedure] Set WP text into a parameter
|
---|
103 | S TXT=INST,TMP=""
|
---|
104 | F S TMP=$O(VAL(TMP)) Q:TMP="" D
|
---|
105 | .S TXT($O(TXT(""),-1)+1,0)=VAL(TMP)
|
---|
106 | D EN^XPAR(ENT,PAR,INST,.TXT,.ERR)
|
---|
107 | S:'$G(ERR) @RESULTS@(0)="1^WP Text Saved"
|
---|
108 | Q
|
---|
109 | ;
|
---|
110 | UNLOCK ; [Procedure] Relinquish exclusive access to CP Parameters
|
---|
111 | L -(^MDD("CP PARAMETERS")) S @RESULTS@(0)=$T
|
---|
112 | Q
|
---|
113 | ;
|
---|
114 | PARS ; [Data Module] All Parameters
|
---|
115 | ;;1^MD ALLOW EXTERNAL ATTACHMENTS^Allow non-instrument attachments^yes/no^No
|
---|
116 | ;;2^MD CRC BYPASS^Bypass CRC Checking^yes/no^No
|
---|
117 | ;;3^MD CRC VALUES^Clinical Procedures CRC Values^free text^Yes
|
---|
118 | ;;4^MD DAYS FOR INSTRUMENT DATA^Temporary instrument data life (Days)^numeric^No
|
---|
119 | ;;5^MD FILE EXTENSIONS^Imaging File Types^free text^Yes
|
---|
120 | ;;6^MD HFS SCRATCH^VistA Scratch HFS Directory^free text^No
|
---|
121 | ;;7^MD IMAGING XFER^Imaging Network Share^free text^No
|
---|
122 | ;;8^MD OFFLINE MESSAGE^Offline message^word processing^No
|
---|
123 | ;;9^MD ONLINE^Clinical Procedure Online/Offline^yes/no^No
|
---|
124 | ;;10^MD VERSION CHK^Version Compatibility^yes/no^Yes
|
---|
125 | ;;11^MD WEBLINK^Clinical Procedures Home Page^free text^No
|
---|
126 | ;;**EOD**
|
---|