- Timestamp:
- Dec 4, 2009, 12:11:15 AM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
WorldVistAEHR/trunk/r/ORDER_ENTRY_RESULTS_REPORTING-OR-OCX--ORRC--ORRJ/ORWDBA4.m
r613 r623 1 ORWDBA4 ; 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 ; 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="NNNNNNNN"&(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;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 ; 75 GDCD(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 ; 111 GETBAUSR(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 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
Note:
See TracChangeset
for help on using the changeset viewer.