| 1 | IBEPTC3 ;ALB/ARH - TP FLAG ALL CLINICS ; 3/26/96
 | 
|---|
| 2 |  ;;Version 2.0 ; INTEGRATED BILLING ;**55**; 21-MAR-94
 | 
|---|
| 3 |  ;;Per VHA Directive 10-93-142, this routine should not be modified.
 | 
|---|
| 4 |  ;
 | 
|---|
| 5 |  W @IOF,!,"FLAG ALL CLINICS FOR THE THIRD PARTY AUTO BILLER:"
 | 
|---|
| 6 |  W !!,"I -  IGNORED"
 | 
|---|
| 7 |  W !,"     Stops the auto biller from creating bills for all Clinics."
 | 
|---|
| 8 |  W !,"     This should only be used if the outpatient auto biller is turned on."
 | 
|---|
| 9 |  W !,"     After using this option, individual or a group of clinics can be set"
 | 
|---|
| 10 |  W !,"     to be auto billed resulting in a small number of clinics being auto billed."
 | 
|---|
| 11 |  W !!,"B -  BILLED"
 | 
|---|
| 12 |  W !,"     Resets all clinics to be billed by the auto biller."
 | 
|---|
| 13 |  W !!,"This option does not change a clinics billable status, only whether or not"
 | 
|---|
| 14 |  W !,"all billable clinics are processed by the auto biller."
 | 
|---|
| 15 |  ;
 | 
|---|
| 16 |  S DIR("A")="Set ALL Clinics to be ignored or billed by the Third Party auto biller"
 | 
|---|
| 17 |  S DIR(0)="SO^I:IGNORED;B:BILLED",DIR("?")="^D HACL^IBEPTC3" D ^DIR K DIR I $D(DIRUT)!($D(DUOUT)) G EX
 | 
|---|
| 18 |  ;
 | 
|---|
| 19 |  S IBOPT=Y W !!,"All clinics will be set as ",$S(IBOPT="I":"NON-",1:""),"auto billable Clinics."
 | 
|---|
| 20 |  ;
 | 
|---|
| 21 |  S DIR(0)="YO",DIR("A")="Do you want to continue" D ^DIR K DIR I 'Y!($D(DIRUT))!($D(DUOUT)) G EX
 | 
|---|
| 22 |  I IBOPT="I" D NBCLIN G EX
 | 
|---|
| 23 |  I IBOPT="B" D ABCLIN G EX
 | 
|---|
| 24 | EX K IBOPT,DIR,Y
 | 
|---|
| 25 |  Q
 | 
|---|
| 26 |  ;
 | 
|---|
| 27 | NBCLIN ; set all clinics as non-auto billed:
 | 
|---|
| 28 |  ; - if the most recent entry sets the clinic to non-billable or non-auto billed then no change
 | 
|---|
| 29 |  ; - if the most recent entry sets the clinic to auto billed this entry is reset to not auto bill
 | 
|---|
| 30 |  ; - otherwise adds a new entry for each clinic, set to not auto bill
 | 
|---|
| 31 |  N IBX,IBY,IBDT,IBCNT,IBCL,IBCLN,IBNABCL,X,Y,DIC,DIE,DA,DR
 | 
|---|
| 32 |  S (IBCNT,IBCL)=0 F  S IBCL=$O(^SC(IBCL)) Q:'IBCL  D
 | 
|---|
| 33 |  . S IBCLN=$G(^SC(IBCL,0)) I $P(IBCLN,U,3)'="C" Q
 | 
|---|
| 34 |  . S IBNABCL=$$FN(IBCL,"") I $P(IBNABCL,U,2)!($P(IBNABCL,U,3)) Q
 | 
|---|
| 35 |  . I 'IBNABCL K DO,DA S DLAYGO=352.4,DIC="^IBE(352.4,",DIC(0)="L",X=+IBCL,DIC("DR")=".02////"_DT_";.04////2" D FILE^DICN K DLAYGO S IBNABCL=Y
 | 
