source: WorldVistAEHR/trunk/r/ORDER_ENTRY_RESULTS_REPORTING-OR-OCX--ORRC--ORRJ/ORWDBA4.m@ 1046

Last change on this file since 1046 was 623, checked in by George Lilly, 15 years ago

revised back to 6/30/08 version

File size: 4.3 KB
Line 
1ORWDBA4 ; 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 ;
15GETTFCI(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 ;
37GTF(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 ;
73GDCD(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 ;
109GETBAUSR(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
Note: See TracBrowser for help on using the repository browser.