Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Info |  Source |  Call Graph |  Caller Graph |  Entry Points |  External References |  Global Variables Directly Accessed |  Label References |  Naked Globals |  Local Variables  | All
Print Page as PDF
Routine: IBCEF3

Package: Integrated Billing

Routine: IBCEF3


Information

IBCEF3 ;ALB/TMP - FORMATTER SPECIFIC BILL FLD FUNCTIONS ;17-JUNE-96

Source Information

Source file <IBCEF3.m>

Call Graph

Call Graph

Call Graph Total: 8

Package Total Call Graph
Integrated Billing 8 $$ICD9^IBACSV  F^IBCEF  ($$ALLPTYP,$$ALLTYP,$$INSTYP,$$POLTYP)^IBCEF31  $$DOL^IBCEF77  ($$FORMAT,SETGBL)^IBCEFG  $$DT^IBCEFG1  $$FO^IBCNEUT1  ($$PINB,SET)^IBCSC5B  

Caller Graph

Legends:

Legend of Colors

Package Component Superscript legend

action A extended action Ea event driver Ed subscriber Su protocol O limited protocol LP run routine RR broker B edit E server Se print P screenman SM inquire I

Caller Graph

Caller Graph Total: 7

Package Total Caller Graph
Integrated Billing 7 IBCEF1  IBCEF31  IBCEF75  IBCEF77  IBCEF80  IBCEU3  IBCF33  

Entry Points

Name Comments DBIA/ICR reference
MPG(PG,FLDS,FORM) ; Set static flds on pages after page 1
; for either 1500 or UB
; PG = page #
; FORM= 1 for UB, otherwise for 1500
; FLDS: array passed by reference and containing lines OR
; line/column from pg 1 to repeat on subsequent pages
; Format: FLDS(LINE,COL) or FLDS(LINE) for whole line
; CMS-1500: LINES 1-5,7-43,57 from col 1 to 50, 58-63
; UB: see CKPGUB for lines and columns
NONSERV(Z,Z0) ; Set variable if non-service/non-text data is present for box
; 24 of CMS-1500
; Z = sequence of IBXSAVE being processed
; Z0 = sequnce within IBXDATA to indicate actual line #
PG(VAL,LNCT) ;Set next pg for CMS-1500 lines
MPGUB(PG,OFFSET,VAL,IBLN,IBCOL,NOFORM) ; Set up pages > 1 for UB overflows
; PG = Page # to set (REQUIRED)
; OFFSET = offset from first line this should be extracted into
; 0 = first line (REQUIRED)
; VAL = value to set (REQUIRED)
; IBLN = line to set data at (if null, uses IBXLN)
; IBCOL = column to set data at (if null, uses IBXCOL)
; NOFORM = don't format, just output data as passed
; Assumes formatter IBXLN,IBXCOL variables exist
CKREV(CT,VAL) ; Check too many rev code lines to fit on page
; This procedure is only called when CT>22 (i.e. 23 or more)
CKPGUB ; Check to see if multiple UB pages are needed then populate
; static flds from page 1, add page numbers
HCPC(R) ;FORMAT HCPC fld FOR UB (returns formatted value)
; R = flag for type of fld (1/2/3) being printed in rev code block
PROS(IBIFN) ; Extract billable prosthetics for 837
PROSQ
B24(IBXSV,IBIFN,IBNOSHOW) ; Code to execute to set up IBXSV("BOX24") for
; print or IBXSAVE("OUTPT") for transmit - called by output formatter
; IBNOSHOW = 1 if not to show error/warning text lines
; Pass IBXSV by reference
ALLTYP(IBIFN)
INSTYP(IBIFN,SEQ)
POLTYP(IBIFN,IBSEQ)
ALLPTYP(IBIFN)
FILL(Z) ;
XPROC(DATA,CT) ; Output any UB procedures after 6 on new page(s)
; DATA = output data from IBXSAVE("PROC",CT)
; CT = array sequence # of the procedure being output
; Only used for local prints
XDIAG(DATA,CT) ; Output any UB other diagnoses after 8 on new page(s)
; DATA = output data from IBXSAVE("DX",CT)
; CT = array sequence # of the diagnosis being output
; Only used for local prints
XVAL(DATA,CT) ; Output any UB value codes after 12 on new page(s)
; DATA = output data from IBXSAVE("VC",CT)
; CT = array sequence # of the value code being output
XCC(DATA,CT) ; Output any UB condition codes after 11 on new page(s)
; 11 condition codes per page, starting columns 34 thru 64
; DATA = output data from IBXSAVE("CC",CT)
; CT = array sequence # of the condition code being output
XOCC(DATA,CT,FL) ; Output any UB occurrence codes after 8 (2 per form
; locators 31-34) on new page(s)
; DATA = data from IBXSAVE("OCC",z) to be output
; CT = array sequence # of occurrence code being output
; FL = # of form locator being populated with the occ code
XOCCS(DATA,CT,FL) ; Output any UB occurrence span codes after 4 on new page(s)
; DATA = data from IBXSAVE("OCCS",z) to be output
; CT = array sequence # of occurrence span code being output
; FL = # of form locator being populated (either FL 35 or 36)
FORMAT(VAL,IBX0,IBXDA) ;
OUTPDT(IBIFN,IBXSAVE,IBXDATA) ; Returns outpatient service to date
; formatted CCYYMMDD for UB 837
; IBIFN = ien of bill (file 399)
; IBXSAVE = pass by reference for IBXSAVE("INPT") and IBXSAVE("DATE")
; IBXDATA = array with formatted date or each line item - CCYYMMDD

