| [613] | 1 | IBCRBC11 ;ALB/ARH - RATES: BILL CALCULATION BILLABLE EVENTS ;10-OCT-1998
 | 
|---|
 | 2 |  ;;2.0;INTEGRATED BILLING;**106,245,155**;21-MAR-94
 | 
|---|
 | 3 |  ;;Per VHA Directive 10-93-142, this routine should not be modified.
 | 
|---|
 | 4 |  ;
 | 
|---|
 | 5 |  ; continuation of IBCRBC1
 | 
|---|
 | 6 |  ;
 | 
|---|
 | 7 | INPTDRG(IBIFN,RS,CS) ; Determine charges for INPATIENT DRG billable events
 | 
|---|
 | 8 |  ; - the billable events are DRG's, the Transfer DRG of the patient treating specialties movements,
 | 
|---|
 | 9 |  ;   pulled from the PTF record each time the charges are calculated (INPTPTF^IBCRCG)
 | 
|---|
 | 10 |  ; - each day of billable care is calculated separately in case a rate becomes in/active
 | 
|---|
 | 11 |  ; - if bedsection is ICU then allow ICU Charge Set only
 | 
|---|
 | 12 |  ;
 | 
|---|
 | 13 |  N IBX,IBBLITEM,IBCHGMTH,IBEVDT,IBIDRC,IBBS,IBITM,IBTYPE,IBCMPNT,IBSAVE I '$G(IBIFN)!'$G(CS) Q
 | 
|---|
 | 14 |  ;
 | 
|---|
 | 15 |  D INPTPTF^IBCRBG(IBIFN,CS)
 | 
|---|
 | 16 |  ;
 | 
|---|
 | 17 |  S IBTYPE=6,IBCMPNT=$P($G(^IBE(363.1,+CS,0)),U,4),IBX=$$CSBR^IBCRU3(CS),IBBLITEM=$P(IBX,U,4),IBCHGMTH=$P(IBX,U,5)
 | 
|---|
 | 18 |  S IBIDRC=+$G(^DGCR(399,+IBIFN,"MP"))
 | 
|---|
 | 19 |  I 'IBIDRC,$$MCRWNR^IBEFUNC($$CURR^IBCEF2(IBIFN)) S IBIDRC=$$CURR^IBCEF2(IBIFN)
 | 
|---|
 | 20 |  S IBIDRC=$G(^DIC(36,+IBIDRC,0)),IBIDRC=$P(IBIDRC,U,7)
 | 
|---|
 | 21 |  ;
 | 
|---|
 | 22 |  S IBBDIV=$P($G(^DGCR(399,+IBIFN,0)),U,22) ; bill's default division
 | 
|---|
 | 23 |  ;
 | 
|---|
 | 24 |  I IBBLITEM=4,IBCHGMTH=1 D  ; inpt/DRG/per diem
 | 
|---|
 | 25 |  . S IBEVDT="" F  S IBEVDT=$O(^TMP($J,"IBCRC-INDT",IBEVDT)) Q:IBEVDT=""  D
 | 
|---|
 | 26 |  .. ;
 | 
|---|
 | 27 |  .. S IBX=$G(^TMP($J,"IBCRC-INDT",IBEVDT)),IBITM=$P(IBX,U,4),IBBS=$P(IBX,U,2),IBDIV=$P(IBX,U,5) Q:'IBITM
 | 
|---|
 | 28 |  .. ;
 | 
|---|
 | 29 |  .. I '$$CHGICU^IBCRBC2(CS,IBBS) Q  ; check icu charges are applied to icu bedsection
 | 
|---|
 | 30 |  .. ;
 | 
|---|
 | 31 |  .. I $$CSDV^IBCRU3(CS,IBDIV,IBBDIV)<0 Q  ; check division
 | 
|---|
 | 32 |  .. ;
 | 
|---|
 | 33 |  .. S IBSAVE="1^^"_IBDIV_"^"_IBTYPE_"^"_IBITM_"^"_IBCMPNT_"^"_IBBS
 | 
