| [613] | 1 | MDRPCOU ; HOIFO/DP - Object RPCs (TMDUser) ; [01-09-2003 15:21]
 | 
|---|
 | 2 |  ;;1.0;CLINICAL PROCEDURES;;Apr 01, 2004
 | 
|---|
 | 3 |  ; Integration Agreements:
 | 
|---|
 | 4 |  ; IA# 2263 [Supported] XPAR parameter calls.
 | 
|---|
 | 5 |  ; IA# 2541 [Supported] Call to XUPARAM.
 | 
|---|
 | 6 |  ; IA# 2241 [Supported] Call to XUSRB1.
 | 
|---|
 | 7 |  ; IA# 10045 [Supported] Call to XUSHSHP.
 | 
|---|
 | 8 |  ; IA# 10076 [Supported] Direct read of XUSEC
 | 
|---|
 | 9 |  ; IA# 10097 [Supported] Access to rtn %ZOSV
 | 
|---|
 | 10 |  ;
 | 
|---|
 | 11 | ESIG ; [Procedure] Verify users electronic signature
 | 
|---|
 | 12 |  I $G(DATA)="" D  Q
 | 
|---|
 | 13 |  .S @RESULTS@(0)="-1^Must supply electronic signature code"
 | 
|---|
 | 14 |  S X=$$DECRYP^XUSRB1(DATA)
 | 
|---|
 | 15 |  D HASH^XUSHSHP
 | 
|---|
 | 16 |  I X'=$$GET1^DIQ(200,DUZ_",",20.4,"I") S @RESULTS@(0)="-1^E-Sig Invalid^"
 | 
|---|
 | 17 |  E  S @RESULTS@(0)="1^E-Sig Verifed^"_X
 | 
|---|
 | 18 |  Q
 | 
|---|
 | 19 |  ;
 | 
|---|
 | 20 | GETPROC ; [Procedure] Get procedures access list
 | 
|---|
 | 21 |  NEW MDTMP
 | 
|---|
 | 22 |  S DATA=$G(DATA,DUZ)_";VA(200,"
 | 
|---|
 | 23 |  D GETLST^XPAR(.MDTMP,DATA,"MD PROCEDURE ACCESS","Q")
 | 
|---|
 | 24 |  F X=0:0 S X=$O(MDTMP(X)) Q:'X  D:$P(MDTMP(X),U,2)
 | 
|---|
 | 25 |  .S Y=$O(@RESULTS@(""),-1)+1
 | 
|---|
 | 26 |  .S @RESULTS@(Y)=+MDTMP(X)
 | 
|---|
 | 27 |  S @RESULTS@(0)=+$O(@RESULTS@(""),-1)
 | 
|---|
 | 28 |  Q
 | 
|---|
 | 29 |  ;
 | 
|---|
 | 30 | RPC(RESULTS,OPTION,DATA) ; [Procedure] Main RPC Call
 | 
|---|
 | 31 |  ; Input parameters
 | 
|---|
 | 32 |  ;  1. RESULTS [Literal/Required] No description
 | 
|---|
 | 33 |  ;  2. OPTION [Literal/Required] No description
 | 
|---|
 | 34 |  ;  3. DATA [Literal/Required] No description
 | 
|---|
 | 35 |  ;
 | 
|---|
 | 36 |  ; RPC: [MD TMDUSER]
 | 
|---|
 | 37 |  S RESULTS=$NA(^TMP($J)) K @RESULTS
 | 
|---|
 | 38 |  D:$T(@OPTION)]"" @OPTION
 | 
|---|
 | 39 |  D:'$D(@RESULTS) BADRPC^MDRPCU("MD TMDUSER","MDRPCOU",OPTION)
 | 
|---|
 | 40 |  D CLEAN^DILF
 | 
|---|
 | 41 |  Q
 | 
|---|
 | 42 |  ;
 | 
|---|
 | 43 | SIGNON ; [Procedure] Returns sign-on information after Broker.Connected := True
 | 
|---|
 | 44 |  S @RESULTS@(0)=DUZ
 | 
|---|
 | 45 |  S @RESULTS@(1)=$$GET1^DIQ(200,DUZ_",",.01) ; Name
 | 
|---|
 | 46 |  S @RESULTS@(2)=+$$FIND1^DIC(4.2,"","QX",$$KSP^XUPARAM("WHERE")) ;Domain
 | 
|---|
 | 47 |  S @RESULTS@(3)=$$KSP^XUPARAM("WHERE") ; Domain Name
 | 
|---|
 | 48 |  S @RESULTS@(4)=+$G(DUZ(2)) ; Division IEN
 | 
|---|
 | 49 |  S @RESULTS@(5)=$S(+$G(DUZ(2)):$$GET1^DIQ(4,DUZ(2)_",",.01),1:"UNKNOWN")
 | 
|---|
 | 50 |  S @RESULTS@(6)=$D(^XUSEC("MD MANAGER",DUZ))#2
 | 
|---|
 | 51 |  S @RESULTS@(7)=$$GET1^DIQ(200,DUZ_",",8)
 | 
|---|
 | 52 |  S @RESULTS@(8)="" ; Obsolete Wizard Flag
 | 
|---|
 | 53 |  S @RESULTS@(9)=$G(DTIME,300)
 | 
|---|
 | 54 |  D GETENV^%ZOSV
 | 
|---|
 | 55 |  S @RESULTS@(10)=$P(Y,U,1,3)
 | 
|---|
 | 56 |  Q
 | 
|---|
 | 57 |  ;
 | 
|---|