IBCEF79 ;ALB/ESG - Billing Provider functions ;13-Aug-2008
Source file <IBCEF79.m>
| Package | Total | Call Graph |
|---|---|---|
| Integrated Billing | 9 | $$COBN^IBCEF $$ISRX^IBCEF1 ($$GETTAX,$$RXSITE)^IBCEF73A ALLIDS^IBCEFP $$MAIN^IBCEP2B $$GETFAC^IBCEP8 $$TAXGET^IBCEP81 ($$PRVNUM,$$PRVQUAL)^IBCU ($$PRVDATA,$$PRVPHONE)^IBJPS3 |
| Kernel | 3 | $$FMTE^XLFDT ($$ACTIVE,$$BNIEN,$$NS,$$STATUS,PARENT)^XUAF4 $$TAXORG^XUSTAX |
| VA FileMan | 2 | FILE^DIE $$GET1^DIQ |
| Registration | 1 | ($$PRIM,$$SITE)^VASITE |
| 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 |
|---|---|---|
| B(IBIFN,COB) | ; Determine Billing Provider and Service Facility information
; This function returns a string in the following format: ; [1] billing provider Institution file pointer (IEN to file 4) or "0" ; if the billing provider cannot be determined ; [2] billing provider name (.01 field in file 4) or Error reason why ; the billing provider cannot be determined - used when piece [1]=0 ; [3] 0 if the service facility is a VA institution in file 4 ; 1 if the service facility is a non-VA facility in file 355.93 ; "" if the service facility is blank - when there is no service facility ; [4] service facility IEN - either an IEN to file 4 or to file 355.93 ; or "" if the service facility is blank |
|
| B1 | ;
; check the parent |
|
| BX | ;
|
|
| CHK(IEN) | ; Perform final billing provider checks on passed in Institution
; file pointer - File 4 ien ; Function returns final pieces 1 and 2 of $$B function as described above |
|
| CHKX | ;
|
|
| BPCHKN(IEN) | ; Is this a national Institution?
|
|
| BPCHKNX | ;
|
|
| BPCHKA(IEN) | ; Is this an active Institution?
|
|
| BPCHKAX | ;
|
|
| BPFACTYP(IEN) | ; Is the facility type of this Institution a valid Billing Provider facility type?
|
|
| BPFACTPX | ;
|
|
| BPPAR(IEN) | ; Who is the parent for this Institution?
; Function returns the IEN to file 4 of the parent institution as defined in File 4 |
|
| BPPARX | ;
|
|
| TAX(IBIFN) | ; Update default billing provider and service facility taxonomy codes
; and billing provider secondary IDs and Qualifiers. ; This is called via new style xrefs to update the default value of these fields |
|
| TAXQ | ;
|
|
| INSFLGS(IBIFN,COB) | ; get insurance company flags for a given claim
; returns string of flags in the following format: ; switchback flag ^ send service facility flag ^ institution file address flag ^ error ; switchback flag: field 36/4.11 or 36/4.12, depending on form type. "-1" if error has occurred. ; send service facility flag: field 36/4.07, empty if error has occurred or switchback flag is not set. ; institution file address flag: field 36/4.13, empty if error has occurred or switchback flag is not set. ; ; MRD;IB*2.0*516 - The four flag fields described above (File #36, ; Field #'s 4.07, 4.11, 4.12, 4.13) are all being marked for ; deletion. All references to those fields are being removed ; as part of this patch. |
|
| GETBP(IBIFN,COB,INST,SUB,IBXSAVE) | ; Get billing provider data for claim output
; Used to extract billing provider name, address, and phone# for PRV segment and for CMS-1500, Box 33 ; IBIFN - claim ien required ; COB - payer sequence (optional, defaults to current payer seq) ; INST - billing provider VA file 4 ien required ; SUB - subscript to use in IBXSAVE local array required ; IBXSAVE - pass by reference ; Returns IBXSAVE(SUB,"NAME") ; IBXSAVE(SUB,"ADDR1") ; IBXSAVE(SUB,"ADDR2") ; IBXSAVE(SUB,"CITY") ; IBXSAVE(SUB,"ST") ; IBXSAVE(SUB,"ZIP") ; IBXSAVE(SUB,"PHONE") |
|
| GETBPX | ;
|
|
| SENDSF(IBIFN,COB) | ; Send service facility information for the EDI claim?
; Function value returns 1 (send service facility information) or 0 (don't send it) ; The only time this function returns 0 is when the pre-patch 400 switchback flag is set, and ; care was provided at the main division (VAMC) in the database, and the 36,4.07 ins. co. flag is set to NO. ; This function is used in the EDI claim (segments SUB, SUB2, NPI-16, and NPI-17). ; IBIFN required ; COB optional, defaults to current payer sequence |
|
| SENDSFX | ;
|
|
| SLPROV(IBXIEN,TYPE) | ; return array of service line provider data
; IBXIEN - ien in file 399 ; TYPE: O1 = operating physician, O2 = other operating physician, RE = rendering provider, ; P = purchase service provider, S = supervising provider, RF = referring provider |
| Name | Field # of Occurrence |
|---|---|
| FILE^DIE | TAX+46 |
| $$GET1^DIQ | BPFACTYP+2, SLPROV+26, SLPROV+27 |
| $$COBN^IBCEF | B+21, GETBP+23, SENDSF+15 |
| $$ISRX^IBCEF1 | B+70 |
| $$GETTAX^IBCEF73A | SLPROV+30 |
| $$RXSITE^IBCEF73A | B+73 |
| ALLIDS^IBCEFP | SLPROV+12 |
| $$MAIN^IBCEP2B | SENDSF+23 |
| $$GETFAC^IBCEP8 | GETBP+70, GETBP+71, GETBP+72, GETBP+73, GETBP+74, GETBP+75 |
| $$TAXGET^IBCEP81 | TAX+20 |
| $$PRVNUM^IBCU | TAX+24, TAX+26, TAX+28 |
| $$PRVQUAL^IBCU | TAX+25, TAX+27, TAX+29 |
| $$PRVDATA^IBJPS3 | GETBP+82 |
| $$PRVPHONE^IBJPS3 | GETBP+76 |
| $$PRIM^VASITE | B+29 |
| $$SITE^VASITE | B+31 |
| $$FMTE^XLFDT | B+30, B+32 |
| $$ACTIVE^XUAF4 | BPCHKA+2 |
| $$BNIEN^XUAF4 | GETBP+69 |
| $$NS^XUAF4 | CHK+9 |
| $$STATUS^XUAF4 | BPCHKN+2 |
| PARENT^XUAF4 | BPPAR+3 |
| $$TAXORG^XUSTAX | TAX+14, TAX+19 |
| FileNo | Call Tags |
|---|---|
| ^VA(200 - [#200] | GET1^DIQ |
| ^IBA(355.93 - [#355.93] | GET1^DIQ |
| ^DIC(4 - [#4] | GET1^DIQ |
| Name | Line Occurrences (* Changed, ! Killed) |
|---|---|
| ^DGCR(399 - [#399] | B+20, B+25, B+59, TAX+8, TAX+33, TAX+34, SENDSF+20, SENDSF+22 |
| ^IBE(350.9 - [#350.9] | BPFACTYP+2 |
| ^TMP("IB 1500 PRINT" | B+86 |
| >> | Not killed explicitly |
| * | Changed |
| ! | Killed |
| ~ | Newed |
| Name | Field # of Occurrence |
|---|---|
| % | B+16~ |
| BP | B+16~, B+64*, B+65, B+73*, B+74*, B+77*, B+79, B+80, B+95, B+100* , B+101, B1+2*, B1+3, CHK+3~, CHK+5*, CHK+6*, CHK+7*, CHK+9*, CHKX+1 |
| BPDIV | B+16~, B+31*, B+32, B+64, B+74, B+77, B+100, B1+2 |
| BPDIVCHK | B+16~, B+69*, B+74*, B+77*, B+97, B+100* |
| BPID1 | TAX+4~, TAX+24*, TAX+37 |
| BPID2 | TAX+4~, TAX+26*, TAX+39 |
| BPID3 | TAX+4~, TAX+28*, TAX+41 |
| BPQL1 | TAX+4~, TAX+25*, TAX+38 |
| BPQL2 | TAX+4~, TAX+27*, TAX+40 |
| BPQL3 | TAX+4~, TAX+29*, TAX+42 |
| BPTAX | TAX+4~, TAX+13*, TAX+14*, TAX+15*, TAX+36 |
| BPZ | TAX+4~, TAX+10*, TAX+14, TAX+19, TAX+20 |
| COB | B~, B+21*, B+22, INSFLGS~, GETBP~, GETBP+23*, SENDSF~, SENDSF+15* |
| D | B+16~, TAX+5~ |
| D0 | B+16~, TAX+5~ |
| DATA | SLPROV+10~, SLPROV+23*, SLPROV+25, SLPROV+26, SLPROV+27, SLPROV+30, SLPROV+32*, SLPROV+34, SLPROV+37 |
| DI | B+16~, TAX+5~ |
| DIQ2 | B+16~, TAX+5~ |
| DT | B+27 |
| EVDT | B+16~, B+26*, B+27*, B+29, B+30, B+31, B+32 |
| IB0 | B+16~, B+25*, B+26, B+28 |
| IBCNT | SLPROV+10~, SLPROV+13*, SLPROV+40*, SLPROV+41, SLPROV+42 |
| IBDIV | B+16~, B+28*, B+29*, B+30, B+31, SENDSF+13~, SENDSF+22*, SENDSF+24 |
| IBIFN | B~, B+18*, B+19, B+20, B+21, B+25, B+59, B+70, B+73, B+86 , TAX~, TAX+7, TAX+8, TAX+10, TAX+24, TAX+25, TAX+26, TAX+27, TAX+28, TAX+29 , TAX+32, TAX+33, TAX+34, INSFLGS~, GETBP~, GETBP+23, GETBP+76, GETBP+82, SENDSF~, SENDSF+15 , SENDSF+20, SENDSF+22 |
| IBM1 | TAX+4~, TAX+34*, TAX+37, TAX+38, TAX+39, TAX+40, TAX+41, TAX+42 |
| IBN | SLPROV+10~, SLPROV+31*, SLPROV+32, SLPROV+34 |
| IBTAXO | TAX+4~, TAX+44 |
| IBTAXO(399 | TAX+35*, TAX+36*, TAX+37*, TAX+38*, TAX+39*, TAX+40*, TAX+41*, TAX+42* |
| IBU2 | B+16~, B+59*, B+60 |
| IBU3 | TAX+4~, TAX+33*, TAX+35, TAX+36 |
| IBX | SLPROV+10~, SLPROV+12 |
| IBX("L-PROV" | SLPROV+15, SLPROV+16, SLPROV+23, SLPROV+31, SLPROV+32 |
| IBXIEN | SLPROV~, SLPROV+11, SLPROV+12, SLPROV+15, SLPROV+16, SLPROV+23, SLPROV+31, SLPROV+32 |
| IBXSAVE | GETBP~ |
| IBXSAVE( | GETBP+22!, GETBP+69*, GETBP+70*, GETBP+71*, GETBP+72*, GETBP+73*, GETBP+74*, GETBP+75*, GETBP+76*, GETBP+83* , GETBP+84*, GETBP+85*, GETBP+86*, GETBP+87* |
| IBXSAVE("SLPRV" | SLPROV+41*, SLPROV+42* |
| IBZ | GETBP+21~, GETBP+82*, GETBP+83, GETBP+84, GETBP+85, GETBP+86, GETBP+87 |
| IEN | CHK~, CHK+4*, CHK+5, CHK+6, CHK+7, CHK+9, BPCHKN~, BPCHKN+2, BPCHKA~, BPCHKA+2 , BPFACTYP~, BPFACTYP+2, BPPAR~, BPPAR+3 |
| IENS | TAX+4~, TAX+32*, TAX+35, TAX+36, TAX+37, TAX+38, TAX+39, TAX+40, TAX+41, TAX+42 , SLPROV+10~, SLPROV+25*, SLPROV+26, SLPROV+27 |
| INST | GETBP~, GETBP+69, GETBP+70, GETBP+71, GETBP+72, GETBP+73, GETBP+74, GETBP+75 |
| MAIN | SENDSF+13~, SENDSF+23*, SENDSF+24 |
| MODE | SLPROV+10~ |
| NAME | SLPROV+10~, SLPROV+26*, SLPROV+27*, SLPROV+28 |
| NVAFAC | B+16~, B+60*, B+61, B+63 |
| OUT | SLPROV+10~, SLPROV+28*, SLPROV+30*, SLPROV+34*, SLPROV+37*, SLPROV+41 |
| PIA | BPPAR+2~, BPPAR+3 |
| PIA("P" | BPPAR+4 |
| PRNUM | SLPROV+10~ |
| PRTYPE | SLPROV+10~, SLPROV+17, SLPROV+18, SLPROV+19, SLPROV+20, SLPROV+21, SLPROV+23, SLPROV+31, SLPROV+32 |
| RXFLG | B+16~, B+70*, B+72, B+77 |
| SEND | SENDSF+13~, SENDSF+14*, SENDSF+28*, SENDSFX+1 |
| SFTAX | TAX+4~, TAX+18*, TAX+19*, TAX+20*, TAX+21*, TAX+35 |
| SLC | SLPROV+10~, SLPROV+15*, SLPROV+16, SLPROV+23, SLPROV+31, SLPROV+32, SLPROV+42 |
| SUB | GETBP~, GETBP+22, GETBP+69, GETBP+70, GETBP+71, GETBP+72, GETBP+73, GETBP+74, GETBP+75, GETBP+76 , GETBP+81, GETBP+83, GETBP+84, GETBP+85, GETBP+86, GETBP+87 |
| TMP | SLPROV+10~, SLPROV+28* |
| TYPE | SLPROV~, SLPROV+16, SLPROV+17, SLPROV+18, SLPROV+19, SLPROV+20, SLPROV+21 |
| U | B+26, B+28, B+30, B+32, B+60, B+62, B+63, B+65, B+66, B+80 , B+87, B+88, B+94, B+95, B+101, B1+3, B1+6, CHK+9, TAX+8, TAX+14 , TAX+19, TAX+20, TAX+35, TAX+36, TAX+37, TAX+38, TAX+39, TAX+40, TAX+41, TAX+42 , GETBP+83, GETBP+84, GETBP+85, GETBP+86, GETBP+87, SENDSF+20, SENDSF+22, SLPROV+25, SLPROV+26, SLPROV+27 , SLPROV+28, SLPROV+30, SLPROV+34, SLPROV+37 |
| X | B+16~, TAX+5~ |
| Y | B+16~, TAX+5~ |
| Z | B+16~, B+17*, B+19*, B+20*, B+22*, B+30*, B+32*, B+62*, B+63*, B+65* , B+66*, B+80*, B+87*, B+88*, B+94*, B+95*, B+101*, B1+3*, B1+6*, BX+1 , BPCHKN+1~*, BPCHKN+2*, BPCHKNX+1, BPCHKA+1~*, BPCHKA+2*, BPCHKAX+1, BPFACTYP+1~*, BPFACTYP+2*, BPFACTPX+1, BPPAR+2~ , BPPAR+4*, BPPARX+1 |