1 | IBOMTC1 ;ALB/CPM-BILLING ACTIVITY LIST (CON'T) ; 09-JAN-92
|
---|
2 | ;;2.0;INTEGRATED BILLING;**145,176**;21-MAR-94
|
---|
3 | ;;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
4 | ;
|
---|
5 | ;***
|
---|
6 | ;S XRTL=$ZU(0),XRTN="IBOMTC-2" D T0^%ZOSV ;start rt clock
|
---|
7 | ; Select charges from file #350.
|
---|
8 | K ^TMP($J,"IBPHT")
|
---|
9 | S DFN="" F S DFN=$O(^IB("AFDT",DFN)) Q:'DFN S IBHEART=$$PH(DFN) D:'$G(IBPURPHT)!($G(IBPURPHT)&(IBHEART))
|
---|
10 | . S EVDT=-(IBEDT+.99) F S EVDT=$O(^IB("AFDT",DFN,EVDT)) Q:'EVDT D
|
---|
11 | .. S EVDA=0 F S EVDA=$O(^IB("AFDT",DFN,EVDT,EVDA)) Q:'EVDA D
|
---|
12 | ... S IBDA=0 F IBCNT=1:1 S IBDA=$O(^IB("AF",EVDA,IBDA)) Q:'IBDA D
|
---|
13 | .... Q:'$D(^IB(IBDA,0)) S IBD0=^(0)
|
---|
14 | .... Q:$P(IBD0,"^",8)["ADMISSION"
|
---|
15 | .... I $P(IBD0,"^",15)<IBBDT!($P(IBD0,"^",14)>IBEDT) Q
|
---|
16 | .... S NAM=$P($G(^DPT(DFN,0)),"^") S:NAM="" NAM="UNKNOWN"
|
---|
17 | .... S ^TMP($J,"IBOMTC",NAM_"@@"_DFN,+$P(IBD0,"^",14),IBDA)=""
|
---|
18 | .... I IBHEART S ^TMP($J,"IBPHT",NAM_"@@"_DFN)=""
|
---|
19 | ;
|
---|
20 | ; Print report.
|
---|
21 | D NOW^%DTC S IBHDT=$$DAT2^IBOUTL($E(%,1,12))
|
---|
22 | S IBLINE="",$P(IBLINE,"-",IOM+1)="",(IBPAG,IBQUIT)=0 D HDR G:IBQUIT END
|
---|
23 | I '$D(^TMP($J,"IBOMTC")) S IBX=$S($G(IBPURPHT):"Purple Heart Recipients",1:"Bills") W !!,"There are no "_IBX_" for this date range." G END
|
---|
24 | ;
|
---|
25 | S NAM="" F S NAM=$O(^TMP($J,"IBOMTC",NAM)) Q:NAM="" D Q:IBQUIT
|
---|
26 | . S IBPT=$$PT^IBEFUNC($P(NAM,"@@",2))
|
---|
27 | . I $Y>(IOSL-5) D PHT,PAUSE^IBOUTL Q:IBQUIT D HDR Q:IBQUIT
|
---|
28 | . W !,$S($D(^TMP($J,"IBPHT",NAM)):"*",1:" ")_$E($P(IBPT,"^"),1,9),?11,$P(IBPT,"^",3)
|
---|
29 | . S IBDT="" F S IBDT=$O(^TMP($J,"IBOMTC",NAM,IBDT)) Q:'IBDT D Q:IBQUIT
|
---|
30 | .. S IBDA="" F S IBDA=$O(^TMP($J,"IBOMTC",NAM,IBDT,IBDA)) Q:'IBDA D Q:IBQUIT
|
---|
31 | ... I $Y>(IOSL-4) D PHT,PAUSE^IBOUTL Q:IBQUIT D HDR Q:IBQUIT W !,$S($D(^TMP($J,"IBPHT",NAM)):"*",1:" ")_$E($P(IBPT,"^"),1,9),?11,$P(IBPT,"^",3)
|
---|
32 | ... S IBD0=$G(^IB(+IBDA,0)) Q:'IBD0
|
---|
33 | ... S X=$P($P($G(^IBE(350.1,+$P(IBD0,"^",3),0)),"^")," ",2,99)
|
---|
34 | ... W ?17,$E($P(X," ",1,$L(X," ")-1),1,16)
|
---|
35 | ... W ?35,$E($P($G(^IBE(350.21,+$P(IBD0,"^",5),0)),"^",2),1,11)
|
---|
36 | ... W ?47,$$DAT1^IBOUTL($P(IBD0,"^",14)),?57,$$DAT1^IBOUTL($P(IBD0,"^",15))
|
---|
37 | ... W ?66,$J($P(IBD0,"^",6),3)
|
---|
38 | ... S X=$P(IBD0,"^",7),X2="2$",X3=10 D COMMA^%DTC W ?70,X,!
|
---|
39 | ;
|
---|
40 | ; - close device and quit
|
---|
41 | END D:'IBQUIT PHT,PAUSE^IBOUTL K ^TMP($J,"IBOMTC"),^TMP($J,"IBPHT")
|
---|
42 | ;***
|
---|
43 | ;I $D(XRT0) S:'$D(XRTN) XRTN="IBOMTC1" D T1^%ZOSV ;stop rt clock
|
---|
44 | I $D(ZTQUEUED) S ZTREQ="@" Q
|
---|
45 | K NAM,DFN,EVDA,EVDT,IBD0,IBDA,IBDT,IBJ,IBQUIT,IBLINE,IBHDT,IBHEART,IBN,IBPAG,IBPT,IBCNT,X,X2,X3
|
---|
46 | D ^%ZISC Q
|
---|
47 | ;
|
---|
48 | ;
|
---|
49 | HDR ; Print header.
|
---|
50 | I $E(IOST,1,2)["C-"!(IBPAG) W @IOF
|
---|
51 | S IBPAG=IBPAG+1 W !,IBDESC,?IOM-35,IBHDT,?IOM-9,"Page: ",IBPAG
|
---|
52 | I $G(IBPURPHT) W !," * This report is being generated for Purple Heart Patients only *"
|
---|
53 | W !,"Charges from ",$$DAT1^IBOUTL(IBBDT)," through ",$$DAT1^IBOUTL(IBEDT)
|
---|
54 | W !,"PATIENT/ID",?17,"DESCRIPTION",?35,"STATUS",?49,"FROM",?60,"TO",?66,"UNITS",?72,"CHARGE"
|
---|
55 | W !,IBLINE
|
---|
56 | S IBQUIT=$$STOP^IBOUTL("Billing Activity List")
|
---|
57 | Q
|
---|
58 | PHT ;ADDS the footnote of * Purple Heart Recipient to the report.
|
---|
59 | W !,?10,"* Purple Heart Recipient"
|
---|
60 | Q
|
---|
61 | ;
|
---|
62 | ;
|
---|
63 | PH(DFN) ;Call to find out if a patient is a Purple Heart recipient.
|
---|
64 | ; DFN - patient's DFN
|
---|
65 | ;
|
---|
66 | ; Output - 1 means PH Indicator is "Yes"
|
---|
67 | ; 0 means PH Indicator is not "yes" (either "no" or null)
|
---|
68 | I '$D(^DPT(+$G(DFN),0)) Q 0
|
---|
69 | N IBPHT,VASV,VAERR
|
---|
70 | D SVC^VADPT
|
---|
71 | S IBPHT=$P($G(VASV(9,1)),"^",1)
|
---|
72 | I IBPHT'=3 S IBPHT=0
|
---|
73 | Q IBPHT
|
---|