IBCEU1 ;ALB/TMP - EDI UTILITIES FOR EOB PROCESSING ;10-FEB-99
Source file <IBCEU1.m>
| 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 |
| Package | Total | Caller Graph |
|---|---|---|
| Integrated Billing | 6 | IBCCCB IBCECOB2 IBCEU0 IBCEU6 ^IBA(364.5 ^IBA(364.7 |
| Name | Comments | DBIA/ICR reference |
|---|---|---|
| CCOB1(IBIFN,NODE,SEQ,IBRSBTST) | ; Extract Claim level COB data
; for a bill IBIFN ; NODE = the file 361.1 node(s) to be returned, separated by commas ; SEQ = the specific insurance sequence you want returned. If not = ; 1, 2, or 3, all are returned ; Returns IBXDATA(COB,n,node) where COB = COB insurance sequence, ; n is the entry number in file 361.1 and node is the node requested ; = the requested node's data ; IBRSBTST=1, this indicates the claim is being resubmitted as a "TEST" ; claim and should be used be the OUTPUT FORMATTER entries ; to determine what COB information is going out. - IB*2*608 (vd) |
|
| CCAS1(IBIFN,SEQ,IBRSBTST) | ; Extract all MEDICARE COB claim level adjustment data
; for a bill IBIFN (subfile 361.11 in file 361.1) ; SEQ = the specific insurance sequence you want returned. If not = ; 1, 2, or 3, all are returned ; Returns IBXDATA(COB,n) where COB = COB insurance sequence, ; n is the entry number in file 361.1 and ; = the 0-node of the subfile entry (361.11) ; and IBXDATA(COB,n,m) where m is a sequential # and ; = this level's 0-node ; IBRSBTST=1, this indicates the claim is being resubmitted as a "TEST" ; claim and should be used be the OUTPUT FORMATTER entries ; to determine what COB information is going out. - IB*2*608 (vd) |
|
| SEQ(A) | ; Translate sequence # A into corresponding letter representation
|
|
| EOBTOT(IBIFN,IBCOBN) | ; Total all EOB's for a bill's COB sequence
; Function returns the total of all EOB's for a specific COB seq ; IBIFN = ien of bill in file 399 ; IBCOBN = the # of the COB sequence you want EOB/MRA total for (1-3) |
|
| LCOBOUT(IBXSAVE,IBXDATA,COL) | ; Output the line adjustment reasons COB
; line # data for an electronic claim ; IBXSAVE,IBXDATA = arrays holding formatter information for claim - ; pass by reference ; COL = the column in the 837 flat file being output for LCAS record |
|
| CCOBOUT(IBXSAVE,IBXDATA,COL) | ; Output the claim adjustment reasons COB
; data for an electronic claim ; IBXSAVE,IBXDATA = arrays holding formatter information for claim - ; pass by reference ; COL = the column in the 837 flat file being output for CCAS record |
|
| COBOUT(IBXSAVE,IBXDATA,CL) | ; build LCOB segment data
; The IBXSAVE array used here is built by INS-2, then LCOB-1.9 ; This is basically the 361.115, but all the piece numbers here in this ; local array are one higher than the pieces in subfile 361.115. |
|
| XCOBOUT(IBXSAVE,IBXDATA,CL) | ; build LCOB segment data
; The IBXSAVE array used here is built by INS-2, then LCOB-1.9 ; This is basically the 361.115, but all the piece numbers here in this ; local array are one higher than the pieces in subfile 361.115. |
|
| COBPYRID(IBXIEN,IBXSAVE,IBXDATA) | ; cob insurance company payer id
|
|
| COBPYRX | ;
|
|
| EOBELIG(IBEOB,IBMRAF,IBCURR) | ; EOB eligibility for secondary claim
; Function to decide if EOB entry in file 361.1 (ien=IBEOB) is ; eligible to be included for secondary claim creation process ; The EOB is not eligible if the review status is not 3, or if there ; is no insurance sequence indicator, or if the EOB has been DENIED ; and the patient responsibility for that EOB is $0 and that EOB is ; not a split EOB. Split EOB's need to be included (IB*2*371). |
|
| EOBELIGX | ;
|
|
| EOBCNT(IBIFN) | ; This function counts up the number of EOBs that are eligible
; for the secondary claim creation process for a given bill#. |
|
| EOBCNTX | ;
|
|
| LPTRESP(IBIFN,IBXSAVE,IBXDATA,CL) | ||
| LPREXIST(EOBIEN) | ||
| CHKCCOB1(IBIFN,IBS) | ||
| CKCOBTST(IBXIEN,IBXSAVE,Z0,Z,IBRSBTST) |
| Name | Field # of Occurrence |
|---|---|
| $$PTRESPI^IBCECOB1 | EOBELIG+24 |
| $$COB^IBCEF | CCOB1+18, EOBELIG+14 |
| $$COBN^IBCEF | CCOB1+19, CCAS1+16, CKCOBTST+7 |
| $$FT^IBCEF | EOBELIG+24 |
| ALLPAYID^IBCEF2 | COBPYRID+12 |
| ID^IBCEF2 | LCOBOUT+15, LCOBOUT+16, LCOBOUT+24, CCOBOUT+12, CCOBOUT+20 |
| $$DOLLAR^IBCEFG1 | LPTRESP+15 |
| $$SPLIT^IBCEMU1 | EOBELIG+25 |
| $$MCRONBIL^IBEFUNC | CCOB1+22 |
| Name | Line Occurrences (* Changed, ! Killed) |
|---|---|
| ^DGCR(399 - [#399] | CCOB1+17, CCAS1+14 |
| ^IBM(361.1 - [#361.1] | CCOB1+26, CCOB1+28, CCOB1+34, CCAS1+18, CCAS1+20, CCAS1+23, CCAS1+26, EOBTOT+7, EOBTOT+10, EOBTOT+12 , EOBELIG+16, EOBELIG+18, EOBELIG+23, EOBCNT+4, LPREXIST+5, LPREXIST+6, LPREXIST+7, LPREXIST+8, LPREXIST+9 |
| Name | Field # of Occurrence |
|---|---|
| ^( | CCAS1+23, CCAS1+26 |
| >> | Not killed explicitly |
| * | Changed |
| ! | Killed |
| ~ | Newed |
| Name | Field # of Occurrence |
|---|---|
| A | CCOB1+12~, CCOB1+32*, CCOB1+33, CCOB1+34, CCOB1+38, CCOB1+40, SEQ~, SEQ+1*, SEQ+2*, SEQ+3 , CKCOBTST+5~, CKCOBTST+7*, CKCOBTST+13*, CKCOBTST+14, CKCOBTST+15 |
| B | CCOB1+12~, CCOB1+26*, CCAS1+12~, CCAS1+18* |
| C | CCOB1+12~, CCOB1+26*, CCOB1+27, CCOB1+28, CCOB1+34, CCOB1+38, CCOB1+40, CCAS1+12~, CCAS1+18*, CCAS1+19 , CCAS1+20, CCAS1+23, CCAS1+26 |
| CAS | LPREXIST+2~, LPREXIST+6*, LPREXIST+7, LPREXIST+8, LPREXIST+9 |
| CL | COBOUT~, COBOUT+10, COBOUT+11, COBOUT+13, XCOBOUT~, XCOBOUT+10, XCOBOUT+11, LPTRESP~, LPTRESP+3*, LPTRESP+10 , LPREXIST+2~, LPREXIST+5*, LPREXIST+6, LPREXIST+7, LPREXIST+8, LPREXIST+9 |
| CNT | EOBCNT+2~, EOBCNT+3*, EOBCNT+5*, EOBCNTX+1 |
| COBSEQ | LCOBOUT+5~, LCOBOUT+11*, LCOBOUT+12*, LCOBOUT+15, LCOBOUT+19, LCOBOUT+22, CCOBOUT+5~, CCOBOUT+9*, CCOBOUT+10*, CCOBOUT+12 , CCOBOUT+13, CCOBOUT+15, CCOBOUT+18 |
| COL | LCOBOUT~, LCOBOUT+7, LCOBOUT+8, LCOBOUT+15, LCOBOUT+16, LCOBOUT+17, LCOBOUT+21, LCOBOUT+22, LCOBOUT+23, LCOBOUT+24 , CCOBOUT~, CCOBOUT+7, CCOBOUT+8, CCOBOUT+12, CCOBOUT+13, CCOBOUT+17, CCOBOUT+18, CCOBOUT+19, CCOBOUT+20 |
| CSEQ | CCOB1+12~, CCOB1+19*, CCOB1+29, CCAS1+12~, CCAS1+16*, CCAS1+21 |
| CT | COBPYRID+1~, COBPYRID+13*, COBPYRID+17* |
| CURSEQ | CKCOBTST+5~, CKCOBTST+7*, CKCOBTST+14 |
| D | CCAS1+12~, CCAS1+23*, CCAS1+24, CCAS1+26, CCAS1+28 |
| DATA | LCOBOUT+5~, LCOBOUT+16*, LCOBOUT+22*, LCOBOUT+23, LCOBOUT+24, CCOBOUT+5~, CCOBOUT+18*, CCOBOUT+19, CCOBOUT+20 |
| E | CCAS1+12~, CCAS1+25*, CCAS1+26* |
| ELIG | EOBELIG+11~, EOBELIG+12*, EOBELIG+27*, EOBELIGX+1 |
| EOBIEN | LPREXIST~, LPREXIST+4, LPREXIST+5, LPREXIST+6, LPREXIST+7, LPREXIST+8, LPREXIST+9, CHKCCOB1+2~, CHKCCOB1+9*, CHKCCOB1+10 |
| GRPCD | LCOBOUT+5~, LCOBOUT+12*, LCOBOUT+17, LCOBOUT+19, LCOBOUT+22 |
| GRPSEQ | CCOBOUT+5~, CCOBOUT+10*, CCOBOUT+13, CCOBOUT+15, CCOBOUT+18 |
| IB | CCOB1+12~, CCOB1+17*, CCOB1+26, CCAS1+12~, CCAS1+14*, CCAS1+18 |
| IB0 | CCAS1+12~, CCAS1+23*, CCAS1+24 |
| IB00 | CCAS1+12~, CCAS1+26*, CCAS1+28 |
| IBA | CCAS1+12~, CCAS1+23*, CCAS1+25*, CCAS1+27*, CCAS1+28 |
| IBBILL | CCOB1+12~, CCOB1+26*, CCAS1+12~, CCAS1+18* |
| IBCOBN | EOBTOT~, EOBTOT+7, EOBTOT+10 |
| IBCURR | CCOB1+12~, CCOB1+18*, CCOB1+22, CCOB1+27, EOBELIG~, EOBELIG+14*, EOBELIG+22 |
| IBDATA | EOBELIG+11~, EOBELIG+16*, EOBELIG+17, EOBELIG+19, EOBELIG+20, EOBELIG+22, EOBELIG+24, EOBELIG+25 |
| IBEOB | EOBELIG~, EOBELIG+15, EOBELIG+16, EOBELIG+18, EOBELIG+23, EOBELIG+24, EOBELIG+25 |
| IBIFN | CCOB1~, CCOB1+17, CCOB1+18, CCOB1+19, CCOB1+22, CCAS1~, CCAS1+14, CCAS1+16, EOBTOT~, EOBTOT+7 , EOBTOT+10, EOBELIG+14, EOBCNT~, EOBCNT+4, LPTRESP~, LPTRESP+9, CHKCCOB1~, CHKCCOB1+8 |
| IBMRAF | CCOB1+12~, CCOB1+22*, CCOB1+27, EOBELIG~, EOBELIG+17 |
| IBN | CCOB1+12~, CCOB1+34*, CCOB1+38*, CCOB1+40 |
| IBPRDATA | LPTRESP+2~, LPTRESP+13*, LPTRESP+14 |
| IBPTCNT | LPTRESP+2~, LPTRESP+4*, LPTRESP+8*, LPTRESP+9, LPTRESP+10, LPTRESP+11, LPTRESP+14, LPTRESP+15 |
| IBPTM | LPTRESP+2~, LPTRESP+6*, LPTRESP+7, LPTRESP+9, LPTRESP+12, LPTRESP+13 |
| IBPTP | LPTRESP+2~, LPTRESP+7*, LPTRESP+12, LPTRESP+13 |
| IBPTPR | LPTRESP+2~, LPTRESP+12*, LPTRESP+13 |
| IBPTZ | LPTRESP+2~, LPTRESP+5*, LPTRESP+6, LPTRESP+7, LPTRESP+12, LPTRESP+13 |
| IBRSBTST | CCOB1~, CCOB1+29, CCAS1~, CCAS1+21, CKCOBTST~, CKCOBTST+6 |
| IBS | CCOB1+12~, CCOB1+28*, CCOB1+29, CCOB1+30, CCOB1+40, CCAS1+12~, CCAS1+20*, CCAS1+21, CCAS1+22, CCAS1+24 , CCAS1+28, CHKCCOB1~, CHKCCOB1+8, CHKCCOB1+9 |
| IBTOT | EOBTOT+5~, EOBTOT+6*, EOBTOT+9*, EOBTOT+12*, EOBTOT+13 |
| >> IBX0 | CCOB1+38 |
| IBXDATA | CCOB1+14!, LCOBOUT~, LCOBOUT+5!, CCOBOUT~, CCOBOUT+5!, COBOUT~, XCOBOUT~, COBPYRID~, COBPYRID+2!, LPTRESP~ , CHKCCOB1+2~ |
| IBXDATA( | CCOB1+40*, CCAS1+24*, CCAS1+28*, LCOBOUT+15*, LCOBOUT+16*, LCOBOUT+17*, LCOBOUT+23*, LCOBOUT+24*, CCOBOUT+12*, CCOBOUT+13* , CCOBOUT+19*, CCOBOUT+20*, COBOUT+10*, COBOUT+14*, XCOBOUT+10*, XCOBOUT+12*, COBPYRID+17*, LPTRESP+9*, LPTRESP+10*, LPTRESP+11* , LPTRESP+14*, LPTRESP+15*, CHKCCOB1+9 |
| IBXIEN | COBPYRID~, COBPYRID+12, CKCOBTST~, CKCOBTST+7 |
| IBXSAVE | LCOBOUT~, CCOBOUT~, COBOUT~, XCOBOUT~, COBPYRID~, LPTRESP~, CKCOBTST~ |
| IBXSAVE( | CKCOBTST+6, CKCOBTST+10, CKCOBTST+11, CKCOBTST+13, CKCOBTST+15 |
| IBXSAVE("CCAS" | CCOBOUT+10, CCOBOUT+13, CCOBOUT+15, CCOBOUT+18 |
| IBXSAVE("LCOB" | LCOBOUT+10, LCOBOUT+12, LCOBOUT+19, LCOBOUT+22, COBOUT+6, COBOUT+7, COBOUT+8, COBOUT+11, COBOUT+13, XCOBOUT+5 , XCOBOUT+7, XCOBOUT+8, XCOBOUT+11, COBPYRID+3, COBPYRID+14, COBPYRID+16, LPTRESP+5, LPTRESP+6, LPTRESP+7, LPTRESP+12 , LPTRESP+13, CKCOBTST+6*, CKCOBTST+10*, CKCOBTST+11*, CKCOBTST+15* |
| IEN | EOBCNT+2~, EOBCNT+3*, EOBCNT+4*, EOBCNT+5 |
| LINE | LCOBOUT+5~, LCOBOUT+6*, LCOBOUT+10*, LCOBOUT+12, LCOBOUT+16, LCOBOUT+19, LCOBOUT+22 |
| M | COBOUT+4~, COBOUT+7*, COBOUT+8, COBOUT+10, COBOUT+11, XCOBOUT+4~, XCOBOUT+7*, XCOBOUT+8, XCOBOUT+10, XCOBOUT+11 |
| N | COBOUT+4~, COBOUT+5*, COBOUT+9*, COBOUT+10, COBOUT+14, XCOBOUT+4~, XCOBOUT+5*, XCOBOUT+6*, XCOBOUT+10, XCOBOUT+12 , COBPYRID+1~, COBPYRID+13*, COBPYRID+14*, COBPYRID+16 |
| NODE | CCOB1~, CCOB1+16*, CCOB1+31, CCOB1+32 |
| NUM | COBPYRID+1~, COBPYRID+12 |
| NUM( | COBPYRID+17 |
| P | COBOUT+4~, COBOUT+8*, COBOUT+11, XCOBOUT+4~, XCOBOUT+5*, XCOBOUT+8*, XCOBOUT+11 |
| PCCL | COBOUT+4~, COBOUT+11*, COBOUT+13*, COBOUT+14, XCOBOUT+4~, XCOBOUT+11*, XCOBOUT+12 |
| PR | LPREXIST+2~, LPREXIST+7*, LPREXIST+8, LPREXIST+9 |
| PRSEQ | LPREXIST+2~, LPREXIST+8*, LPREXIST+9 |
| PRZ | LPREXIST+2~, LPREXIST+9* |
| PTRESP | EOBELIG+11~, EOBELIG+23*, EOBELIG+24*, EOBELIG+25 |
| RCCT | LCOBOUT+5~, LCOBOUT+18*, LCOBOUT+20*, LCOBOUT+21, LCOBOUT+23, LCOBOUT+24*, CCOBOUT+5~, CCOBOUT+14*, CCOBOUT+16*, CCOBOUT+17 , CCOBOUT+19, CCOBOUT+20* |
| RCPC | LCOBOUT+5~, LCOBOUT+7*, LCOBOUT+22, CCOBOUT+5~, CCOBOUT+7*, CCOBOUT+18 |
| RCREC | LCOBOUT+5~, LCOBOUT+8*, LCOBOUT+21, LCOBOUT+23, LCOBOUT+24, CCOBOUT+5~, CCOBOUT+8*, CCOBOUT+17, CCOBOUT+19, CCOBOUT+20 |
| RECCT | LCOBOUT+5~, LCOBOUT+6*, LCOBOUT+13*, LCOBOUT+15, LCOBOUT+16, LCOBOUT+17, LCOBOUT+23, LCOBOUT+24*, CCOBOUT+5~, CCOBOUT+6* , CCOBOUT+11*, CCOBOUT+12, CCOBOUT+13, CCOBOUT+19, CCOBOUT+20* |
| RESULT | LPREXIST+2~, LPREXIST+3*, LPREXIST+4, LPREXIST+10*, LPREXIST+11, CHKCCOB1+10*, CHKCCOB1+11 |
| RESULTS | CHKCCOB1+2~, CHKCCOB1+3* |
| SEQ | CCOB1~, CCOB1+24*, CCOB1+30, CCAS1~, CCAS1+15*, CCAS1+22, LCOBOUT+5~, LCOBOUT+18*, LCOBOUT+19*, LCOBOUT+22 , CCOBOUT+5~, CCOBOUT+14*, CCOBOUT+15*, CCOBOUT+18 |
| SEQLINE | LCOBOUT+5~, LCOBOUT+12*, LCOBOUT+19, LCOBOUT+22 |
| U | CCOB1+17, CCOB1+22, CCOB1+26, CCOB1+28, CCOB1+38, CCOB1+40, CCAS1+14, CCAS1+18, CCAS1+20, CCAS1+28 , EOBTOT+12, LCOBOUT+19, LCOBOUT+22, CCOBOUT+13, CCOBOUT+15, CCOBOUT+18, COBOUT+11, COBOUT+13, XCOBOUT+11, EOBELIG+17 , EOBELIG+19, EOBELIG+20, EOBELIG+22, EOBELIG+23, EOBELIG+25, LPTRESP+14 |
| XX | CKCOBTST+5~, CKCOBTST+11* |
| Z | CCOB1+12~, CCOB1+31*, CCOB1+32, EOBTOT+5~, EOBTOT+9*, EOBTOT+10*, EOBTOT+12, COBOUT+4~, COBOUT+5*, COBOUT+6* , COBOUT+7, COBOUT+8, COBOUT+11, COBOUT+13, XCOBOUT+4~, XCOBOUT+5*, XCOBOUT+7, XCOBOUT+8, XCOBOUT+11, COBPYRID+1~ , COBPYRID+15*, COBPYRID+16*, COBPYRID+17, CKCOBTST~, CKCOBTST+6, CKCOBTST+10, CKCOBTST+11, CKCOBTST+13, CKCOBTST+15 |
| Z0 | EOBTOT+5~, CKCOBTST~, CKCOBTST+6, CKCOBTST+10, CKCOBTST+11, CKCOBTST+13, CKCOBTST+15 |