[613] | 1 | IBARXMR ;LL/ELZ - PHARMCAY COPAY CAP RPC STUFF ;17-NOV-2000
|
---|
| 2 | ;;2.0;INTEGRATED BILLING;**150,158,156,308**;21-MAR-94
|
---|
| 3 | ;;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
| 4 | ;
|
---|
| 5 | RQUERY(IBR,IBICN,IBM) ; remote query call
|
---|
| 6 | ; called from rpc IBARXM QUERY ONLY
|
---|
| 7 | N DFN
|
---|
| 8 | S DFN=$$DFN^IBARXMU(IBICN) I 'DFN S IBY(0)=0 Q
|
---|
| 9 | D QUERY(.IBR,DFN,IBM)
|
---|
| 10 | S IBR=$NA(IBY)
|
---|
| 11 | Q
|
---|
| 12 | ;
|
---|
| 13 | QUERY(IBR,DFN,IBM) ; call for querying data
|
---|
| 14 | ; IBR = where results are returned
|
---|
| 15 | ; IBM = month/year for query
|
---|
| 16 | N IBX,IBZ,IBS,IBC
|
---|
| 17 | K IBR
|
---|
| 18 | ;
|
---|
| 19 | S IBS=+$P($$SITE^IBARXMU,"^",3)
|
---|
| 20 | S (IBX,IBC)=0 F S IBX=$O(^IBAM(354.71,"AD",DFN,IBM,IBX)) Q:IBX<1 D
|
---|
| 21 | . S IBZ=^IBAM(354.71,IBX,0) Q:(+IBZ)'=IBS
|
---|
| 22 | . S IBC=IBC+1
|
---|
| 23 | . D SENDF^IBARXMU(.IBZ)
|
---|
| 24 | . S IBR(IBC)=IBZ
|
---|
| 25 | S IBR(0)=IBC
|
---|
| 26 | Q
|
---|
| 27 | ;
|
---|
| 28 | TRANS(IBR,IBICN,IBD) ; remote procedure call for receiving transaction data (new or updated)
|
---|
| 29 | ; called from rpc IBARXM TRANS DATA
|
---|
| 30 | ; IBICN = the patient's ICN
|
---|
| 31 | ; IBR = return acceptance response
|
---|
| 32 | ; IBD = data being received on a transaction
|
---|
| 33 | N DFN,IBA
|
---|
| 34 | S DFN=$$DFN^IBARXMU(IBICN)
|
---|
| 35 | S IBR=$S(DFN>0:$$ADD^IBARXMN(DFN,IBD),1:0)
|
---|
| 36 | Q
|
---|
| 37 | ;
|
---|
| 38 | BILL(IBR,IBICN,IBT,IBB) ; remote procedure call to indicate a bill should be
|
---|
| 39 | ; billed after all, this occurs when a copay bill was cancelled and
|
---|
| 40 | ; the patient had previously reached his cap and the bill indicated was
|
---|
| 41 | ; not billed.
|
---|
| 42 | ; called from rpc IBARXM TRANS BILL
|
---|
| 43 | ; IBR = return acceptance response
|
---|
| 44 | ; IBICN = patient's icn
|
---|
| 45 | ; IBT = 354.71 transaction number to bill
|
---|
| 46 | ; IBB = amount to bill
|
---|
| 47 | N DFN
|
---|
| 48 | S DFN=$$DFN^IBARXMU(IBICN) I 'DFN S IBR="-1^Patient not found" Q
|
---|
| 49 | ;
|
---|
| 50 | ; if PFSS/IDX transaction call VDEF and quit
|
---|
| 51 | I $$SWSTAT^IBBAPI,$P($G(^IBAM(354.71,+^IBAM(354.71,"B",IBT,0),0)),"^",20) S IBR=$$QUEUE^VDEFQM("DFT^P03","SUBTYPE=CPBL^IEN="_IBT_":"_IBB,,"PFSS OUTBOUND") Q
|
---|
| 52 | ;
|
---|
| 53 | D BILL^IBARXMB(IBT,IBB)
|
---|
| 54 | S IBR=1
|
---|
| 55 | Q
|
---|