IBCEF3 ;ALB/TMP - FORMATTER SPECIFIC BILL FLD FUNCTIONS ;17-JUNE-96
Source file <IBCEF3.m>
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 |