IBNCPDPU ;OAK/ELZ - UTILITIES FOR NCPDP ;Jun 06, 2014@19:13:12
Source file <IBNCPDPU.m>
| Package | Total | Call Graph |
|---|---|---|
| Integrated Billing | 10 | STCHK^IBCNRU1 ALL^IBCNS1 $$PLCOV^IBCNSU3 $$EVNTITM^IBCRU3 $$SENS^IBNCPDR ($$MACHK,$$ROI)^IBNCPDR4 $$ERMSG^IBNCPNB $$RXZERO^IBRXUTL $$EABD^IBTUTL REFILL^IBTUTL1 |
| E Claims Management Engine | 3 | $$NABP^BPSBUTL $$EN^BPSNCPDP ($$CLMECME,$$VALECME)^BPSUTIL2 |
| Kernel | 2 | $$FMADD^XLFDT $$RJ^XLFSTR |
| Outpatient Pharmacy | 2 | ECMEACT^PSOBPSU1 $$RXRLDT^PSOBPSUT |
| Registration | 1 | ELIG^VADPT |
| VA FileMan | 1 | ^DIE |
| action | A | extended action | Ea | event driver | Ed | subscriber | Su | protocol | O | limited protocol | LP | run routine | RR | broker | B | edit | E | server | Se | P | screenman | SM | inquire | I |
| Name | Comments | DBIA/ICR reference |
|---|---|---|
| CT(DFN,IBRXN,IBFIL,IBADT,IBRMARK) | ; files in claims tracking
; Input: ; DFN - Patient IEN ; IBRXN - Rx IEN ; IBFIL - Fill# ; IBADT - Date of Service ; IBRMARK - Non-billable Reason (.01 from 356.8) |
|
| FILL(X,LEN) | ; Zero-fill, right justified.
|
|
| PLANN(DFN,IBX,IBADT) | ; returns the ien in the insurance multiple for the given plan/patient provided
; Output: insurance co ien^2.312 subfile ien |
|
| PLANEPS(IBPL) | ; returns the ePharmacy payer sheets for a group plan
; IBPL = IEN to GROUP INSURANCE PLAN file #355.3 ; Returns: Payer Sheets. (B1,B2,B3,E1) (comma separated string) ; Successful: 1^B1,B2,B3,E1 ; Unsuccessful: 0 |
|
| RT(DFN,IBDT,IBINS,IBPTYP) | ; returns rate type to use for bill
; Input: ; DFN - patient ien ; IBDT - date of service ; IBINS - insurance array (pass by reference) |
|
| BS() | ; returns the mccr utility to use
|
|
| RXBIL(IBINP,IBERR) | ; Matching NCPDP payments
; Find IB Bill by the 7 or 12 digit ECME number and the Rx fill date ; This function is called by AR routine $$BILL^RCDPESR1 (DBIA 4435). |
|
| RXBILND(IBECME) | ;Match the bill with no date
|
|
| TXMATCH(IBTXT1,IBTXT2,IBMAX) | ;
|
|
| ECMEBIL(DFN,IBADT) | ; Is the pat ECME Billable (pharmacy coverage only)
; DFN - ptr to the patient ; IBADT - the date ; IBINS - insurance array returned by ALL^IBCNS1 |
|
| SUBMIT(IBRX,IBFIL,IBDELAY) | ; Submit the Rx claim through ECME
; IBDELAY - Delay Reason Code, passed as the 18th parameter - IB*2.0*435 ; IBRX - RX ien in file #52 ; IBFIL - Fill No (0 for orig fill) |
|
| REASON(IBX,EXACT) | ; Close Claim Reasons
|
|
| NABP(IBIFN) | ;NABP Number
|
|
| BILL(IBRX,IBFIL) | ;
|
|
| REJECT(IBECME,IBDATE) | ; Is the e-claim rejected?
|
|
| RXINS(DFN,IBADT,IBINS) | ; Return an array of pharmacy insurance policies by COB order
; Input: ; DFN - Patient ien (required) ; IBADT - Date of Service (fileman format, optional defaults to today) ; Output: ; IBINS - Name of destination array (pass by reference) |
|
| RXINSX | ;
|
|
| ECMEMTCH(IBECME,IBDAT,IBPNAME,IBERR) | ; Attempt ECME# look up with either 7 digit or 12 digit number (IB*2*435)
|
|
| ACDUTY(DFN) | ;
; Check active duty status for the patient ; Input: ; DFN: Patient (#2) IEN ; Output: ; 0: Does not have an Active Duty Status ; 1: Has an active Duty Status ; |
| Name | Field # of Occurrence |
|---|---|
| $$NABP^BPSBUTL | NABP+7 |
| $$EN^BPSNCPDP | SUBMIT+8 |
| $$CLMECME^BPSUTIL2 | RXBIL+19 |
| $$VALECME^BPSUTIL2 | RXBIL+13 |
| ^DIE | CT+11, CT+14 |
| STCHK^IBCNRU1 | ECMEBIL+21 |
| ALL^IBCNS1 | CT+31, PLANN+4, ECMEBIL+8, RXINS+11 |
| $$PLCOV^IBCNSU3 | ECMEBIL+17, RXINS+17 |
| $$EVNTITM^IBCRU3 | RT+26 |
| $$SENS^IBNCPDR | CT+29 |
| $$MACHK^IBNCPDR4 | CT+35 |
| $$ROI^IBNCPDR4 | CT+36 |
| $$ERMSG^IBNCPNB | ECMEBIL+22 |
| $$RXZERO^IBRXUTL | CT+25 |
| $$EABD^IBTUTL | CT+18 |
| REFILL^IBTUTL1 | CT+41 |
| ECMEACT^PSOBPSU1 | SUBMIT+9 |
| $$RXRLDT^PSOBPSUT | SUBMIT+6 |
| ELIG^VADPT | RT+19, ACDUTY+11 |
| $$FMADD^XLFDT | CT+18, RXBILND+2 |
| $$RJ^XLFSTR | RXBILND+8, RXBILND+25, REJECT+6, ECMEMTCH+5 |
| FileNo | Call Tags |
|---|---|
| ^IBT(356 - [#356] | Classic Fileman Calls |
| Name | Line Occurrences (* Changed, ! Killed) |
|---|---|
| ^DGCR(399 - [#399] | RXBILND+11, RXBILND+12, RXBILND+13, RXBILND+28, RXBILND+29, BILL+4, ECMEMTCH+9, ECMEMTCH+11, ECMEMTCH+13 |
| ^DGCR(399.1 - [#399.1] | BS+2 |
| ^DGCR(399.3 - [#399.3] | RT+24, RT+49, RT+50, RT+58, RT+59 |
| ^DIC(8 - [#8] | RT+22, RT+32, RT+34 |
| ^DIC(8.1 - [#8.1] | RT+32, RT+34 |
| ^DPT - [#2] | ECMEMTCH+13 |
| ^IBA(355.3 - [#355.3] | PLANEPS+9, ECMEBIL+19 |
| ^IBCNR(366.03 - [#366.03] | PLANEPS+11 |
| ^IBE(355.1 - [#355.1] | RT+42 |
| ^IBE(355.31 - [#355.31] | ECMEBIL+10 |
| ^IBE(356.6 - [#356.6] | CT+16 |
| ^IBE(356.8 - [#356.8] | REASON+1 |
| ^IBT(356 - [#356] | CT+10, NABP+4, BILL+2, BILL+3, REJECT+7, REJECT+11 |
| ^IBT(356.399 - [#356.399] | NABP+2, NABP+3 |
| Name | Line Occurrences |
|---|---|
| $$ECMEMTCH | RXBIL+18, RXBIL+19 |
| $$RXBILND | RXBIL+16 |
| $$TXMATCH | ECMEMTCH+13 |
| >> | Not killed explicitly |
| * | Changed |
| ! | Killed |
| ~ | Newed |
| Name | Field # of Occurrence |
|---|---|
| B1 | PLANEPS+5~, PLANEPS+14*, PLANEPS+15*, PLANEPS+16*, PLANEPS+20 |
| B2 | PLANEPS+5~, PLANEPS+14*, PLANEPS+15*, PLANEPS+17*, PLANEPS+20 |
| B3 | PLANEPS+5~, PLANEPS+14*, PLANEPS+15*, PLANEPS+18*, PLANEPS+20 |
| BILLDA | RXBIL+10~, RXBIL+18*, RXBIL+19*, RXBIL+20, RXBILND+1~, RXBILND+5*, RXBILND+6, RXBILND+11, RXBILND+12, RXBILND+14* , RXBILND+19, RXBILND+22*, RXBILND+23, RXBILND+28, RXBILND+29, RXBILND+30*, RXBILND+35, ECMEMTCH+1~, ECMEMTCH+7*, ECMEMTCH+9* , ECMEMTCH+10, ECMEMTCH+11, ECMEMTCH+13, ECMEMTCH+15, ECMEMTCH+16 |
| BPSDAT | RXBIL+10~, RXBIL+19* |
| COB | RXINS+7~, RXINS+14*, RXINS+16, RXINS+17 |
| CT | RXINS+7~, RXINS+13*, RXINS+18*, RXINS+21 |
| DA | CT+8~, CT+11*, CT+13* |
| DFN | CT~, CT+25, CT+31, CT+36, CT+41, PLANN~, PLANN+4, RT~, ECMEBIL~, ECMEBIL+8 , RXINS~, RXINS+9*, RXINS+11, ACDUTY~, ACDUTY+8 |
| DIE | CT+8~, CT+11*, CT+13* |
| DR | CT+8~, CT+11*, CT+13* |
| DT | RXBILND+2, SUBMIT+7, RXINS+10 |
| E1 | PLANEPS+5~, PLANEPS+14*, PLANEPS+15*, PLANEPS+19*, PLANEPS+20 |
| ECMELEN | RXBILND+1~, RXBILND+6*, RXBILND+7, RXBILND+8, RXBILND+23*, RXBILND+24, RXBILND+25, REJECT+1~, REJECT+4*, REJECT+5 , REJECT+6, ECMEMTCH+1~, ECMEMTCH+3*, ECMEMTCH+4, ECMEMTCH+5 |
| ECMENUM | RXBILND+1~, RXBILND+8*, RXBILND+9, RXBILND+25*, RXBILND+26, ECMEMTCH+5*, ECMEMTCH+6 |
| EXACT | REASON~ |
| IBADT | CT~, CT+10, CT+11, CT+18, CT+31, CT+35, CT+36, CT+41, PLANN~, PLANN+4 , ECMEBIL~, ECMEBIL+8, ECMEBIL+17, RXINS~, RXINS+10*, RXINS+11, RXINS+17 |
| IBANY | ECMEBIL+4~ |
| IBBC | RXBILND+1~, RXBILND+10*, RXBILND+11*, RXBILND+12, RXBILND+27*, RXBILND+28*, RXBILND+29 |
| IBCAT | ECMEBIL+4~, ECMEBIL+10*, ECMEBIL+17 |
| IBCOV | ECMEBIL+4~, ECMEBIL+6*, ECMEBIL+16*, ECMEBIL+24 |
| IBCUT | RXBILND+1~, RXBILND+2*, RXBILND+10, RXBILND+28 |
| IBDAT | RXBIL+10~, RXBIL+14*, RXBIL+15*, RXBIL+16, RXBIL+18, RXBIL+19, ECMEMTCH~, ECMEMTCH+6 |
| IBDATE | REJECT~ |
| IBDEA | CT+24~ |
| IBDELAY | SUBMIT~, SUBMIT+8 |
| IBDRUG | CT+24~, CT+26*, CT+29, CT+36 |
| IBDT | RT~, RT+26, SUBMIT+4~, SUBMIT+6*, SUBMIT+7*, SUBMIT+8 |
| IBE | RT+17~, RT+32*, RT+34* |
| IBE( | RT+32*, RT+34* |
| IBE("C" | RT+39, RT+48, RT+57 |
| IBE("O" | RT+48 |
| IBE("T" | RT+38, RT+48 |
| IBEABD | CT+8~, CT+18*, CT+41 |
| IBECME | RXBIL+10~, RXBIL+12*, RXBIL+13, RXBIL+16, RXBIL+18, RXBIL+19, RXBILND~, RXBILND+7, RXBILND+8, RXBILND+24 , RXBILND+25, REJECT~, REJECT+2, REJECT+5, REJECT+6*, REJECT+7, ECMEMTCH~, ECMEMTCH+4, ECMEMTCH+5 |
| IBERMSG | ECMEBIL+4~, ECMEBIL+9*, ECMEBIL+20*, ECMEBIL+22*, ECMEBIL+26 |
| IBERR | RXBIL~, RXBIL+11*, RXBIL+13*, RXBIL+18, RXBIL+19, ECMEMTCH~, ECMEMTCH+15* |
| IBFIL | CT~, CT+41, SUBMIT~, SUBMIT+5, SUBMIT+6, SUBMIT+8, SUBMIT+9, NABP+1~, NABP+6*, NABP+7 , BILL~, BILL+2 |
| IBFLG | CT+30~, CT+35*, CT+36*, CT+37, CT+38, CT+39 |
| IBFOUND | ECMEMTCH+1~, ECMEMTCH+2*, ECMEMTCH+3, ECMEMTCH+9, ECMEMTCH+14* |
| IBI | RT+17~, RT+42* |
| IBI( | RT+42* |
| IBI("C" | RT+57 |
| IBI("O" | RT+49, RT+58 |
| IBI("T" | RT+48 |
| IBIFN | NABP~, NABP+2, BILL+1~, BILL+3*, BILL+4 |
| IBINP | RXBIL~ |
| IBINP("ECME" | RXBIL+12 |
| IBINP("FILLDT" | RXBIL+14 |
| IBINP("PNM" | RXBIL+17 |
| IBINS | CT+30~, RT~, ECMEBIL+4~, RXINS~, RXINS+8!, RXINS+21* |
| IBINS( | CT+36, RT+42, ECMEBIL+14, RXINS+15, RXINS+16!, RXINS+17! |
| IBINS("S" | CT+32, ECMEBIL+11, ECMEBIL+12, RXINS+14, RXINS+16!, RXINS+17! |
| IBINSP | CT+30~, CT+32*, CT+36 |
| IBKEY | RXBILND+1~, RXBILND+9*, RXBILND+10, RXBILND+11, RXBILND+26*, RXBILND+27, RXBILND+28, ECMEMTCH+1~, ECMEMTCH+6*, ECMEMTCH+9 |
| IBMATCH | ECMEMTCH+1~, ECMEMTCH+2*, ECMEMTCH+12*, ECMEMTCH+15 |
| IBMAX | TXMATCH~, TXMATCH+5, TXMATCH+6 |
| IBNABP | NABP+1~, NABP+7*, NABP+8 |
| IBNDC | SUBMIT+4~ |
| IBPCOV | ECMEBIL+4~, ECMEBIL+6*, ECMEBIL+18*, ECMEBIL+25 |
| IBPIEN | ECMEBIL+13~, ECMEBIL+19*, ECMEBIL+20, ECMEBIL+21 |
| IBPL | PLANEPS~, PLANEPS+7, PLANEPS+9, ECMEBIL+13~, ECMEBIL+15*, ECMEBIL+17, ECMEBIL+19, RXINS+7~, RXINS+15*, RXINS+16 , RXINS+17 |
| IBPNAME | RXBIL+10~, RXBIL+17*, RXBIL+18, RXBIL+19, ECMEMTCH~, ECMEMTCH+13 |
| IBPOL | PLANN+2~ |
| IBPOL( | PLANN+5 |
| IBPT | RT+17~, RT+22*, RT+23 |
| IBPTYP | RT~, RT+18*, RT+37*, RT+38*, RT+39* |
| IBR | PLANN+2~, PLANN+3*, PLANN+5*, PLANN+6, PLANEPS+5~, PLANEPS+6*, PLANEPS+7, PLANEPS+10, PLANEPS+20*, PLANEPS+21 |
| IBRES | ECMEBIL+4~, ECMEBIL+5*, ECMEBIL+11, ECMEBIL+12, ECMEBIL+23*, ECMEBIL+26, ECMEBIL+27, ECMEBIL+29 |
| IBRET | RT+17~, RT+23, RT+26* |
| IBRMARK | CT~, CT+12, CT+13, CT+35*, CT+37*, CT+41 |
| IBRS | RT+17~, RT+26 |
| IBRT | RT+17~, RT+23, RT+24*, RT+25*, RT+26, RT+48, RT+49*, RT+50*, RT+57, RT+58* , RT+59* |
| IBRX | SUBMIT~, SUBMIT+5, SUBMIT+6, SUBMIT+8, SUBMIT+9, NABP+1~, NABP+5*, NABP+7, BILL~, BILL+2 |
| IBRXDATA | CT+24~, CT+25*, CT+26 |
| IBRXN | CT~, CT+25, CT+41 |
| IBRXTYP | CT+8~, CT+16*, CT+18, CT+41 |
| IBSCROI | CT+24~, CT+35*, CT+38*, CT+39*, CT+41 |
| IBT | ECMEBIL+4~, ECMEBIL+12*, ECMEBIL+14 |
| IBT1 | TXMATCH+1~, TXMATCH+5*, TXMATCH+7 |
| IBT2 | TXMATCH+1~, TXMATCH+6*, TXMATCH+7 |
| IBTR1 | TXMATCH+1~, TXMATCH+3*, TXMATCH+5, TXMATCH+6 |
| IBTR2 | TXMATCH+1~, TXMATCH+4*, TXMATCH+5, TXMATCH+6 |
| IBTRKN | NABP+1~, NABP+3*, NABP+4, BILL+1~, BILL+2*, BILL+3 |
| IBTRKRN | CT+10, CT+11, CT+12, CT+13, REJECT+1~, REJECT+3*, REJECT+4, REJECT+7*, REJECT+10, REJECT+11 |
| IBTXT1 | TXMATCH~, TXMATCH+5 |
| IBTXT2 | TXMATCH~, TXMATCH+6 |
| IBX | PLANN~, PLANN+5, RT+17~, RT+34*, RT+42*, BS+1~, BS+2*, BS+3, ECMEBIL+4~, ECMEBIL+11* , ECMEBIL+12, SUBMIT+4~, SUBMIT+8*, SUBMIT+9, SUBMIT+10, REASON~, REASON+1 |
| IBY | PLANN+2~, PLANN+5*, RXBILND+1~, RXBILND+12*, RXBILND+13, RXBILND+14, RXBILND+29*, RXBILND+30, ECMEBIL+13~, ECMEBIL+21 , NABP+1~, NABP+2*, NABP+3, REJECT+1~, REJECT+11*, REJECT+12 |
| IBY(1 | ECMEBIL+22 |
| IBY(6 | ECMEBIL+22 |
| IBZ | ECMEBIL+4~, ECMEBIL+13~, ECMEBIL+14*, ECMEBIL+15, NABP+1~, NABP+4*, NABP+5, NABP+6 |
| IEN | RXINS+7~, RXINS+14*, RXINS+15, RXINS+16, RXINS+17 |
| LEN | FILL~, FILL+2*, FILL+3, FILL+4 |
| PIEN | PLANEPS+5~, PLANEPS+9*, PLANEPS+10, PLANEPS+11 |
| PLN10 | PLANEPS+5~, PLANEPS+11*, PLANEPS+15, PLANEPS+16, PLANEPS+17, PLANEPS+18, PLANEPS+19 |
| U | CT+10, CT+26, PLANN+5, PLANEPS+9, PLANEPS+15, PLANEPS+16, PLANEPS+17, PLANEPS+18, PLANEPS+19, RT+22 , RT+23, RT+32, RT+34, RT+42, BS+2, RXBILND+13, ECMEBIL+15, REASON+1, NABP+3, NABP+5 , NABP+6, BILL+3, BILL+4, REJECT+12, RXINS+15, ECMEMTCH+13 |
| VAEL | RT+17~, ACDUTY+10~ |
| VAEL(1 | RT+22, RT+32, RT+34 |
| VAEL(2 | ACDUTY+14 |
| VAEL(4 | RT+37 |
| VAEL(6 | ACDUTY+12 |
| VAERR | RT+17~ |
| X | FILL~, FILL+3 |
| Y | FILL+1~, FILL+3*, FILL+4*, FILL+5 |