| [613] | 1 | IBCRHBRA ;ALB/ARH - RATES: UPLOAD RC V1 CPT 2000 CHARGES ; 10-OCT-2000
 | 
|---|
 | 2 |  ;;2.0;INTEGRATED BILLING;**138,169**;21-MAR-94
 | 
|---|
 | 3 |  ;;Per VHA Directive 10-93-142, this routine should not be modified.
 | 
|---|
 | 4 |  ; 
 | 
|---|
 | 5 |  ; add CPT 2000 Replacement Codes to RC v1
 | 
|---|
 | 6 |  ; these are new codes that directly replace codes that have been inactivated, the charges for the old code
 | 
|---|
 | 7 |  ; can be used as the charge for the new code
 | 
|---|
 | 8 |  ;
 | 
|---|
 | 9 | CPT2000 ; add CPT replacement codes to RC charge sets, use the current charge of the CPT they are replacing
 | 
|---|
 | 10 |  N IBI,IBLN,IBOLD,IBNEW,IBITM,IBCI,IBCIN,IBCS,IBCSN,IBCNT,IB2000DT,X,Y,DIC,IBENDDT S IBCNT=0
 | 
|---|
 | 11 |  S IB2000DT=3000201
 | 
|---|
 | 12 |  S IBENDDT=$$VERSEDT^IBCRHBRV(1)
 | 
|---|
 | 13 |  ;
 | 
|---|
 | 14 |  I '$D(ZTQUEUED) W !!,"Adding CPT 2000 Replacement Charges for RC v1 ... "
 | 
|---|
 | 15 |  F IBI=1:1 S IBLN=$P($T(F2000+IBI),";;",2) Q:IBLN=""  I $E(IBLN,1)'=" " D
 | 
|---|
 | 16 |  . ;
 | 
|---|
 | 17 |  . S IBOLD=$P(IBLN,U,1) I IBOLD'?5N Q
 | 
|---|
 | 18 |  . S IBNEW=$P(IBLN,U,2) I IBNEW'?5N Q
 | 
|---|
 | 19 |  . ;
 | 
|---|
 | 20 |  . S IBITM=IBOLD_";ICPT(",IBCI=0 F  S IBCI=$O(^IBA(363.2,"B",IBITM,IBCI)) Q:'IBCI  D
 | 
|---|
 | 21 |  .. ;
 | 
|---|
 | 22 |  .. S IBCIN=$G(^IBA(363.2,+IBCI,0)) I $P(IBCIN,U,3)'=2990901,$P(IBCIN,U,3)'=2981001 Q
 | 
|---|
 | 23 |  .. S IBCS=$P(IBCIN,U,2),IBCSN=$G(^IBE(363.1,+IBCS,0)) I '$$CSRC(IBCS) Q
 | 
|---|
 | 24 |  .. ;
 | 
|---|
 | 25 |  .. D DEL(IBCS,IBNEW,IB2000DT,$P(IBCIN,U,5))
 | 
|---|
 | 26 |  .. I $$EXISTS(IBCS,IBNEW,IB2000DT,$P(IBCIN,U,5)) Q
 | 
|---|
 | 27 |  .. ;
 | 
|---|
 | 28 |  .. I $$ADDCI^IBCREF(IBCS,IBNEW,IB2000DT,$P(IBCIN,U,5),$P(IBCIN,U,6),$P(IBCIN,U,7),IBENDDT) S IBCNT=IBCNT+1
 | 
|---|
 | 29 |  ;
 | 
|---|
 | 30 |  I '$D(ZTQUEUED) W IBCNT," charges added."
 | 
|---|
 | 31 |  Q
 | 
|---|
 | 32 |  ;
 | 
|---|
 | 33 | EXISTS(IBCS,IBITM,IBEFFDT,IBCHG) ; return ifn of charge item if this charge exists
 | 
|---|
 | 34 |  N IBX,IBCI S IBX=0
 | 
|---|
 | 35 |  I +$G(IBCS),+$G(IBITM),+$G(IBEFFDT),+$G(IBCHG) D
 | 
|---|
 | 36 |  . S IBCI=0 F  S IBCI=$O(^IBA(363.2,"AIVDTS"_IBCS,IBITM,-IBEFFDT,IBCI)) Q:'IBCI  D  Q:+IBX
 | 
|---|
 | 37 |  .. I $P($G(^IBA(363.2,+IBCI,0)),U,5)=IBCHG S IBX=IBCI
 | 
|---|
 | 38 |  Q IBX
 | 
|---|
 | 39 |  ;
 | 
|---|
 | 40 | DEL(IBCS,IBITM,IBEFFDT,IBCHG) ; delete any existing charges the site may have added to the charge sets for the New CPT replacement codes
 | 
|---|
 | 41 |  ; the charge to be deleted must be effective before RC v1.1 and it must not be the correct replacement, 
 | 
|---|
 | 42 |  ; ie. delete any v1 charge for the item in a CS that does not match the date/charge passed in
 | 
|---|
 | 43 |  N IBDT,IBCI,IBCIN,IBCNT,X,Y,DIC,DIK,DA S IBCNT=0 I '$G(IBEFFDT)!('$G(IBCHG)) Q
 | 
