1 | IBAMTC1 ;ALB/CPM - MEANS TEST NIGHTLY COMPILATION REPORT ; 14-NOV-91
|
---|
2 | ;;2.0;INTEGRATED BILLING;**153**;21-MAR-94
|
---|
3 | ;;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
4 | ;
|
---|
5 | I '$D(IOF)!('$D(IOM))!('$D(IOSL)) Q
|
---|
6 | ;
|
---|
7 | ; Initialize control variables.
|
---|
8 | S %H=+$H-1 D YMD^%DTC S Y=X D DD^%DT S IBYEST=Y
|
---|
9 | D NOW^%DTC S Y=% D DD^%DT S IBNOW=Y
|
---|
10 | S IBPAG=0,IBLINE="",$P(IBLINE,"-",IOM)=""
|
---|
11 | ; - print all reports.
|
---|
12 | D ERROR,INPT
|
---|
13 | ; - kill variables and quit.
|
---|
14 | K ^TMP($J,"IBAMTC"),IBCHK,IBI,IBID,IBRPT,IBNOW,IBYEST,IBPAG,IBLINE Q
|
---|
15 | ;
|
---|
16 | ;
|
---|
17 | ERROR ; Print the Error Report.
|
---|
18 | S IBRPT="Error Report" D HDR
|
---|
19 | I '$D(^TMP($J,"IBAMTC","E")) W !!,"No errors encountered during this compilation." Q
|
---|
20 | ;
|
---|
21 | S IBI="" F S IBI=$O(^TMP($J,"IBAMTC","E",IBI)) Q:'IBI S IBID=^(IBI) D
|
---|
22 | . I $Y>(IOSL-5) D HDR
|
---|
23 | . S IBDA=$O(^IBE(350.8,"AC",$S($P(IBID,"^")]"":$P(IBID,"^"),1:0),0))
|
---|
24 | . W !!,"Error: ",$S($D(^IBE(350.8,+IBDA,0)):$P(^(0),"^",2),$P(IBID,"^")]"":$P(IBID,"^"),1:"Unknown Error")
|
---|
25 | . W !,"Patient: ",$S($D(^DPT(+$P(IBID,"^",2),0)):$P(^(0),"^"),1:"No patient involved")
|
---|
26 | . I $P(IBID,"^",3) W !,$P($T(TEXT+$P(IBID,"^",3)^IBAMTEL),";;",2,99)
|
---|
27 | Q
|
---|
28 | ;
|
---|
29 | INPT ; Print the Inpatient Report.
|
---|
30 | S IBRPT="Inpatient Billing Report" D HDR
|
---|
31 | I '$D(^TMP($J,"IBAMTC","I")) W !!,"No Inpatient charges billed or updated during this compilation." Q
|
---|
32 | ;
|
---|
33 | S (DFN,IBI)="" F S DFN=$O(^TMP($J,"IBAMTC","I",DFN)) Q:'DFN D
|
---|
34 | . S IBCHK=1 F S IBI=$O(^TMP($J,"IBAMTC","I",DFN,IBI)) Q:'IBI D
|
---|
35 | .. I $Y>(IOSL-2) D HDR
|
---|
36 | .. S IBID=$G(^IB(+IBI,0)) W !
|
---|
37 | .. I IBCHK W $E($P($G(^DPT(+$P(IBID,"^",2),0)),"^"),1,24),?27,$E($P($G(^DPT(+$P(IBID,"^",2),0)),"^",9),6,9) S IBCHK=0
|
---|
38 | .. W ?35,$S($D(^IBE(350.1,+$P(IBID,"^",3),0)):$P($P(^(0),"^")," ",2,99),1:"Unknown")
|
---|
39 | .. W ?66,$$DAT1^IBOUTL($P(IBID,"^",14)),?80,$$DAT1^IBOUTL($P(IBID,"^",15))
|
---|
40 | .. W ?92,$J($P(IBID,"^",6),3)
|
---|
41 | .. W ?100,$S($P(IBID,"^",5)=10:$J("($"_$P(IBID,"^",7)_")",10),1:$J("$"_$P(IBID,"^",7),8))
|
---|
42 | .. W ?114,$P("INCOMPLETE^PENDING AR^BILLED^UPDATED^^^^ON HOLD^ERROR ENCOUNTERED^CANCELLED","^",$P(IBID,"^",5))
|
---|
43 | Q
|
---|
44 | ;
|
---|
45 | HDR S IBPAG=IBPAG+1
|
---|
46 | W @IOF,"Means Test Charge Compilation through ",IBYEST,?(IOM-31),IBNOW," Page: ",IBPAG
|
---|
47 | W !,IBRPT
|
---|
48 | I $E(IBRPT)="E" W !,IBLINE Q
|
---|
49 | W !,"PATIENT",?28,"SSN",?35,"CHARGE DESCRIPTION",?66,"BILL FROM BILL TO UNITS TOT CHG STATUS",!,IBLINE,!
|
---|
50 | Q
|
---|
51 | ;
|
---|
52 | ;
|
---|
53 | BULL ; Send the Nightly Compilation Job Completion bulletin.
|
---|
54 | S XMSUB="MEANS TEST NIGHTLY COMPILATION JOB COMPLETION"
|
---|
55 | S %H=+$H-1 D YMD^%DTC S Y=X D DD^%DT S IBYEST=Y
|
---|
56 | K IBT S IBDUZ=DUZ
|
---|
57 | S IBT(1)="The Means Test Nightly Compilation Job has compiled charges for patients"
|
---|
58 | S IBT(2)="through "_IBYEST_"."
|
---|
59 | S IBT(3)=" "
|
---|
60 | D NOW^%DTC S IBDATE=%,IBT(4)="The job was completed on "_$P($$DAT2^IBOUTL(IBDATE),"@")_" at "_$P($$DAT2^IBOUTL(IBDATE),"@",2)_"."
|
---|
61 | S IBT(5)=" "
|
---|
62 | S IBT(6)="There "_$S(IBCNT=1:"was ",1:"were ")_$S(IBCNT:IBCNT,1:"no")_" error"_$S(IBCNT=1:"",1:"s")_" encountered."
|
---|
63 | I IBCNT S IBT(7)="(Separate bulletin"_$E("s",IBCNT>1)_$S(IBCNT=1:" has",1:" have")_" been sent.)"
|
---|
64 | D MAIL^IBAERR1 ; find recipients and send bulletin
|
---|
65 | K IBDATE,IBDUZ,IBT,IBYEST,XMDUZ,XMSUB,XMTEXT,XMY
|
---|
66 | Q
|
---|