| 1 | IBECEA ;ALB/RLW - Cancel/Edit/Add Patient Charges ;12-JUN-92
 | 
|---|
| 2 |  ;;2.0; INTEGRATED BILLING ;**199,135**;21-MAR-94
 | 
|---|
| 3 |  ;;Per VHA Directive 10-93-142, this routine should not be modified.
 | 
|---|
| 4 |  ;
 | 
|---|
| 5 | EN ; Cancel/Edit/Add Patient Charges -- invoke the List Manager.
 | 
|---|
| 6 |  K XQORS,VALMEVL
 | 
|---|
| 7 | EN1 ; Entrypoint to avoid killing XQORS
 | 
|---|
| 8 |  I '$$CHECK^IBECEAU(1) G ENQ
 | 
|---|
| 9 |  D EN^VALM("IB CHARGES")
 | 
|---|
| 10 | ENQ K IBSITE,IBFAC,IBSERV
 | 
|---|
| 11 |  Q
 | 
|---|
| 12 |  ;
 | 
|---|
| 13 | EN1AR ; AR entry for charge maintenance
 | 
|---|
| 14 |  N DIR,X,Y
 | 
|---|
| 15 |  D EN1
 | 
|---|
| 16 |  S DIR(0)="EA",DIR("A")="PRESS RETURN TO CONTINUE. "
 | 
|---|
| 17 |  W ! D ^DIR K DIR
 | 
|---|
| 18 |  Q
 | 
|---|
| 19 |  ;
 | 
|---|
| 20 | INIT ; List Manager (IB CHARGES) main entry point.
 | 
|---|
| 21 |  S IBJOB=4,IBWHER="IBECEA",IBDUZ=DUZ
 | 
|---|
| 22 |  S IBACMAR="^TMP(""IBACM"",$J)",IBACMIDX="^TMP(""IBACMIDX"",$J)",VALMIDX="^TMP(""IBCMLIDX"",$J)"
 | 
|---|
| 23 |  I '$$SLPT S VALMQUIT="" D FNL G INITQ
 | 
|---|
| 24 |  I $$SLDT S VALMQUIT="" D FNL G INITQ
 | 
|---|
| 25 |  I $$SLRX S VALMQUIT="" D FNL G INITQ
 | 
|---|
| 26 |  D ARRAY^IBECEA0
 | 
|---|
| 27 | INITQ Q
 | 
|---|
| 28 |  ;
 | 
|---|
| 29 | PAT ; 'Change Patient' protocol entry action.
 | 
|---|
| 30 |  N IBDFN S IBDFN=DFN
 | 
|---|
| 31 |  I '$$SLPT D MSG S DFN=IBDFN G PATQ
 | 
|---|
| 32 | DATE ; 'Change Date' protocol entry action.
 | 
|---|
| 33 |  N IBDT1,IBDT2,IBRXXX S IBDT1=IBABEG,IBDT2=IBAEND,IBRXXX=IBRX
 | 
|---|
| 34 |  I $$SLDT D MSG S IBABEG=IBDT1,IBAEND=IBDT2 S:$D(IBDFN) DFN=IBDFN G PATQ
 | 
|---|
| 35 |  I $$SLRX D MSG S IBABEG=IBDT1,IBAEND=IBDT2,IBRX=IBRXXX S:$D(IBDFN) DFN=IBDFN G PATQ
 | 
|---|
| 36 |  D ARRAY^IBECEA0,HDR S VALMBCK="R"
 | 
|---|
| 37 | PATQ Q
 | 
|---|
| 38 |  ;
 | 
|---|
| 39 | MSG ; Quick message display.
 | 
|---|
| 40 |  N DIR,DIRUT,DUOUT,DTOUT,X,Y
 | 
|---|
| 41 |  W !!,*7,"No changes were made!",!
 | 
|---|
| 42 |  S DIR(0)="E" D ^DIR S VALMBCK=""
 | 
|---|
| 43 |  Q
 | 
|---|
| 44 |  ;
 | 
|---|
| 45 | HDR ; Build screen header.
 | 
|---|
| 46 |  S IBNAM=$$PT^IBEFUNC(DFN)
 | 
|---|
| 47 |  S VALMHDR(1)=$$SETSTR^VALM1($$FDATE^VALM1(IBABEG)_" THRU "_$$FDATE^VALM1(IBAEND),"Cancel/Edit/Add Charges",59,22)
 | 
|---|
| 48 |  S VALMHDR(2)=$E("Patient: "_$P(IBNAM,"^"),1,25)_" "_$E(IBNAM)_$P(IBNAM,"^",3)
 | 
|---|
| 49 |  Q
 | 
|---|
| 50 |  ;
 | 
|---|
| 51 | SLPT() ; Select a patient.
 | 
|---|
| 52 |  N DIC,X,Y
 | 
|---|
| 53 |  N DPTNOFZY S DPTNOFZY=1  ;Suppress PATIENT file fuzzy lookups
 | 
|---|
| 54 |  S DIC="^DPT(",DIC(0)="AEMQ" D ^DIC S DFN=+Y
 | 
|---|
| 55 |  Q Y>0
 | 
|---|
| 56 |  ;
 | 
|---|
| 57 | SLDT() ; Select Charge dates.
 | 
|---|
| 58 |  N DIR,DIRUT,DUOUT,DTOUT,X,Y
 | 
|---|
| 59 |  S DIR(0)="DA^2860101:NOW:EX",DIR("A")="Search for CHARGES from: ",DIR("B")=$$DAT2^IBOUTL($$FMADD^XLFDT(DT,-365)) D ^DIR S IBABEG=+Y G:'Y SLDTQ
 | 
|---|
| 60 |  S DIR(0)="DA^"_+Y_":NOW:EX",DIR("A")="                     to: ",DIR("B")=$$DAT2^IBOUTL(DT) D ^DIR S IBAEND=+Y+.999999
 | 
|---|
| 61 | SLDTQ Q $D(DIRUT)!($D(DUOUT))
 | 
|---|
| 62 |  ;
 | 
|---|
| 63 | SLRX() ; Include Rx copay charges?
 | 
|---|
| 64 |  N DIR,DIRUT,DUOUT,DTOUT,X,Y
 | 
|---|
| 65 |  S DIR(0)="Y",DIR("A")="Include RX COPAY charges",DIR("B")="NO" D ^DIR S IBRX=Y
 | 
|---|
| 66 |  Q $D(DIRUT)!($D(DUOUT))
 | 
|---|
| 67 |  ;
 | 
|---|
| 68 | FNL ; List Manager (IB CHARGES) exit action.
 | 
|---|
| 69 |  K:$D(IBACMAR) @IBACMAR,IBACMAR K:$D(IBACMIDX) @IBACMIDX,IBACMIDX K:$D(VALMIDX) @VALMIDX,VALMIDX
 | 
|---|
| 70 |  K IBABEG,IBAEND,DFN,IBAT,IBAX,IBY,VA,IBRX,IBWHER,X,^TMP("IBECEA",$J),^TMP("IBCMLIDX",$J),DFN,IBSAVY,IBARTYP,IBPRNT,IBDUZ,IBJOB,IBXA,IBNOW,IBLDT,IBL,IBIL,IBNAM
 | 
|---|
| 71 |  Q
 | 
|---|
| 72 |  ;
 | 
|---|
| 73 | EXIT Q
 | 
|---|