1 | GMTSXAW3 ; SLC/KER - List Parameters/Allowable 2 ; 08/27/2002
|
---|
2 | ;;2.7;Health Summary;**47,49,56**;Oct 20, 1995
|
---|
3 | ;
|
---|
4 | ; External References in GMTSXAW2
|
---|
5 | ; DBIA 2051 FIND^DIC
|
---|
6 | ; DBIA 2051 $$FIND1^DIC
|
---|
7 | ; DBIA 2051 LIST^DIC
|
---|
8 | ; DBIA 2056 $$GET1^DIQ
|
---|
9 | ; DBIA 2541 $$KSP^XUPARAM
|
---|
10 | ; DBIA 2324 $$CLNAME^USRLM
|
---|
11 | ; DBIA 2324 WHATIS^USRLM
|
---|
12 | ; DBIA 10112 $$PRIM^VASITE
|
---|
13 | ; DBIA 10006 ^DIC
|
---|
14 | ; DBIA 2054 $$CREF^DILF
|
---|
15 | ; DBIA 10076 ^XUSEC("GMTSMGR")
|
---|
16 | ; DBIA 10060 ^VA(200
|
---|
17 | ; DBIA 10114 ^%ZIS(1,
|
---|
18 | ; DBIA 10048 ^DIC(9.4,
|
---|
19 | ; DBIA 10090 ^DIC(4,
|
---|
20 | ; DBIA 10093 ^DIC(49,
|
---|
21 | ; DBIA 3005 ^OR(100.21
|
---|
22 | ; DBIA 1996 ^DIC(4.2,
|
---|
23 | ; DBIA 2324 ^USR(8930.3,
|
---|
24 | ; DBIA 2324 ^USR(8930,
|
---|
25 | ; DBIA 3407 ^XTV(8989.51, Pending
|
---|
26 | ; DBIA 3408 ^XTV(8989.518, Pending
|
---|
27 | ; DBIA 10103 $$DT^XLFDT
|
---|
28 | ;
|
---|
29 | Q
|
---|
30 | SET(GMTSA,GMTSP,GMTSN,GMTSALW,GMTSI,GMTSF) ; Create Array Entry
|
---|
31 | ;
|
---|
32 | ; GMTSA Identifier SYS USR Req
|
---|
33 | ; GMTSP Variable Ptr 97;DIC(4.2, 1118;VA(200, Req
|
---|
34 | ; GMTSN Name System User Req
|
---|
35 | ; .GMTSALW Array Root GMTSALW( Req
|
---|
36 | ; GMTSI Array IEN GMTSALW(GMTSI) Req
|
---|
37 | ; GMTSF Value Flag Include only values Opt
|
---|
38 | ;
|
---|
39 | Q:'$L(GMTSA) Q:'$L(GMTSP) Q:'$L(GMTSN) I +($G(GMTSF))>0 D Q
|
---|
40 | . N GMTSD S GMTSD=";"_$P(GMTSP,";",2)
|
---|
41 | . S GMTSALW("CHK",GMTSP,GMTSD)="" Q:+($G(GMTSF))>1
|
---|
42 | . S GMTSALW("ENT",GMTSA,GMTSP)=""
|
---|
43 | . S GMTSALW("VAL",GMTSP,GMTSA)=""
|
---|
44 | N GMTS2 S GMTSI=+($G(GMTSI)) Q:GMTSI=0
|
---|
45 | S GMTS2=$O(GMTSALW(GMTSI,GMTSA," "),-1)+1
|
---|
46 | S GMTSALW(GMTSI,GMTSA,GMTS2)=GMTSP_"^"_GMTSN
|
---|
47 | S GMTSALW(GMTSI,GMTSA,"VAL",GMTSP,GMTS2)=""
|
---|
48 | S GMTSALW("ENT",GMTSA,GMTSP,GMTSI,GMTS2)=""
|
---|
49 | S GMTSALW("VAL",GMTSP,GMTSI,GMTS2)=GMTSA
|
---|
50 | Q
|
---|
51 | ; Lookups
|
---|
52 | LST(X,Y) ; Default Entities 8989.513 Lookup .01, .02
|
---|
53 | Q:+($G(X))'>0 N GMTSM,GMTSP S GMTSP=+($G(X)) Q:+($G(GMTSP))'>0
|
---|
54 | D LIST^DIC(8989.513,(","_+GMTSP_","),".01;.02","I","*",,,,,.Y,.GMTSM)
|
---|
55 | Q
|
---|
56 | OTL(X,GMTSOTL) ; OR Team List 100.21 Lookup .01
|
---|
57 | N GMTSNM S GMTSNM=$G(X) Q:'$L($G(GMTSNM)) N GMTSM
|
---|
58 | D FIND^DIC(100.21,,".01",,GMTSNM,"*","C",,,"GMTSOTL","GMTSM")
|
---|
59 | Q
|
---|
60 | UCL(X,GMTS) ; User Classes 8930.3 Lookup .01, .02, .03, .04
|
---|
61 | N USRT S X=+($G(X)) Q:X=0 D WHATIS^USRLM(X,"USRT")
|
---|
62 | N GMTSNM,GMTSCT,GMTSI,GMTSIEN,GMTSC,GMTSCLS,GMTSEFF,GMTSEXP,GMTSCLN,GMTSU,GMTSUN
|
---|
63 | S GMTSU=+($G(USRT(0))),GMTSUN=$P($G(USRT(0)),"^",2),GMTSC=$P($G(USRT(0)),"^",3)
|
---|
64 | S GMTSC=0,GMTSI="" F S GMTSI=$O(USRT(GMTSI)) Q:GMTSI="" D
|
---|
65 | . S GMTSIEN=$P($G(USRT(GMTSI)),"^",2) Q:+GMTSIEN=0 S GMTSCLS=$P($G(USRT(GMTSI)),"^",1),GMTSEFF=$P($G(USRT(GMTSI)),"^",4),GMTSEXP=$P($G(USRT(GMTSI)),"^",5),GMTSCLN=$P($G(USRT(GMTSI)),"^",3)
|
---|
66 | . S GMTSC=GMTSC+1,GMTS("ID",GMTSC,.01)=GMTSUN,GMTS("ID",GMTSC,.01,"E")=GMTSU,GMTS("ID",GMTSC,.02)=GMTSCLS,GMTS("ID",GMTSC,.03)=GMTSEFF,GMTS("ID",GMTSC,.04)=GMTSEXP,GMTS("ID",GMTSC,"IEN")=GMTSIEN
|
---|
67 | Q
|
---|
68 | HSD(X) ; HS Definition
|
---|
69 | S X=$$PDI("ORWRP HEALTH SUMMARY TYPE LIST") Q X
|
---|
70 | SI(X) ; System Infor 4.2 Lookup
|
---|
71 | Q $$FIND1^DIC(4.2,"","QX",$$KSP^XUPARAM("WHERE"))
|
---|
72 | ABR(X) ; Abbreviation 8989.518 .02
|
---|
73 | N GMTS S X=$G(X) Q:'$L(X) "XXX"
|
---|
74 | S:X[";" X=$P(X,";",2) S:X'["^" X="^"_X
|
---|
75 | S:$E(X,$L(X))'="("&(X["(")&(X'[",") X=X_"," S X=X_"0"
|
---|
76 | S GMTS=$$CREF^DILF(X) I X'=GMTS,GMTS["0" D Q X
|
---|
77 | . S X=+($P($G(@GMTS),"^",2)) I +X'>0 S X="XXX" Q
|
---|
78 | . S X=$$UP^GMTSXA($$GET1^DIQ(8989.518,(X_","),.02))
|
---|
79 | . S:$L(X)'=3 X="XXX"
|
---|
80 | Q "XXX"
|
---|
81 | ETI(X) ; Entity IEN 8989.518 Lookup
|
---|
82 | Q:$L($G(X))'=3 0 N GMTSM
|
---|
83 | Q $$FIND1^DIC(8989.518,,"CO",$G(X),"C",,.GMTSM)
|
---|
84 | EFN(X) ; Entity File # 8989.518 .001
|
---|
85 | Q $$GET1^DIQ(8989.518,(+($G(X))_","),.001)
|
---|
86 | ENM(X) ; Entity Name 8989.518 .01
|
---|
87 | Q $$GET1^DIQ(8989.518,(+($G(X))_","),.01)
|
---|
88 | EAB(X) ; Entity Abbrv 8989.518 .02
|
---|
89 | Q $$GET1^DIQ(8989.518,(+($G(X))_","),.02)
|
---|
90 | EMC(X) ; Entity Mix Case 8989.518 .03
|
---|
91 | Q $$GET1^DIQ(8989.518,(+($G(X))_","),.03)
|
---|
92 | PDI(X) ; Param Def IEN 8989.51 Lookup
|
---|
93 | S X=$G(X) Q:'$L(X) "" N DIC,DTOUT,DUOUT,Y,GMTSM
|
---|
94 | Q $$FIND1^DIC(8989.51,,"CO",$G(X),.GMTSM)
|
---|
95 | PDN(X) ; Param Def Name 8989.51 .01
|
---|
96 | Q $$GET1^DIQ(8989.51,(+($G(X))_","),.01)
|
---|
97 | UVP(X) ; User Var Ptr 200
|
---|
98 | N GMTS S GMTS=+($G(X)) Q:'$L($$UNM(GMTS)) ""
|
---|
99 | S X=GMTS_";VA(200," Q X
|
---|
100 | USR(X) ; Get User 200 Lookup
|
---|
101 | N DIC,Y,DTOUT,DUOUT,GMTSN,GMTSP S GMTSN=$$UNM(+($G(DUZ))),GMTSP=$G(X),DIC="^VA(200,",DIC(0)="AEMQ",DIC("A")="Select User: "
|
---|
102 | S:$L(GMTSP) DIC("A")=GMTSP S DIC("S")="I $$ACTIVE^XUSER(+($G(Y)))>0" S:$L(GMTSN) DIC("B")=GMTSN D ^DIC S X=+Y
|
---|
103 | Q X
|
---|
104 | UNM(X) ; User Name 200 .01
|
---|
105 | Q $$GET1^DIQ(200,(+($G(X))_","),.01)
|
---|
106 | MGR(X) ; HS Manager
|
---|
107 | Q $S(((+($G(DUZ))>0)&($D(^XUSEC("GMTSMGR",+($G(DUZ)))))):1,1:0)
|
---|
108 | PK(X) ; Package 9.4 Lookup
|
---|
109 | S X=$G(X) Q:'$L(X) "" N DIC,DTOUT,DUOUT,Y,GMTSM
|
---|
110 | Q $$FIND1^DIC(9.4,,"CO",$G(X),"C",,.GMTSM)
|
---|
111 | DEV(X) ; Device Name 3.5 .01
|
---|
112 | Q $$GET1^DIQ(3.5,(+($G(X))_","),.01)
|
---|
113 | DIV(X) ; Division Name 4 .01
|
---|
114 | Q $$GET1^DIQ(4,(+($G(X))_","),.01)
|
---|
115 | UD(X) ; User's Division 200.02 .01
|
---|
116 | N GMTSINST,GMTSDIV,GMTSUSR,GMTSMD,GMTSKS,GMTSKSM,GMTSDS,GMTSDSM,GMTSDZ,GMTSDZM
|
---|
117 | S:+($G(DT))'>0 DT=$$DT^XLFDT S U="^",GMTSUSR=+($G(X))
|
---|
118 | S GMTSKS=$$KSP^XUPARAM("INST"),GMTSKSM=$$GET1^DIQ(4,(+GMTSKS_","),5,"I"),GMTSKSM=$S(GMTSKSM["Y":1,1:0)
|
---|
119 | S GMTSDS=$O(^VA(200,GMTSUSR,2,"AX1",1,0)),GMTSDSM=$$GET1^DIQ(4,(+GMTSDS_","),5,"I"),GMTSDSM=$S(GMTSDSM["Y":1,1:0)
|
---|
120 | S GMTSDZ=+($G(DUZ(2))),GMTSDZM=$$GET1^DIQ(4,(+GMTSDZ_","),5,"I"),GMTSDZM=$S(GMTSDZM["Y":1,1:0)
|
---|
121 | S GMTSMD=GMTSDZM+GMTSDSM+GMTSKSM
|
---|
122 | ; Not a Multi-Divisional Institution
|
---|
123 | I +GMTSMD'>0&(+GMTSKS>0) S X=+GMTSKS_";DIC(4," Q X
|
---|
124 | ; Login Division
|
---|
125 | I +GMTSDZ>0,$D(^DIC(4,+GMTSDZ)) S X=+GMTSDZ_";DIC(4," Q X
|
---|
126 | ; No Login Division
|
---|
127 | I +GMTSDS'>0&(+GMTSDZ'>0)&(+GMTSKS>0) S X=+GMTSKS_";DIC(4," Q X
|
---|
128 | ; Default Division
|
---|
129 | I +GMTSDS>0 S X=+GMTSDS_";DIC(4," Q X
|
---|
130 | Q ""
|
---|
131 | DD(X) ; Division (Default) 200.02 .01
|
---|
132 | Q:+($G(X))'>0 "" K ^TMP("DILIST",$J) D DS(+($G(X)),.Y)
|
---|
133 | N GMTSDD,GMTSI S GMTSDD=""
|
---|
134 | S GMTSI=0 F S GMTSI=$O(^TMP("DILIST",$J,"ID",GMTSI)) Q:+GMTSI=0!($L(GMTSDD)) D
|
---|
135 | . I $G(^TMP("DILIST",$J,"ID",GMTSI,1))=1 S GMTSDD=$G(^TMP("DILIST",$J,"ID",GMTSI,.01))
|
---|
136 | K ^TMP("DILIST",$J) S X=$G(GMTSDD) Q X
|
---|
137 | DS(X,Y) ; Divisions 200.02 Lookup .01, 1
|
---|
138 | Q:+($G(X))'>0 N GMTSM,GMTSP S GMTSP=+($G(X)) Q:+($G(GMTSP))'>0
|
---|
139 | D LIST^DIC(200.02,(","_+GMTSP_","),".01;1","I","*",,,,,.Y,.GMTSM)
|
---|
140 | Q
|
---|
141 | DE(X) ; Division (Primary) 40.8 Lookup .07
|
---|
142 | N PRIM S PRIM=$$PRIM^VASITE S X=$$GET1^DIQ(40.8,(PRIM_","),.07,"I")
|
---|
143 | Q X
|
---|
144 | SYS(X) ; System Name 4.2 .01
|
---|
145 | Q $$GET1^DIQ(4.2,(+($G(X))_","),.01)
|
---|
146 | PKG(X) ; Package Name 9.4 .01
|
---|
147 | Q $$GET1^DIQ(9.4,(+($G(X))_","),.01)
|
---|
148 | SRI(X) ; Service (I) 200 29
|
---|
149 | Q $$GET1^DIQ(200,(+($G(X))_","),29,"I")
|
---|
150 | SRV(X) ; Service Name 49 .01
|
---|
151 | Q $$GET1^DIQ(49,(+($G(X))_","),.01)
|
---|
152 | CLS(X) ; User Class Name 8930 .01
|
---|
153 | Q $$UP^GMTSXA($$CLNAME^USRLM(+($G(X))))
|
---|
154 | SYSV(X) ; System Var Ptr
|
---|
155 | N GMTSYS S GMTSYS=$$KSP^XUPARAM("WHERE") I $L(GMTSYS) D Q:'$L(GMTSYS) ""
|
---|
156 | . N DIC,DTOUT,DUOUT,X,Y S DIC="^DIC(4.2,",X=GMTSYS,DIC(0)="MXO"
|
---|
157 | . D ^DIC S GMTSYS=+Y S:GMTSYS'>0 GMTSYS="" S GMTSYS=$S(+GMTSYS>0:(GMTSYS_";"_$P(DIC,"^",2)),1:"")
|
---|
158 | S X=GMTSYS Q X
|
---|
159 | USRV(X) ; User Var Ptr
|
---|
160 | N GMTSU,GMTSUV S GMTSU=$G(X) I $L($$UNM(+($G(X)))) S X=+($G(X))_";VA(200," Q X
|
---|
161 | N DIC,DTOUT,DUOUT,X,Y S DIC="^VA(200,",X=GMTSU,DIC(0)="MXO" D ^DIC S GMTSU=+Y,GMTSUV=""
|
---|
162 | S:GMTSU'>0 GMTSUV="" S:GMTSU>0 GMTSUV=GMTSU_";"_$P(DIC,"^",2) S X=GMTSUV Q X
|
---|