| 1 | IBARXEB ;ALB/AAS - RX COPAY EXEMPTION BULLETIN PROCESSOR ; 15-JAN-93
|
---|
| 2 | ;;Version 2.0 ; INTEGRATED BILLING ;; 21-MAR-94
|
---|
| 3 | ;;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
| 4 | ;
|
---|
| 5 | % N IBP,IBALERT
|
---|
| 6 | Q:IBEVTP="" ; no prior exemption
|
---|
| 7 | Q:IBEVTP=IBEVTA
|
---|
| 8 | S IBCODA=$$ACODE^IBARXEU0(IBEVTA),IBCODP=$$ACODE^IBARXEU0(IBEVTP)
|
---|
| 9 | Q:$L(IBCODA)=2 ; -went to automatic exemption
|
---|
| 10 | ;
|
---|
| 11 | K IBT
|
---|
| 12 | I IBCODA=2010 D ; -went to hardship
|
---|
| 13 | .S IBALERT=1
|
---|
| 14 | .S IBT(9)="Patient has been given a Hardship Exemption."
|
---|
| 15 | .Q
|
---|
| 16 | I IBCODP=2010 D ; -went from hardship
|
---|
| 17 | .S IBALERT=2
|
---|
| 18 | .S IBT(9)="Patient's Hardship exemption has been removed."
|
---|
| 19 | .Q
|
---|
| 20 | I IBCODA=210,$L(IBCODP)=3,$P(IBEVTP,"^",4)=1 D ; -went to no income data from exempt income
|
---|
| 21 | .S IBALERT=3
|
---|
| 22 | .S IBT(9)="Patient's exemption based on Income has expired."
|
---|
| 23 | .Q
|
---|
| 24 | ;
|
---|
| 25 | Q:'$D(IBT) ; no alert needed
|
---|
| 26 | ;
|
---|
| 27 | S IBP=$$PT^IBEFUNC(DFN)
|
---|
| 28 | I $$ALERT^IBAUTL7 D SEND^IBAERR3 G BQ
|
---|
| 29 | D BULL
|
---|
| 30 | BQ K IBEXERR Q
|
---|
| 31 | ;
|
---|
| 32 | ALERT ; -- use kernel alerts
|
---|
| 33 | ;
|
---|
| 34 | ALERTQ Q
|
---|
| 35 | ;
|
---|
| 36 | BULL ; -- send bulletin
|
---|
| 37 | ;
|
---|
| 38 | S XMSUB="Medication Copayment Exemption Status Change"
|
---|
| 39 | S IBT(1)="The following Patient's Medication Copayment Exemption Status has changed:"
|
---|
| 40 | S IBT(2)=" Patient: "_$E($P(IBP,"^")_" ",1,25)_" PT. ID: "_$P(IBP,"^",2)
|
---|
| 41 | S IBT(3)=""
|
---|
| 42 | S IBT(4)=" Old Status: "_$E($$TEXT^IBARXEU0($P(IBEVTP,"^",4))_" ",1,10)_" - "_$P($G(^IBE(354.2,+$P(IBEVTP,"^",5),0)),"^")_" Dated "_$$DAT1^IBOUTL(+IBEVTP)
|
---|
| 43 | S IBT(5)=" New Status: "_$E($$TEXT^IBARXEU0($P(IBEVTA,"^",4))_" ",1,10)_" - "_$P($G(^IBE(354.2,+$P(IBEVTA,"^",5),0)),"^")_" Dated "_$$DAT1^IBOUTL(+IBEVTA)
|
---|
| 44 | S IBT(6)="" I $D(IBARCAN) S IBT(6)="Past charges were canceled in AR."
|
---|
| 45 | S IBT(7)=""
|
---|
| 46 | S IBT(8)=""
|
---|
| 47 | S IBT(10)=" by: "_$P($G(^VA(200,+$P(IBEVTA,"^",7),0)),"^")_"/"_$S($P(IBEVTA,"^",6)=1:"(System)",1:"(Manual)")
|
---|
| 48 | S Y=$P(IBEVTA,"^",8) D D^DIQ S IBT(11)=" on: "_$P(Y,"@")_" @ "_$P(Y,"@",2)
|
---|
| 49 | S IBT(12)="Option: " I $D(XQY0) S IBT(12)=IBT(12)_$P($G(XQY0),"^",2)
|
---|
| 50 | I $D(ZTQUEUED),$P($G(XQY0),"^",2)="" S IBT(12)=IBT(12)_"Queued Job - "_$G(ZTDESC)
|
---|
| 51 | D SEND
|
---|
| 52 | BULLQ Q
|
---|
| 53 | ;
|
---|
| 54 | SEND S XMDUZ="INTEGRATED BILLING PACKAGE",XMTEXT="IBT("
|
---|
| 55 | K XMY S XMN=0
|
---|
| 56 | ;S XMY(DUZ)="" ;don't send to user, is annoying to pharmacy.
|
---|
| 57 | S IBGRP=$P($G(^XMB(3.8,+$P($G(^IBE(350.9,1,0)),"^",13),0)),"^")
|
---|
| 58 | I IBGRP]"" S XMY("G."_IBGRP_"@"_^XMB("NETNAME"))=""
|
---|
| 59 | ;S IBGRP=$P(^IBE(350.9,1,0),"^",9)
|
---|
| 60 | ;F IBI=0:0 S IBI=$O(^XMB(3.8,+IBGRP,1,"B",IBI)) Q:'IBI S XMY(IBI)=""
|
---|
| 61 | D ^XMD
|
---|
| 62 | K X,Y,IBI,IBT,IBGRP,XMDUZ,XMTEXT,XMY,XMSUB
|
---|
| 63 | Q
|
---|