External References

Name Field # of Occurrence
$$ICD9^IBACSV XDIAG+6
F^IBCEF B24+8
$$ALLPTYP^IBCEF31 ALLPTYP
$$ALLTYP^IBCEF31 ALLTYP
$$INSTYP^IBCEF31 INSTYP
$$POLTYP^IBCEF31 POLTYP
$$DOL^IBCEF77 MPG+24, MPG+25, CKPGUB+30, CKPGUB+32
$$FORMAT^IBCEFG FORMAT+1
SETGBL^IBCEFG MPG+18, MPG+19, MPG+24, MPG+25, MPG+32, MPG+33, MPG+35, MPG+36, PG+5, MPGUB+13
$$DT^IBCEFG1 OUTPDT+6
$$FO^IBCNEUT1 MPG+17
$$PINB^IBCSC5B PROS+6
SET^IBCSC5B PROS+2

Global Variables Directly Accessed

Name Line Occurrences  (* Changed,  ! Killed)
^IBA(364.6 - [#364.6] FORMAT+1
^TMP("IBTX" B24+5
^TMP("IBXDATA" MPG+15, MPG+32, MPG+33, CKPGUB+5, CKPGUB+6, CKPGUB+7!, CKPGUB+21
^TMP($J CKPGUB+28

Label References

Name Line Occurrences
$$FORMAT PG+5, MPGUB+12
MPG CKPGUB+24
MPGUB CKREV+3, CKPGUB+22, CKPGUB+23, CKPGUB+34, CKPGUB+35, CKPGUB+36, XPROC+7, XPROC+8, XDIAG+7, XVAL+6
, XVAL+7, XCC+7, XOCC+8, XOCC+9, XOCCS+8, XOCCS+9, XOCCS+10
PROSQ PROS+3

Naked Globals

Name Field # of Occurrence
^( MPG+32, CKPGUB+6, CKPGUB+28

Local Variables

Legend:

>> Not killed explicitly
* Changed
! Killed
~ Newed

Name Field # of Occurrence
COL XPROC+4~, XPROC+6*, XPROC+7, XPROC+8, XDIAG+4~, XDIAG+5*, XDIAG+7, XVAL+4~, XVAL+5*, XVAL+6
, XVAL+7, XCC+5~, XCC+6*, XCC+7, XOCC+6~, XOCC+7*, XOCC+8, XOCC+9, XOCCS+5~, XOCCS+7*
, XOCCS+8, XOCCS+9, XOCCS+10
CT CKREV~, CKREV+3, PROS+1~, PROS+3*, PROS+4*, PROS+5*, PROS+8, PROSQ, B24+12~, B24+13*
, XPROC~, XPROC+5, XPROC+6, XDIAG~, XDIAG+5, XVAL~, XVAL+5, XCC~, XCC+6, XOCC~
, XOCC+7, XOCCS~, XOCCS+6
DATA XPROC~, XPROC+7, XPROC+8, XDIAG~, XDIAG+6*, XDIAG+7, XVAL~, XVAL+6, XVAL+7, XCC~
, XCC+7, XOCC~, XOCC+8, XOCC+9, XOCCS~, XOCCS+8, XOCCS+9, XOCCS+10
FL XOCC~, XOCC+7, XOCCS~, XOCCS+7
FLDS MPG~, CKPGUB+3~, CKPGUB+24
FLDS( MPG+30, MPG+31, MPG+33, CKPGUB+10*, CKPGUB+12*, CKPGUB+14*, CKPGUB+15*, CKPGUB+16*
FLDS(41 CKPGUB+13*
FLDS(9 CKPGUB+11*
FORM MPG~, MPG+11*, MPG+14, MPG+34
IB CKPGUB+20~, CKPGUB+21*
IBARRAY PROS+1~, PROS+2, PROS+3
IBARRAY( PROS+5, PROS+6, PROS+8
IBCOL MPGUB~, MPGUB+11*, MPGUB+13
IBIFN PROS~, PROS+2, B24~, B24+5, B24+7*, B24+8, ALLTYP~, INSTYP~, POLTYP~, ALLPTYP~
, OUTPDT~
IBL PG+3~, PG+4*, PG+5
IBLN MPGUB~, MPGUB+10*, MPGUB+13
IBNOSHOW B24~, B24+9
IBP PG+3~, PG+4*, PG+5, CKPGUB+3~, CKPGUB+5*, CKPGUB+6*, CKPGUB+7, CKPGUB+20~
IBPG CKPGUB+3~, CKPGUB+18*, CKPGUB+21, CKPGUB+22, CKPGUB+23, CKPGUB+24, CKPGUB+34, CKPGUB+35, CKPGUB+36
IBSEQ POLTYP~
IBSUB B24+4~, B24+5*, B24+6, B24+8, B24+9, B24+10, B24+13
IBX0 FORMAT~, FORMAT+1
>> IBXCOL PG+5, MPGUB+11
IBXDA PG+5, MPGUB+12, FORMAT~, FORMAT+1
IBXDATA B24+10, OUTPDT~
IBXDATA( PG+6!, PROS+8*, B24+13, OUTPDT+6*
>> IBXIEN B24+7
>> IBXLN PG+5, MPGUB+10
>> IBXLOOP("IBX0" PG+5, MPGUB+12
>> IBXREC MPG+15, MPG+32, MPG+33, CKPGUB+5, CKPGUB+6, CKPGUB+7, CKPGUB+21
IBXSAVE OUTPDT~
IBXSAVE("BDUE" MPG+28!
IBXSAVE("BOX24" NONSERV+4
IBXSAVE("DATE" OUTPDT+6, OUTPDT+7!
IBXSAVE("INPT" OUTPDT+6
IBXSAVE("NON-SERV" NONSERV+4*
IBXSAVE("PAID" MPG+25, MPG+28!
IBXSAVE("PTOT" MPG+28!
IBXSAVE("TOT" MPG+24, MPG+28!
>> IBXSIZE MPG+18, MPG+19, MPG+24, MPG+25, MPG+32, MPG+33, MPG+35, MPG+36, PG+5, MPGUB+13
IBXSV B24~
IBXSV( B24+6!, B24+10*, B24+13*
LNCT PG~, PG+4, PG+6
LPG MPG+10~, MPG+15*, MPG+16, MPG+19, MPG+20, MPG+34, CKPGUB+3~, CKPGUB+5*, CKPGUB+6, CKPGUB+7*
CKPGUB+18, CKPGUB+23
NOFORM MPGUB~, MPGUB+12
OFFSET MPGUB~, MPGUB+13, XPROC+4~, XPROC+5*, XPROC+7, XPROC+8, XVAL+4~, XVAL+5*, XVAL+6, XVAL+7
, XOCC+6~, XOCC+7*, XOCC+8, XOCC+9, XOCCS+5~, XOCCS+6*, XOCCS+8, XOCCS+9, XOCCS+10
PG MPG~, MPG+16, MPG+18, MPG+19, MPG+20, MPG+24, MPG+25, MPG+32, MPG+33, MPG+34
, MPG+35, MPG+36, MPGUB~, MPGUB+13, XPROC+4~, XPROC+6*, XPROC+7, XPROC+8, XDIAG+4~, XDIAG+5*
, XDIAG+7, XVAL+4~, XVAL+5*, XVAL+6, XVAL+7, XCC+5~, XCC+6*, XCC+7, XOCC+6~, XOCC+7*
, XOCC+8, XOCC+9, XOCCS+5~, XOCCS+6*, XOCCS+8, XOCCS+9, XOCCS+10
PRCODE XPROC+4~
PROS PROS+1~, PROS+6*, PROS+8
Q XPROC+4~, XPROC+5*
R HCPC~, HCPC+2
SEQ INSTYP~
TOT1 CKPGUB+3~, CKPGUB+27*, CKPGUB+28*, CKPGUB+30*, CKPGUB+31*, CKPGUB+35
TOT2 CKPGUB+3~, CKPGUB+27*, CKPGUB+28*, CKPGUB+32*, CKPGUB+33*, CKPGUB+36
U NONSERV+4, CKPGUB+28, PROS+3, PROS+8, XPROC+7, XPROC+8, XDIAG+6, XVAL+6, XVAL+7, XOCC+8
, XOCC+9, XOCCS+8, XOCCS+9, XOCCS+10, FORMAT+1, OUTPDT+6
VAL PG~, PG+5*, MPGUB~, MPGUB+12*, MPGUB+13, CKREV~, CKREV+3, FORMAT~, FORMAT+1*, FORMAT+2
Z MPG+10~, MPG+16*, MPG+17*, MPG+18, MPG+19*, MPG+30*, MPG+31, MPG+32, MPG+33, NONSERV~
, NONSERV+4, CKPGUB+3~, CKPGUB+6*, CKPGUB+10*, CKPGUB+11*, CKPGUB+12*, CKPGUB+14*, CKPGUB+15*, CKPGUB+16*, CKPGUB+28*
, PROS+1~, PROS+4*, PROS+5*, PROS+6, PROS+8, B24+12~, B24+13*, FILL~, OUTPDT+5~, OUTPDT+6*
Z0 MPG+10~, MPG+32*, MPG+33*, NONSERV~, NONSERV+4, CKPGUB+3~, CKPGUB+6*, CKPGUB+28*, PROS+1~, PROS+5*
, PROS+6, PROS+8
Z1 MPG+10~, MPG+32*, MPG+33*
Info |  Source |  Call Graph |  Caller Graph |  Entry Points |  External References |  Global Variables Directly Accessed |  Label References |  Naked Globals |  Local Variables  | All