GMVPAR ; HOIFO/DP - XPARameter RPC ; Mar 22, 2023@08:09:59
;;5.0;GEN. MED. REC. - VITALS;**3,40**;Oct 31, 2002;Build 51
; Reference to ^XPAR in ICR #2263
; Reference to ^XUPARAM in ICR #2541
; Reference to ^VA(200 in ICR #10060
; Reference to ^DIC(4 in ICR #10090
; Reference to CLEAN^DILF in ICR #2054
; Reference to GET^DIQ in ICR #2056
;
; This routine supports/provides the following ICR:
; #4367 - GMV PARAMETER RPC is called at RPC (private)
;
DELPAR ; [Procedure] Delete single parameter value
D DEL^XPAR(ENT,PAR,INST,.ERR)
S:'$G(ERR) @RESULTS@(0)="1^Instance deleted"
Q
;
ENTVAL ; [Procedure] Return value of the entity
I ENT="SYS" S ENT=$$KSP^XUPARAM("WHERE")
E I ENT="DIV" S ENT=$$GET1^DIQ(4,DUZ(2)_",",.01)
E I ENT="USR" S ENT=$$GET1^DIQ(200,DUZ_",",.01)
E S ENT=$$GET1^DIQ(+$P(ENT,"(",2),+ENT_",",.01)
S @RESULTS@(0)=ENT
Q
GETLST ; [Procedure] Return all instances of a parameter
D GETLST^XPAR(.RET,ENT,PAR,"E",.ERR)
Q:$G(ERR,0)
S TMP="RET"
F S TMP=$Q(@TMP) Q:TMP="" D
.S @RESULTS@($O(@RESULTS@(""),-1)+1)=@TMP
S @RESULTS@(0)=$O(@RESULTS@(""),-1)
Q
;
GETPAR ; [Procedure] Returns external value of a parameter
S @RESULTS@(0)=$$GET^XPAR(ENT,PAR,INST,"E")
Q
;
RPC(RESULTS,OPTION,ENT,PAR,INST,VAL) ; [Procedure] Main RPC Hit Point
; RPC: [GMV PARAMETER]
;
; Requires that the parameter name in PAR
; be in the GMV namespace.
;
; Input parameters
; 1. RESULTS [Literal/Required] No description
; 2. OPTION [Literal/Required] No description
; 3. ENT [Literal/Required] No description
; 4. PAR [Literal/Required] No description
; 5. INST [Literal/Required] No description
; 6. VAL [Literal/Required] No description
;
N ERR,TMP,RET,TXT,IEN,IENS,ROOT
S INST=$G(INST,1)
S PAR=$G(PAR,"GMV")
S RESULTS=$NA(^TMP($J)) K @RESULTS
I PAR'?1"GMV".E S ^TMP($J,0)="-1^Non Vitals Measurements Parameter" Q
D:$T(@OPTION)]"" @OPTION
I +$G(ERR) K @RESULTS S @RESULTS@(0)="-1^Error: "_(+ERR)_" "_$P(ERR,U,2)
I '$D(^TMP($J)) S @RESULTS@(0)="-1^No date returned"
D CLEAN^DILF
Q
SETPAR ; [Procedure] Set single value into a parameter
I PAR="GMV WEBLINK",VAL="" D Q
. D DEL^XPAR(ENT,PAR,INST,.ERR)
. I '$G(ERR) S @RESULTS@(0)="1^Instance deleted"
D EN^XPAR(ENT,PAR,INST,VAL,.ERR)
S:'$G(ERR) @RESULTS@(0)="1^Parameter updated"
Q
SETLST ; [Procedure] Set parameter from list
N GMVINS ; Instance Counter
S GMVINS=""
F S GMVINS=$O(VAL(GMVINS)) Q:GMVINS="" D
.D EN^XPAR(ENT,PAR,$P(VAL(GMVINS),U,1),$P(VAL(GMVINS),U,2),.ERR)
S:'$G(ERR) @RESULTS@(0)="1^List "_PAR_" updated"
Q
--- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HGMVPAR 2610 printed Sep 17, 2026@20:44:50 Page 2
GMVPAR ; HOIFO/DP - XPARameter RPC ; Mar 22, 2023@08:09:59
+1 ;;5.0;GEN. MED. REC. - VITALS;**3,40**;Oct 31, 2002;Build 51
+2 ; Reference to ^XPAR in ICR #2263
+3 ; Reference to ^XUPARAM in ICR #2541
+4 ; Reference to ^VA(200 in ICR #10060
+5 ; Reference to ^DIC(4 in ICR #10090
+6 ; Reference to CLEAN^DILF in ICR #2054
+7 ; Reference to GET^DIQ in ICR #2056
+8 ;
+9 ; This routine supports/provides the following ICR:
+10 ; #4367 - GMV PARAMETER RPC is called at RPC (private)
+11 ;
DELPAR ; [Procedure] Delete single parameter value
+1 DO DEL^XPAR(ENT,PAR,INST,.ERR)
+2 if '$GET(ERR)
SET @RESULTS@(0)="1^Instance deleted"
+3 QUIT
+4 ;
ENTVAL ; [Procedure] Return value of the entity
+1 IF ENT="SYS"
SET ENT=$$KSP^XUPARAM("WHERE")
+2 IF '$TEST
IF ENT="DIV"
SET ENT=$$GET1^DIQ(4,DUZ(2)_",",.01)
+3 IF '$TEST
IF ENT="USR"
SET ENT=$$GET1^DIQ(200,DUZ_",",.01)
+4 IF '$TEST
SET ENT=$$GET1^DIQ(+$PIECE(ENT,"(",2),+ENT_",",.01)
+5 SET @RESULTS@(0)=ENT
+6 QUIT
GETLST ; [Procedure] Return all instances of a parameter
+1 DO GETLST^XPAR(.RET,ENT,PAR,"E",.ERR)
+2 if $GET(ERR,0)
QUIT
+3 SET TMP="RET"
+4 FOR
SET TMP=$QUERY(@TMP)
if TMP=""
QUIT
Begin DoDot:1
+5 SET @RESULTS@($ORDER(@RESULTS@(""),-1)+1)=@TMP
End DoDot:1
+6 SET @RESULTS@(0)=$ORDER(@RESULTS@(""),-1)
+7 QUIT
+8 ;
GETPAR ; [Procedure] Returns external value of a parameter
+1 SET @RESULTS@(0)=$$GET^XPAR(ENT,PAR,INST,"E")
+2 QUIT
+3 ;
RPC(RESULTS,OPTION,ENT,PAR,INST,VAL) ; [Procedure] Main RPC Hit Point
+1 ; RPC: [GMV PARAMETER]
+2 ;
+3 ; Requires that the parameter name in PAR
+4 ; be in the GMV namespace.
+5 ;
+6 ; Input parameters
+7 ; 1. RESULTS [Literal/Required] No description
+8 ; 2. OPTION [Literal/Required] No description
+9 ; 3. ENT [Literal/Required] No description
+10 ; 4. PAR [Literal/Required] No description
+11 ; 5. INST [Literal/Required] No description
+12 ; 6. VAL [Literal/Required] No description
+13 ;
+14 NEW ERR,TMP,RET,TXT,IEN,IENS,ROOT
+15 SET INST=$GET(INST,1)
+16 SET PAR=$GET(PAR,"GMV")
+17 SET RESULTS=$NAME(^TMP($JOB))
KILL @RESULTS
+18 IF PAR'?1"GMV".E
SET ^TMP($JOB,0)="-1^Non Vitals Measurements Parameter"
QUIT
+19 if $TEXT(@OPTION)]""
DO @OPTION
+20 IF +$GET(ERR)
KILL @RESULTS
SET @RESULTS@(0)="-1^Error: "_(+ERR)_" "_$PIECE(ERR,U,2)
+21 IF '$DATA(^TMP($JOB))
SET @RESULTS@(0)="-1^No date returned"
+22 DO CLEAN^DILF
+23 QUIT
SETPAR ; [Procedure] Set single value into a parameter
+1 IF PAR="GMV WEBLINK"
IF VAL=""
Begin DoDot:1
+2 DO DEL^XPAR(ENT,PAR,INST,.ERR)
+3 IF '$GET(ERR)
SET @RESULTS@(0)="1^Instance deleted"
End DoDot:1
QUIT
+4 DO EN^XPAR(ENT,PAR,INST,VAL,.ERR)
+5 if '$GET(ERR)
SET @RESULTS@(0)="1^Parameter updated"
+6 QUIT
SETLST ; [Procedure] Set parameter from list
+1 ; Instance Counter
NEW GMVINS
+2 SET GMVINS=""
+3 FOR
SET GMVINS=$ORDER(VAL(GMVINS))
if GMVINS=""
QUIT
Begin DoDot:1
+4 DO EN^XPAR(ENT,PAR,$PIECE(VAL(GMVINS),U,1),$PIECE(VAL(GMVINS),U,2),.ERR)
End DoDot:1
+5 if '$GET(ERR)
SET @RESULTS@(0)="1^List "_PAR_" updated"
+6 QUIT