|---|
| 36 |  . I +IBNABCL S DIE="^IBE(352.4,",DA=+IBNABCL,DR=".06////1" D ^DIE K DIC,X,DIE,DA,DR
 | 
|---|
| 37 |  . S IBCNT=IBCNT+1 I '(IBCNT#5) W "."
 | 
|---|
| 38 |  W !," done."
 | 
|---|
| 39 |  Q
 | 
|---|
| 40 |  ;
 | 
|---|
| 41 | ABCLIN ; set all billable clinics to auto billed:
 | 
|---|
| 42 |  ; - deletes all entries flagging a clinic for the auto biller
 | 
|---|
| 43 |  ; - except those changing a clinic from non-billable to billable, these all are set to billable and auto billed
 | 
|---|
| 44 |  N IBX,IBY,IBCNT,IBCL,IBDT,IBNEXT,X,Y,DIC,DIE,DA,DR
 | 
|---|
| 45 |  S (IBCNT,IBCL)=0 F  S IBCL=$O(^IBE(352.4,"AIVDTT2",IBCL)) Q:'IBCL  D
 | 
|---|
| 46 |  . S IBDT="" F  S IBDT=$O(^IBE(352.4,"AIVDTT2",IBCL,IBDT)) Q:IBDT=""  D
 | 
|---|
| 47 |  .. S IBX=0 F  S IBX=$O(^IBE(352.4,"AIVDTT2",IBCL,IBDT,IBX)) Q:'IBX  D
 | 
|---|
| 48 |  ... S IBY=$G(^IBE(352.4,IBX,0)) Q:+$P(IBY,U,5)
 | 
|---|
| 49 |  ... S IBNEXT=$$FN(IBCL,IBDT) I $P(IBNEXT,U,2) D  Q
 | 
|---|
| 50 |  .... I $P(IBY,U,6) S DIE="^IBE(352.4,",DA=+IBX,DR=".06////0" D ^DIE K DIC,X,DIE,DA,DR
 | 
|---|
| 51 |  ... S DIK="^IBE(352.4,",DA=+IBX D ^DIK K DIK
 | 
|---|
| 52 |  ... S IBCNT=IBCNT+1 I '(IBCNT#5) W "."
 | 
|---|
| 53 |  W !," done."
 | 
|---|
| 54 |  Q
 | 
|---|
| 55 | FN(IBCL,IBDT) ; find next oldest entry for clinic
 | 
|---|
| 56 |  N IBX,IBY S (IBY,IBX)=0,IBCL=+$G(IBCL),IBDT=$G(IBDT)
 | 
|---|
| 57 |  S IBDT=$O(^IBE(352.4,"AIVDTT2",IBCL,IBDT))
 | 
|---|
| 58 |  I IBDT'="" S IBX=$O(^IBE(352.4,"AIVDTT2",IBCL,IBDT,0))
 | 
|---|
| 59 |  I +IBX S IBY=$G(^IBE(352.4,IBX,0)),IBY=IBX_U_$P(IBY,U,5)_U_$P(IBY,U,6)
 | 
|---|
| 60 |  Q IBY
 | 
|---|
| 61 |  ;
 | 
|---|
| 62 | HACL ; help fo All Clinics
 | 
|---|
| 63 |  W !,"Enter Ignored - if you want to turn on the Auto Biller one clinic at a time."
 | 
|---|
| 64 |  W !,"              - if the Third Party Auto biller should create bills for"
 | 
|---|
| 65 |  W !,"                outpatient visits in only a few clinics and the bills"
 | 
|---|
| 66 |  W !,"                for the remaining clinics continue to be manually created."
 | 
|---|
| 67 |  ;
 | 
|---|
| 68 |  W !!,"Enter Billed  - to set all clinics to be billed by the auto biller."
 | 
|---|
| 69 |  Q
 | 
|---|