| 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**
|
---|