| [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 | 
|---|