[613] | 1 | IBCRU2 ;ALB/ARH - RATES: UTILITIES (CI DEFINITIONS) ; 22-MAY-1996
|
---|
| 2 | ;;2.0;INTEGRATED BILLING;**52,106,138,210**;21-MAR-94
|
---|
| 3 | ;;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
| 4 | ;
|
---|
| 5 | ;
|
---|
| 6 | FNDBI(T,N) ; returns IFN of Billing Items entry (363.21) if Name N is found and of Type T
|
---|
| 7 | N X,I,Y S X=0,T=$G(T),T=$S(T["NDC":1,T["MISCELLANEOUS":9,1:T)
|
---|
| 8 | I +T,$G(N)'="" S I=0 F S I=$O(^IBA(363.21,"B",$E(N,1,30),I)) Q:'I S Y=$G(^IBA(363.21,I,0)) I +$P(Y,U,2)=T,$P(Y,U,1)=N S X=I Q
|
---|
| 9 | Q X
|
---|
| 10 | ;
|
---|
| 11 | BIFILE(BI) ; returns the source file reference for a billable item (363.3,.04)
|
---|
| 12 | N IBX S IBX="",BI=+$G(BI)
|
---|
| 13 | I BI=1 S IBX=";DGCR(399.1,^399.1" ; billable bedsections
|
---|
| 14 | I BI=2 S IBX=";ICPT(^81" ; CPT procedures
|
---|
| 15 | I BI=3 S IBX=";IBA(363.21,^363.21" ; NDC numbers
|
---|
| 16 | I BI=4 S IBX=";ICD(^80.2" ; DRG codes
|
---|
| 17 | I BI=9 S IBX=";IBA(363.21,^363.21" ; Miscellaneous
|
---|
| 18 | Q IBX
|
---|
| 19 | ;
|
---|
| 20 | ITPTR(BI,NAME) ; returns pointer to item in source file if found for this billable item type
|
---|
| 21 | N IBX S IBX=0 S BI=+$G(BI),NAME=$G(NAME)
|
---|
| 22 | I BI=1,NAME'="" S IBX=$$MCCRUTL^IBCRU1(NAME,5)
|
---|
| 23 | I BI=2,NAME'="" S IBX=$$CPTIEN^IBACSV(NAME)
|
---|
| 24 | I BI=3,NAME'="" S IBX=$$FNDBI("NDC",NAME)
|
---|
| 25 | I BI=4,NAME'="" S IBX=$$DRGIEN^IBACSV(NAME)
|
---|
| 26 | I BI=9,NAME'="" S IBX=$$FNDBI("MISCELLANEOUS",NAME)
|
---|
| 27 | Q +IBX
|
---|
| 28 | ;
|
---|
| 29 | ITFILE(BI,ITEM,EFFDT) ; returns source item pointer (true) if the item is an active source entry for this billable item type
|
---|
| 30 | N IBX,IBY S IBX=0,BI=+$G(BI),ITEM=+$G(ITEM),EFFDT=$G(EFFDT) I 'EFFDT S EFFDT=DT
|
---|
| 31 | I BI=1,+ITEM S IBY=$G(^DGCR(399.1,ITEM,0)) I IBY'="",+$P(IBY,U,5) S IBX=ITEM
|
---|
| 32 | I BI=2,+ITEM,$$CPTACT^IBACSV(ITEM,EFFDT) S IBX=ITEM
|
---|
| 33 | I BI=3,+ITEM S IBY=$G(^IBA(363.21,ITEM,0)) I IBY'="",+$P(IBY,U,2)=1 S IBX=ITEM
|
---|
| 34 | I BI=4,+ITEM,$$DRGACT^IBACSV(ITEM,EFFDT) S IBX=ITEM
|
---|
| 35 | I BI=9,+ITEM S IBY=$G(^IBA(363.21,ITEM,0)) I IBY'="",+$P(IBY,U,2)=9 S IBX=ITEM
|
---|
| 36 | Q IBX
|
---|
| 37 | ;
|
---|
| 38 | ITBICHK(CS,ITEM,NAME) ; returns source item pointer (true) if the item is a valid active item for the Charge Set
|
---|
| 39 | N IBX,IBBI,IBITEM S IBX=0
|
---|
| 40 | S IBBI=$$CSBI^IBCRU3($G(CS))
|
---|
| 41 | S IBITEM=$G(ITEM) I 'IBITEM,$G(NAME)'="" S IBITEM=$$ITPTR(IBBI,NAME)
|
---|
| 42 | I +IBBI,+IBITEM S IBX=$$ITFILE(+IBBI,+IBITEM)
|
---|
| 43 | Q IBX
|
---|