1 | CRHD5 ; CAIRO/CLC - MISC ROUTINE FOR CAIRO HAND-OFF TOOL ;20-Mar-2008 13:28;CLC
|
---|
2 | ;;1.0;CRHD;****;Jan 28, 2008;Build 19
|
---|
3 | ;=================================================================
|
---|
4 | SRV(CRHDY) ; RETURN LIST OF SERVICES/SECTIONS
|
---|
5 | N CRHDI,CRHDIEN,CRHDNAME
|
---|
6 | S CRHDI=1,CRHDNAME=""
|
---|
7 | F S CRHDNAME=$O(^DIC(49,"B",CRHDNAME)) Q:CRHDNAME="" S CRHDIEN=$O(^(CRHDNAME,0)) D
|
---|
8 | . S CRHDY(CRHDI)=CRHDIEN_"^"_CRHDNAME,CRHDI=CRHDI+1
|
---|
9 | Q
|
---|
10 | DIV(CRHDY) ; RETURN LIST OF INSTITUTIONS
|
---|
11 | N CRHDI,CRHDIEN,CRHDNAME,CRHDIVST,CRHDINA
|
---|
12 | S CRHDI=1,CRHDNAME=""
|
---|
13 | F S CRHDNAME=$O(^DIC(4,"B",CRHDNAME)) Q:CRHDNAME="" S CRHDIEN=$O(^(CRHDNAME,0)) D
|
---|
14 | .S CRHDINA=$$GET1^DIQ(4,CRHDIEN_",",101,"I")
|
---|
15 | .S CRHDIVST=$$GET1^DIQ(4,CRHDIEN_",",11,"I")
|
---|
16 | .I 'CRHDINA S CRHDY(CRHDI)=CRHDIEN_"^"_CRHDNAME,CRHDI=CRHDI+1
|
---|
17 | Q
|
---|
18 | SET(CRHDENT,CRHDP,CRHDS,CRHDVAL) ;Set the parameter
|
---|
19 | ;D PUT^XPAR("DIV.`583","CRHD DNR ORDER TITLE",2,"Patient DNR Orders")
|
---|
20 | ;CRHDENT=entity
|
---|
21 | ;CRHDP=Parameter name
|
---|
22 | ;CRHDS=Sequence (count)
|
---|
23 | ;CRHDVAL=parameter value
|
---|
24 | N CRHDERR,CRHDFG
|
---|
25 | ;
|
---|
26 | S CRHDFG=1
|
---|
27 | D PUT^XPAR(CRHDENT,CRHDP,+CRHDS,CRHDVAL,.CRHDERR)
|
---|
28 | I CRHDERR>0 S CRHDFG=0
|
---|
29 | Q CRHDFG
|
---|
30 | DEL(CRHDENT,CRHDP,CRHDS) ;Delete a parameter value
|
---|
31 | N CRHDERR,CRHDFG
|
---|
32 | S CRHDFG=1
|
---|
33 | D DEL^XPAR(CRHDENT,CRHDP,CRHDS,.CRHDERR)
|
---|
34 | I CRHDERR>0 S CRHDFG=0
|
---|
35 | Q CRHDFG
|
---|
36 | GET(CRHDRTN,CRHDENT,CRHDP) ;Get parameters from the parameter file
|
---|
37 | D GETLST^XPAR(.CRHDRTN,CRHDENT,CRHDP,"E")
|
---|
38 | Q
|
---|
39 | DELALL(CRHDENT,CRHDP) ;Delete all instances
|
---|
40 | N CRHDERR,CRHDFG
|
---|
41 | S CRHDFG=1
|
---|
42 | D NDEL^XPAR(CRHDENT,CRHDP,.CRHDERR)
|
---|
43 | I CRHDERR>0 S CRHDFG=0
|
---|
44 | Q CRHDFG
|
---|
45 | USERDIV(CRHDRTN,CRHDDUZ) ;
|
---|
46 | K CRHDRTN
|
---|
47 | N CRHDX,CRHDR,CRHDC
|
---|
48 | S CRHDC=0
|
---|
49 | D DIV4^XUSER(.CRHDR,CRHDDUZ)
|
---|
50 | S CRHDX=0
|
---|
51 | F S CRHDX=$O(CRHDR(CRHDX)) Q:'CRHDX!($D(CRHDRTN(1))) D
|
---|
52 | .I CRHDR(CRHDX)=1 S CRHDC=CRHDC+1,CRHDRTN(CRHDC)=CRHDX_"^"_$P($G(^DIC(4,+CRHDX,0)),"^",1)_"^1" K CRHDR(CRHDX)
|
---|
53 | S CRHDX=0
|
---|
54 | F S CRHDX=$O(CRHDR(CRHDX)) Q:'CRHDX D
|
---|
55 | .S CRHDC=CRHDC+1
|
---|
56 | .S CRHDRTN(CRHDC)=CRHDX_"^"_$P($G(^DIC(4,+CRHDX,0)),"^",1)_"^0"
|
---|
57 | Q
|
---|
58 | DELPREF(CRHDRTN,CRHDE) ;delete a preference
|
---|
59 | N Y,X,CRHDE1,CRHDE2,CRHDE3,CRHDE4,CRHDE5,DA,DR,DIE,CRHDL
|
---|
60 | N CRHDPN
|
---|
61 | S CRHDRTN(1)=0
|
---|
62 | S CRHDE1=+CRHDE
|
---|
63 | S CRHDE2=$P(CRHDE,"^",2)
|
---|
64 | S CRHDL=$L(CRHDE,"^")
|
---|
65 | S CRHDE3=$P(CRHDE,"^",CRHDL)
|
---|
66 | S CRHDE4="DIV.`"_$P($P(CRHDE,"^",CRHDL),"-",2)
|
---|
67 | S CRHDE5=CRHDE1_$S(CRHDE3="USR":";VA(200,",CRHDE3="OTL":";OR(100.21,",CRHDE3="DIV":";DIC(4,",CRHDE3="SRV":";DIC(49,",1:"")
|
---|
68 | I CRHDE5'="" S DA=$O(^CRHD(183,"B",CRHDE5,0))
|
---|
69 | I DA D
|
---|
70 | .K ^CRHD(183,DA)
|
---|
71 | .K ^CRHD(183,"B",CRHDE5)
|
---|
72 | .K ^CRHD(183,"AC",+CRHDE5)
|
---|
73 | .;S DIE=183,DR=".01///@" D ^DIE
|
---|
74 | .I '$D(^CRHD(183,"B",CRHDE5)) S CRHDRTN(1)=1
|
---|
75 | .S CRHDENT=CRHDE3_".`"_CRHDE1
|
---|
76 | .I CRHDE3="DIV" S CRHDPN(1)="CRHD DNR ORDERABLE ITEMS",CRHDPN(2)="CRHD DNR ORDER TITLE"
|
---|
77 | .S CRHDX=0
|
---|
78 | .F S CRHDX=$O(CRHDPN(CRHDX)) Q:'CRHDX D
|
---|
79 | ..D GETLST^XPAR(.CRHDOLST,CRHDENT,CRHDPN(CRHDX),"I")
|
---|
80 | ..I $G(CRHDOLST) S CRHDFG=$$DELALL^CRHD5(CRHDENT,CRHDPN(CRHDX)) K CRHDOLST
|
---|
81 | Q
|
---|