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

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

initial load of WorldVistAEHR

File size: 4.4 KB
Line 
1ORWDBA4 ; SLC/GU Billing Awareness - Phase II [11/26/04 15:44]
2 ;;3.0;ORDER ENTRY/RESULTS REPORTING;**195,243**;Dec 17, 1997;Build 242
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="NNNNNNNN"&(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;98","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=OTF_U_$G(ORTF(100,IEN_",",98,"I"))
59 S OTF=$$TFGBLGUI^ORWDBA1(OTF)
60 I OTF'="NNNNNNNN" Q OTF
61 S OTF=""
62 K ORTF,OREM
63 D GETS^DIQ(100,IEN,"51;52;53;54;55;56;57;58","I","ORTF","OREM")
64 S OTF=$G(ORTF(100,IEN_",",51,"I"))
65 S OTF=OTF_U_$G(ORTF(100,IEN_",",52,"I"))
66 S OTF=OTF_U_$G(ORTF(100,IEN_",",53,"I"))
67 S OTF=OTF_U_$G(ORTF(100,IEN_",",54,"I"))
68 S OTF=OTF_U_$G(ORTF(100,IEN_",",55,"I"))
69 S OTF=OTF_U_$G(ORTF(100,IEN_",",56,"I"))
70 S OTF=OTF_U_$G(ORTF(100,IEN_",",57,"I"))
71 S OTF=OTF_U_$G(ORTF(100,IEN_",",58,"I"))
72 S OTF=$$TFGBLGUI^ORWDBA1(OTF)
73 Q OTF
74 ;
75GDCD(IEN) ;Get Diagnoses Codes / Description
76 ;Builds and returns a text string delimited by the "^". The text string
77 ;made from the ICD9 codes associated with the current order and thier
78 ;descriptions pulled from the ICD DIAGNOSIS file #80. The string can
79 ;contain up to four diagnoses codes and thier descriptions. The string
80 ;with all four possiable diagnoses codes is formatted:
81 ;ICD901^DESC01^ICD902^DESC02^ICD903^DESC03^ICD904^DESC04
82 ;
83 ;Input Variable:
84 ; IEN
85 ;Local Variables:
86 ; DCD Diagnosis Code Description (retrun variable)
87 ; DXDT Diagnosis Date (either Order date or system date)
88 ; DXD Diagnosis Description
89 ; DXIEN Diagnosis Internal Entry Number
90 ; ICD9 ICD9 code (for GUI display)
91 ; IENS Internale Entry Number Sequence
92 ; (Array index variable for data returned from lookup)
93 ; ORRF Order Record Found (returned data from lookup)
94 ; OREM Order Record Error Message
95 N DCD,DXDT,DXD,DXIEN,ICD9,IENS,ORRF,OREM
96 S DCD=""
97 D GETS^DIQ(100,IEN,".8*;5.1*","I","ORRF","OREM")
98 I $D(ORRF) D
99 . S DXDT=""
100 . I $D(ORRF(100.008)) S DXDT=$G(ORRF(100.008,"1,"_IEN_",",.01,"I"))
101 . I DXDT="" S DXDT=$$NOW^XLFDT
102 . I $D(ORRF(100.051)) D
103 .. S IENS="" F S IENS=$O(ORRF(100.051,IENS)) Q:IENS="" D
104 ... I ORRF(100.051,IENS,.01,"I")="" S DCD=DCD_U Q
105 ... S DXIEN=ORRF(100.051,IENS,.01,"I")
106 ... S ICD9=$$GET1^DIQ(80,DXIEN,.01,"")
107 ... S DXD=$$SETDXD^ORWDBA2($P($$ICDDX^ICDCODE(ICD9,DT),U,4))
108 ... S DCD=$S(DCD="":ICD9_U_DXD,1:DCD_U_ICD9_U_DXD)
109 Q DCD
110 ;
111GETBAUSR(Y,ORCIEN) ;GUI RPC CALL
112 ;Get Billing Awareness By User parameter value
113 ;Gets and returns the value of the Enabled Billing Awareness By User
114 ;parameter assigned to a provider.
115 ;Input Variable:
116 ; ORCIEN Ordering Clinician's Internal Entry Number
117 ;Output Variable:
118 ; Y Parameter value, 1 if enabled, 0 if disabled
119 S Y=$$GET^XPAR(ORCIEN_";VA(200,","OR BILLING AWARENESS BY USER",1,"Q")
120 Q
Note: See TracBrowser for help on using the repository browser.