|---|
 | 44 |  ;
 | 
|---|
 | 45 |  S IBDT="" F  S IBDT=$O(^IBA(363.2,"AIVDTS"_+$G(IBCS),+$G(IBITM),IBDT)) Q:IBDT=""  D
 | 
|---|
 | 46 |  . I -IBDT>3000701 Q
 | 
|---|
 | 47 |  . ;
 | 
|---|
 | 48 |  . S IBCI=0 F  S IBCI=$O(^IBA(363.2,"AIVDTS"_IBCS,IBITM,IBDT,IBCI)) Q:'IBCI  D
 | 
|---|
 | 49 |  .. S IBCIN=$G(^IBA(363.2,+IBCI,0)) I -IBDT=IBEFFDT,IBCHG=$P(IBCIN,U,5) Q
 | 
|---|
 | 50 |  .. ;
 | 
|---|
 | 51 |  .. S DA=IBCI,DIK="^IBA(363.2," D ^DIK K DA,DIK S IBCNT=IBCNT+1
 | 
|---|
 | 52 |  ;
 | 
|---|
 | 53 |  Q
 | 
|---|
 | 54 |  ;
 | 
|---|
 | 55 | CSRC(IBCS) ; return true if the Charge Set is Reasonable Charges and CPT based
 | 
|---|
 | 56 |  N IBX,IBCSN,IBBRN S IBX=0
 | 
|---|
 | 57 |  I +$G(IBCS) S IBCSN=$G(^IBE(363.1,+IBCS,0))
 | 
|---|
 | 58 |  I $G(IBCSN)'="" S IBBRN=$G(^IBE(363.3,+$P(IBCSN,U,2),0))
 | 
|---|
 | 59 |  ;
 | 
|---|
 | 60 |  I $G(IBBRN)'="",$E(IBBRN,1,3)="RC ",$P(IBBRN,U,4)=2 S IBX=1
 | 
|---|
 | 61 |  ;
 | 
|---|
 | 62 |  Q IBX
 | 
|---|
 | 63 |  ;
 | 
|---|
 | 64 |  ;
 | 
|---|
 | 65 | F2000 ; old^new CPTs
 | 
|---|
 | 66 |  ;;32001^32997
 | 
|---|
 | 67 |  ;;56300^49320
 | 
|---|
 | 68 |  ;;56301^58670
 | 
|---|
 | 69 |  ;;56302^58671
 | 
|---|
 | 70 |  ;;56303^58662
 | 
|---|
 | 71 |  ;;56304^58660
 | 
|---|
 | 72 |  ;;56305^49321
 | 
|---|
 | 73 |  ;;56306^49322
 | 
|---|
 | 74 |  ;;56307^58661
 | 
|---|
 | 75 |  ;;56308^58550
 | 
|---|
 | 76 |  ;;56309^58551
 | 
|---|
 | 77 |  ;;56310^44200
 | 
|---|
 | 78 |  ;;56311^38570
 | 
|---|
 | 79 |  ;;56312^38571
 | 
|---|
 | 80 |  ;;56313^38572
 | 
|---|
 | 81 |  ;;56314^49323
 | 
|---|
 | 82 |  ;;56315^44970
 | 
|---|
 | 83 |  ;;56316^49650
 | 
|---|
 | 84 |  ;;56317^49651
 | 
|---|
 | 85 |  ;;56318^54690
 | 
|---|
 | 86 |  ;;56320^55550
 | 
|---|
 | 87 |  ;;56322^43651
 | 
|---|
 | 88 |  ;;56323^43652
 | 
|---|
 | 89 |  ;;56324^47570
 | 
|---|
 | 90 |  ;;56340^47562
 | 
|---|
 | 91 |  ;;56341^47563
 | 
|---|
 | 92 |  ;;56342^47564
 | 
|---|
 | 93 |  ;;56343^58673
 | 
|---|
 | 94 |  ;;56344^58672
 | 
|---|
 | 95 |  ;;56346^43653
 | 
|---|
 | 96 |  ;;56348^44202
 | 
|---|
 | 97 |  ;;56349^43280
 | 
|---|
 | 98 |  ;;56350^58555
 | 
|---|
 | 99 |  ;;56351^58558
 | 
|---|
 | 100 |  ;;56352^58559
 | 
|---|
 | 101 |  ;;56353^58560
 | 
|---|
 | 102 |  ;;56354^58561
 | 
|---|
 | 103 |  ;;56355^58562
 | 
|---|
 | 104 |  ;;56356^58563
 | 
|---|
 | 105 |  ;;56362^47560
 | 
|---|
 | 106 |  ;;56363^47561
 | 
|---|
 | 107 |  ;;64442^64475
 | 
|---|
 | 108 |  ;;64443^64476
 | 
|---|
 | 109 |  ;;80049^80048
 | 
|---|
 | 110 |  ;;80054^80053
 | 
|---|
 | 111 |  ;;80058^80076
 | 
|---|
 | 112 |  ;;80059^80074
 | 
|---|
 | 113 |  ;;
 | 
|---|