1 | ORWDBA4 ; SLC/GU Billing Awareness - Phase II [11/26/04 15:44]
|
---|
2 | ;;3.0;ORDER ENTRY/RESULTS REPORTING;**195**;Dec 17, 1997
|
---|
3 | ;
|
---|
4 | ;Miscellaneous CIDC functions utility.
|
---|
5 | ;
|
---|
6 | ;External References used by this routine
|
---|
7 | ; $$GETS^DIQ DBIA 2056
|
---|
8 | ; GETS^DIQ DBIA 2056
|
---|
9 | ; $$ICDDX^ICDCODE DBIA 3990
|
---|
10 | ; $$TFGBLGUI^ORWDBA1 DBIA none listed
|
---|
11 | ; $$SETDXD^ORWDBA2 DBIA none listed
|
---|
12 | ; $$NOW^XLFDT DBIA 10103
|
---|
13 | ; $$GET^XPAR DBIA 2263
|
---|
14 | ;
|
---|
15 | GETTFCI(Y,ORIEN) ;Get Treatment Factors Clinical Indicators
|
---|
16 | ;Input Variable:
|
---|
17 | ; ORIEN Order Internal Entry Number (array variable)
|
---|
18 | ;Ouput Variable:
|
---|
19 | ; Y Y(AI)=Order_IEN^Treatment_Factors^ICD9^ICD9_Description
|
---|
20 | ; There can be up to 4 ICD9 codes and thier descriptions
|
---|
21 | ; ICD901^DESC01^ICD902^DESC02^ICD903^DESC03^ICD904^DESC04
|
---|
22 | ;Local Variables:
|
---|
23 | ; AI Array Index
|
---|
24 | ; CI Clinical Index
|
---|
25 | ; TF Treatment Factors
|
---|
26 | ; TFCI Treatment Factors Clinical Indicators
|
---|
27 | N AI,CI,CNT,DXS,TF,TFCI
|
---|
28 | S U="^",(CNT,TF)=""
|
---|
29 | F S CNT=$O(ORIEN(CNT)) Q:CNT="" D
|
---|
30 | . S TF=$$GTF(ORIEN(CNT))
|
---|
31 | . S DXS=$$GDCD(ORIEN(CNT))
|
---|
32 | . I TF="NNNNNNN"&(DXS="") Q
|
---|
33 | . S TFCI(CNT)=ORIEN(CNT)_U_TF_$S(DXS="":"",1:U_DXS)
|
---|
34 | M Y=TFCI
|
---|
35 | Q
|
---|
36 | ;
|
---|
37 | GTF(IEN) ;Get Treatment Factors
|
---|
38 | ;Gets the Treatment Factors for the current order converted to the
|
---|
39 | ;format used by the CPRS GUI display.
|
---|
40 | ;
|
---|
41 | ;Input Variable:
|
---|
42 | ; IEN Internal Entry Number
|
---|
43 | ;Local Variables:
|
---|
44 | ; ORTF Order Record Treatment Factors
|
---|
45 | ; OREM Order Record Error Message
|
---|
46 | ; OTF Order Treatment Factors
|
---|
47 | ; (Converted to GUI values and returned)
|
---|
48 | N ORTF,OREM,OTF
|
---|
49 | S OTF=""
|
---|
50 | D GETS^DIQ(100,IEN,"90;91;92;93;94;95;96","I","ORTF","OREM")
|
---|
51 | S OTF=$G(ORTF(100,IEN_",",90,"I"))
|
---|
52 | S OTF=OTF_U_$G(ORTF(100,IEN_",",91,"I"))
|
---|
53 | S OTF=OTF_U_$G(ORTF(100,IEN_",",92,"I"))
|
---|
54 | S OTF=OTF_U_$G(ORTF(100,IEN_",",93,"I"))
|
---|
55 | S OTF=OTF_U_$G(ORTF(100,IEN_",",94,"I"))
|
---|
56 | S OTF=OTF_U_$G(ORTF(100,IEN_",",95,"I"))
|
---|
57 | S OTF=OTF_U_$G(ORTF(100,IEN_",",96,"I"))
|
---|
58 | S OTF=$$TFGBLGUI^ORWDBA1(OTF)
|
---|
59 | I OTF'="NNNNNNN" Q OTF
|
---|
60 | S OTF=""
|
---|
61 | K ORTF,OREM
|
---|
62 | D GETS^DIQ(100,IEN,"51;52;53;54;55;56;57","I","ORTF","OREM")
|
---|
63 | S OTF=$G(ORTF(100,IEN_",",51,"I"))
|
---|
64 | S OTF=OTF_U_$G(ORTF(100,IEN_",",52,"I"))
|
---|
65 | S OTF=OTF_U_$G(ORTF(100,IEN_",",53,"I"))
|
---|
66 | S OTF=OTF_U_$G(ORTF(100,IEN_",",54,"I"))
|
---|
67 | S OTF=OTF_U_$G(ORTF(100,IEN_",",55,"I"))
|
---|
68 | S OTF=OTF_U_$G(ORTF(100,IEN_",",56,"I"))
|
---|
69 | S OTF=OTF_U_$G(ORTF(100,IEN_",",57,"I"))
|
---|
70 | S OTF=$$TFGBLGUI^ORWDBA1(OTF)
|
---|
71 | Q OTF
|
---|
72 | ;
|
---|
73 | GDCD(IEN) ;Get Diagnoses Codes / Description
|
---|
74 | ;Builds and returns a text string delimited by the "^". The text string
|
---|
75 | ;made from the ICD9 codes associated with the current order and thier
|
---|
76 | ;descriptions pulled from the ICD DIAGNOSIS file #80. The string can
|
---|
77 | ;contain up to four diagnoses codes and thier descriptions. The string
|
---|
78 | ;with all four possiable diagnoses codes is formatted:
|
---|
79 | ;ICD901^DESC01^ICD902^DESC02^ICD903^DESC03^ICD904^DESC04
|
---|
80 | ;
|
---|
81 | ;Input Variable:
|
---|
82 | ; IEN
|
---|
83 | ;Local Variables:
|
---|
84 | ; DCD Diagnosis Code Description (retrun variable)
|
---|
85 | ; DXDT Diagnosis Date (either Order date or system date)
|
---|
86 | ; DXD Diagnosis Description
|
---|
87 | ; DXIEN Diagnosis Internal Entry Number
|
---|
88 | ; ICD9 ICD9 code (for GUI display)
|
---|
89 | ; IENS Internale Entry Number Sequence
|
---|
90 | ; (Array index variable for data returned from lookup)
|
---|
91 | ; ORRF Order Record Found (returned data from lookup)
|
---|
92 | ; OREM Order Record Error Message
|
---|
93 | N DCD,DXDT,DXD,DXIEN,ICD9,IENS,ORRF,OREM
|
---|
94 | S DCD=""
|
---|
95 | D GETS^DIQ(100,IEN,".8*;5.1*","I","ORRF","OREM")
|
---|
96 | I $D(ORRF) D
|
---|
97 | . S DXDT=""
|
---|
98 | . I $D(ORRF(100.008)) S DXDT=$G(ORRF(100.008,"1,"_IEN_",",.01,"I"))
|
---|
99 | . I DXDT="" S DXDT=$$NOW^XLFDT
|
---|
100 | . I $D(ORRF(100.051)) D
|
---|
101 | .. S IENS="" F S IENS=$O(ORRF(100.051,IENS)) Q:IENS="" D
|
---|
102 | ... I ORRF(100.051,IENS,.01,"I")="" S DCD=DCD_U Q
|
---|
103 | ... S DXIEN=ORRF(100.051,IENS,.01,"I")
|
---|
104 | ... S ICD9=$$GET1^DIQ(80,DXIEN,.01,"")
|
---|
105 | ... S DXD=$$SETDXD^ORWDBA2($P($$ICDDX^ICDCODE(ICD9,DT),U,4))
|
---|
106 | ... S DCD=$S(DCD="":ICD9_U_DXD,1:DCD_U_ICD9_U_DXD)
|
---|
107 | Q DCD
|
---|
108 | ;
|
---|
109 | GETBAUSR(Y,ORCIEN) ;GUI RPC CALL
|
---|
110 | ;Get Billing Awareness By User parameter value
|
---|
111 | ;Gets and returns the value of the Enabled Billing Awareness By User
|
---|
112 | ;parameter assigned to a provider.
|
---|
113 | ;Input Variable:
|
---|
114 | ; ORCIEN Ordering Clinician's Internal Entry Number
|
---|
115 | ;Output Variable:
|
---|
116 | ; Y Parameter value, 1 if enabled, 0 if disabled
|
---|
117 | S Y=$$GET^XPAR(ORCIEN_";VA(200,","OR BILLING AWARENESS BY USER",1,"Q")
|
---|
118 | Q
|
---|