|---|
 | 34 |  .. D BITMCHG^IBCRBC2(RS,CS,IBITM,IBEVDT,1,"","",IBIDRC,IBSAVE)
 | 
|---|
 | 35 |  K ^TMP($J,"IBCRC-INDT")
 | 
|---|
 | 36 |  Q
 | 
|---|
 | 37 |  ;
 | 
|---|
 | 38 | UNASSOC(IBIFN,RS,CS,IBMIARR) ; Determine charges for UNASSOCIATED billable events
 | 
|---|
 | 39 |  ; - the billable event is not associated with any data element on the bill
 | 
|---|
 | 40 |  ; - the item to charge is selected by the user from the list of billing items (363.21)
 | 
|---|
 | 41 |  ; - the items the user selected to add charges to the bill for are passed in in array IBMIARR
 | 
|---|
 | 42 |  ; - if the charge set is limited by region then either the items division or if no item division then the bill's
 | 
|---|
 | 43 |  ;   Default Division must be contained in the sets region
 | 
|---|
 | 44 |  ;
 | 
|---|
 | 45 |  N IBX,IBBLITEM,IBCHGMTH,IBIDRC,IBBDIV,IBI,IBITM,IBEVDT,IBTUNITS,IBDIV,IBRVCD,IBTYPE,IBCMPNT,IBSAVE
 | 
|---|
 | 46 |  I '$G(IBIFN)!'$G(CS)!'$G(IBMIARR) Q
 | 
|---|
 | 47 |  ;
 | 
|---|
 | 48 |  S IBTYPE=9,IBCMPNT=$P($G(^IBE(363.1,+CS,0)),U,4),IBX=$$CSBR^IBCRU3(CS),IBBLITEM=$P(IBX,U,4),IBCHGMTH=$P(IBX,U,5)
 | 
|---|
 | 49 |  S IBIDRC=+$G(^DGCR(399,+IBIFN,"MP"))
 | 
|---|
 | 50 |  I 'IBIDRC,$$MCRWNR^IBEFUNC($$CURR^IBCEF2(IBIFN)) S IBIDRC=$$CURR^IBCEF2(IBIFN)
 | 
|---|
 | 51 |  S IBIDRC=$G(^DIC(36,+IBIDRC,0)),IBIDRC=$P(IBIDRC,U,7)
 | 
|---|
 | 52 |  ;
 | 
|---|
 | 53 |  S IBBDIV=$P($G(^DGCR(399,+IBIFN,0)),U,22) ; bill's default division
 | 
|---|
 | 54 |  ;
 | 
|---|
 | 55 |  I IBBLITEM=9,IBCHGMTH=1 D  ; charge per item
 | 
|---|
 | 56 |  . S IBI=0 F  S IBI=$O(IBMIARR(RS,CS,IBI)) Q:'IBI  D
 | 
|---|
 | 57 |  .. S IBX=IBMIARR(RS,CS,IBI),IBITM=+$P(IBX,U,1),IBEVDT=$P(IBX,U,2)
 | 
|---|
 | 58 |  .. S IBTUNITS=$P(IBX,U,3),IBDIV=$P(IBX,U,4),IBRVCD=$P(IBX,U,5)
 | 
|---|
 | 59 |  .. ;
 | 
|---|
 | 60 |  .. I $$CSDV^IBCRU3(CS,IBDIV,IBBDIV)<0 Q  ; check division
 | 
|---|
 | 61 |  .. ;
 | 
|---|
 | 62 |  .. S IBSAVE=IBTUNITS_"^^"_IBDIV_"^"_IBTYPE_"^"_IBITM_"^"_IBCMPNT
 | 
|---|
 | 63 |  .. D BITMCHG^IBCRBC2(RS,CS,IBITM,IBEVDT,1,"",IBRVCD,IBIDRC,IBSAVE)
 | 
|---|
 | 64 |  Q
 | 
|---|