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 |  Local Variables |  All
Print Page as PDF
Routine: IBCRBG

Package: Integrated Billing

Routine: IBCRBG


Information

IBCRBG ;ALB/ARH - RATES: BILL SOURCE EVENTS (INPT) ;21 MAY 96

Source Information

Source file <IBCRBG.m>

Call Graph

Call Graph

Call Graph Total: 8

Package Total Call Graph
Integrated Billing 6 ($$CSVDATE,$$ICD9SYS,$$ICD9VER)^IBACSV  $$CURR^IBCEF2  INPTRSET^IBCRBG2  PTFCDS^IBCSC4F  ($$AD,$$LOS)^IBCU64  $$MCRWNR^IBEFUNC  
DRG Grouper 1 ^ICDDRG  
Kernel 1 ($$FMADD,$$FMDIFF)^XLFDT  

Caller Graph

Legends:

Legend of Colors

Package Component Superscript legend

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

Caller Graph

Caller Graph Total: 5

Package Total Caller Graph
Integrated Billing 5 IBCRBC1  IBCRBC11  IBCRBH1  IBCSC4F  IBJDB21  

Entry Points

Name Comments DBIA/ICR reference
PTF(PTF) ; find all movements in PTF for the admission by date and billing bedsection (501 movement)
; the movement date is the date the patient left the bedsection
; Output: ^TMP($J,"IBCRC-PTF", MOVE DT/TM)=MOVE DT/TM ^ BILL BED ^ SC FLAG ^ TRANSFER DRG ^ ^ SPECIALTY ^ MOVE #
SET ; checks a specific movement to determine if it should be billed and what the length of stay is
; setting of the movement date determines how many days are counted in the bedsection
PTFFY(PTF,BEGDT,ENDDT) ; add movement for FY (10/1) if date range covers FY and DRG changes
; the DRG may change on FY so check and if necessary add movement for pre-FY with old DRG
; Input: ^TMP($J,"IBCRC-PTF", move dt/tm) = move dt/tm ^ bill bs ^ sc flag ^ move drg ^ ^ specialty ^ move #
; Output: ^TMP($J,"IBCRC-PTF", move dt/tm) = move dt/tm ^ bill bs ^ sc flag ^ MOVE DRG ^ ward div ^ spec ^ move#
MVDRGQ
DXVER(DX,DATE) ; check the code version of the diagnosis matchs the code version on the date
; with ICD-10, bills may span the activation date and Dx may be coded in either version (should be ICD-10)
; returns null or if versions don't match then last ICD-9 date for ICD-9 Dx or first ICD-10 date for ICD-10 Dx
PTFDV(PTF) ; find all ward/location transfers in PTF for the patient to determine the site/division the patient was in
; the division of the ward will be added to the PTF bedsection movements
; Input: ^TMP($J,"IBCRC-PTF", move dt/tm) = move dt/tm ^ bill bs ^ sc flag ^ move drg ^ ^ specialty ^ move #
; Output: ^TMP($J,"IBCRC-PTF", move dt/tm) = move dt/tm ^ bill bs ^ sc flag ^ move drg ^ WARD DIV ^ spec ^ move#
; ^TMP($J,"IBCRC-DIV", TRANSFER DATE/TIME) = WARD DIVISION
INPTPTF(IBIFN,CS) ; search PTF record for billable bedsections, transfer DRGs, and length of stay
; - screens out days for pass, leave and SC treatment
; - adds charges for only one BS if the ins company does not allow multiple bedsections per bill (36,.06)
; Output: ^TMP($J,"IBCRC-INDT", BILLABLE DATE) = MOVE DT/TM ^ BILL BS ^ SC FLAG ^ DRG ^ DIV ^ SPECIALTY ^ MOVE #
BSLOS(IBBDT,IBEDT,IBTF,IBADM,IBINSMBS) ; from the array of PTF movments get all bedsections and their LOS covered by date range of the bill
; adds all days for first cronological bs if ins comp wants only a single bs per bill, even if not sequential
; the movement date is the date the patient left the bedsection, so admission date is not in PTF array
SPBB(SPCLTY) ; find the billable bedsection for a Specialty (42.4)
; returns billable bedsection IFN ^ billable bedsection name
BBS(X) ; returns true if pointer passed in is a billable bedsection ^ bedsection name
MVDRG(PTF,M,CDATE) ; Return the DRG for a specific PTF Movememt (M=move ifn)
; CDATE is optional, used if need to calculate DRG for some day within the move, not at the end date

External References

Name Field # of Occurrence
$$CSVDATE^IBACSV DXVER+5
$$ICD9SYS^IBACSV DXVER+5
$$ICD9VER^IBACSV DXVER+4
$$CURR^IBCEF2 INPTPTF+11
INPTRSET^IBCRBG2 INPTPTF+27
PTFCDS^IBCSC4F MVDRG+23, MVDRG+32, MVDRG+37
$$AD^IBCU64 BSLOS+13
$$LOS^IBCU64 SET+11
$$MCRWNR^IBEFUNC INPTPTF+11
^ICDDRG MVDRG+43
$$FMADD^XLFDT SET+13, DXVER+5
$$FMDIFF^XLFDT MVDRG+16

Global Variables Directly Accessed

Name Line Occurrences  (* Changed,  ! Killed)
^DGCR(399 - [#399] INPTPTF+8, INPTPTF+10, INPTPTF+14
^DGCR(399.1 - [#399.1] SPBB+4, BBS+1
^DGPM("APTF" INPTPTF+17
^DGPT - [#45] PTF+5, PTF+6, PTFDV+10, PTFDV+11, MVDRG+7, MVDRG+8, MVDRG+9, MVDRG+10, MVDRG+13, MVDRG+30
, MVDRG+31, MVDRG+35, MVDRG+36
^DIC(36 - [#36] INPTPTF+12
^DIC(42 - [#42] PTFDV+13
^DIC(42.4 - [#42.4] SPBB+3
^DPT - [#2] MVDRG+7
^TMP($J INPTPTF+6!, INPTPTF+25!, PTF+11*, BSLOS+15, SET+3, SET+13*, PTFDV+7, PTFDV+14*, PTFDV+17, PTFDV+18
, PTFDV+20*, PTFDV+23, PTFDV+24, PTFDV+25, PTFDV+26*, PTFFY+7, PTFFY+10, PTFFY+12*

Label References

Name Line Occurrences
$$DXVER MVDRG+41
$$MVDRG PTF+10, PTFFY+11
$$SPBB PTF+7
BSLOS INPTPTF+23
MVDRGQ MVDRG+7, MVDRG+8, MVDRG+27
PTF INPTPTF+19
PTFDV INPTPTF+20
PTFFY INPTPTF+21
SET BSLOS+15

Local Variables

Legend:

>> Not killed explicitly
* Changed
! Killed
~ Newed

Name Field # of Occurrence
AGE MVDRG+3~, MVDRG+16*
BEGDT PTFFY~, PTFFY+5, PTFFY+7
CDATE MVDRG~, MVDRG+40
CS INPTPTF~, INPTPTF+27
CSVDATE DXVER+3~, DXVER+5*
DATE DXVER~, DXVER+5
DFN INPTPTF+5~, INPTPTF+8*
DPT0 MVDRG+2~, MVDRG+7*, MVDRG+15, MVDRG+16
DT PTF+8, PTFDV+12, MVDRG+12, MVDRG+40
DX DXVER~, DXVER+4
DXVER DXVER+3~, DXVER+4*, DXVER+5
ENDDT PTFFY~
IB0 INPTPTF+5~, INPTPTF+8*, INPTPTF+9
IBADM INPTPTF+5~, INPTPTF+17*, INPTPTF+23, BSLOS~, BSLOS+13, SET+11
IBBDT INPTPTF+5~, INPTPTF+15*, INPTPTF+21, INPTPTF+23, BSLOS~, BSLOS+8, BSLOS+13, SET+8
IBBEG MVDRG+2~, MVDRG+13*, MVDRG+32, MVDRG+37
IBBEGDT PTFFY+4~, PTFFY+7*, PTFFY+8, PTFFY+9
IBBILLBS PTF+4~, PTF+7*, PTF+11
IBCHGDT SET+2~, SET+13*
IBDRG MVDRG+2~, MVDRG+5*, MVDRG+43*, MVDRGQ
IBDSST MVDRG+2~, MVDRG+10*, MVDRG+19, MVDRG+20, MVDRG+21
IBDX MVDRG+2~, MVDRG+24*, MVDRG+25
IBEDT INPTPTF+5~, INPTPTF+15*, INPTPTF+21, INPTPTF+23, BSLOS~, BSLOS+9, SET+9, SET+10
IBEND MVDRG+2~, MVDRG+12*, MVDRG+13, MVDRG+16, MVDRG+32, MVDRG+37
IBENDDT PTF+4~, PTF+8*, PTF+11, PTFDV+5~, PTFDV+12*, PTFDV+14, PTFDV+17*, PTFDV+18, PTFDV+20, PTFDV+23*
, PTFDV+24, PTFDV+26, PTFFY+4~, PTFFY+7*, PTFFY+8, PTFFY+9, PTFFY+10
IBFY PTFFY+4~, PTFFY+5*, PTFFY+9*, PTFFY+12
IBFYDRG PTFFY+4~, PTFFY+11*, PTFFY+12
IBI SET+2~, SET+13*, MVDRG+2~, MVDRG+24*, MVDRG+33*, MVDRG+38*
IBIFN INPTPTF~, INPTPTF+8, INPTPTF+10, INPTPTF+11, INPTPTF+14, INPTPTF+27
IBINSMBS INPTPTF+5~, INPTPTF+10*, INPTPTF+12*, INPTPTF+23, BSLOS~, SET+6
IBJ MVDRG+2~, MVDRG+24*, MVDRG+25*, MVDRG+29*, MVDRG+33*, MVDRG+38*
IBLASTDT BSLOS+7~, BSLOS+15*, SET+6, SET+8
IBMBDT SET+2~, SET+8*, SET+11, SET+13
IBMDRG PTF+4~, PTF+10*, PTF+11
IBMEDT SET+2~, SET+9*, SET+11
IBMLOS SET+2~, SET+11*, SET+13
IBMOVE PTF+4~, PTF+5*, PTF+6, PTF+10, PTF+11, PTFFY+4~, PTFFY+10*, PTFFY+11
IBMSC PTF+4~, PTF+9*, PTF+11
IBMTF SET+2~, SET+10*, SET+11
IBMVDRG PTFFY+4~, PTFFY+10*, PTFFY+12
IBMVDT PTFDV+5~, PTFDV+18*, PTFDV+19, PTFDV+20
IBMVLN PTF+4~, PTF+6*, PTF+7, PTF+8, PTF+9, PTF+11, SET+2~, SET+3*, SET+4, SET+5
, SET+13, PTFFY+4~, PTFFY+10*, PTFFY+12*
IBP MVDRG+2~, MVDRG+30*, MVDRG+31, MVDRG+32, MVDRG+35*, MVDRG+36, MVDRG+37
IBPRC MVDRG+2~, MVDRG+33*, MVDRG+38*
IBPRC0 MVDRG+2~, MVDRG+31*, MVDRG+32, MVDRG+36*, MVDRG+37
IBS BSLOS+7~, BSLOS+15*, SET+3, SET+9, SET+10
IBSBDT BSLOS+7~, BSLOS+8*, BSLOS+13*, BSLOS+15
IBSEDT BSLOS+7~, BSLOS+9*, BSLOS+11*, BSLOS+15
IBTF INPTPTF+5~, INPTPTF+9*, INPTPTF+23, BSLOS~, BSLOS+11, SET+10
IBTRDT PTFDV+5~, PTFDV+24*, PTFDV+25
IBTRDV PTFDV+5~, PTFDV+13*, PTFDV+14, PTFDV+25*, PTFDV+26
IBTRLN PTFDV+5~, PTFDV+11*, PTFDV+12, PTFDV+13
IBTRNSF PTFDV+5~, PTFDV+10*, PTFDV+11
IBU INPTPTF+5~, INPTPTF+14*, INPTPTF+15
IBVDATE MVDRG+2~, MVDRG+41*
IBX INPTPTF+5~, INPTPTF+10*, INPTPTF+11*, INPTPTF+12, SPBB+2~, SPBB+3*, SPBB+4, BSLOS+7~, BSLOS+13*, BBS+1~*
IBY SPBB+2~, SPBB+4*, BBS+1~*, BBS+2
IBYR PTFFY+4~, PTFFY+9*, PTFFY+11
IBYRB PTFFY+4~, PTFFY+8*, PTFFY+9
IBYRE PTFFY+4~, PTFFY+8*, PTFFY+9
IBZ SPBB+2~*, SPBB+4*, SPBB+5
ICD0 MVDRG+4~
ICD10ORNIT MVDRG+4~
ICD10ORT MVDRG+4~
ICDCDSY MVDRG+4~
ICDCSYS MVDRG+4~
ICDDATE MVDRG+3~, MVDRG+40*, MVDRG+41*
ICDDMS MVDRG+3~, MVDRG+18*, MVDRG+20*
ICDDRG MVDRG+3~, MVDRG+43
ICDDX MVDRG+3~
ICDDX( MVDRG+25*
ICDDX(1 MVDRG+27, MVDRG+41
ICDEDT MVDRG+4~
ICDEXP MVDRG+3~, MVDRG+18*, MVDRG+19*
ICDMDC MVDRG+3~
ICDPOA MVDRG+3~
ICDPOA( MVDRG+25*
ICDPRC MVDRG+3~
ICDPRC( MVDRG+33*, MVDRG+38*
ICDRG MVDRG+4~
ICDRTC MVDRG+3~
ICDSEX MVDRG+4~
ICDTMP MVDRG+4~
ICDTRS MVDRG+3~, MVDRG+18*, MVDRG+21*
ICDX MVDRG+4~
ICDY MVDRG+4~
M MVDRG~, MVDRG+8, MVDRG+9, MVDRG+23
PTF INPTPTF+5~, INPTPTF+9*, INPTPTF+17, INPTPTF+19, INPTPTF+20, INPTPTF+21, PTF~, PTF+4*, PTF+5, PTF+6
, PTF+10, PTFDV~, PTFDV+10, PTFDV+11, PTFFY~, PTFFY+4, PTFFY+11, MVDRG~, MVDRG+7, MVDRG+8
, MVDRG+9, MVDRG+10, MVDRG+13, MVDRG+23, MVDRG+30, MVDRG+31, MVDRG+32, MVDRG+35, MVDRG+36, MVDRG+37
PTF0 MVDRG+2~, MVDRG+7*, MVDRG+13
PTF70 MVDRG+2~, MVDRG+10*, MVDRG+18, MVDRG+21
PTFARR MVDRG+2~, MVDRG+23!, MVDRG+32!, MVDRG+37!
PTFARR( MVDRG+24, MVDRG+33, MVDRG+38
PTFM0 MVDRG+2~, MVDRG+8*, MVDRG+12, MVDRG+18, MVDRG+40
PTFM82 MVDRG+2~, MVDRG+9*
SEX MVDRG+3~, MVDRG+15*
SPCLTY SPBB~, SPBB+3
U INPTPTF+8, INPTPTF+9, INPTPTF+12, INPTPTF+15, PTF+7, PTF+8, PTF+9, PTF+11, SPBB+3, SPBB+4
, BSLOS+13, SET+4, SET+5, BBS+1, PTFDV+12, PTFDV+13, PTFDV+26, PTFFY+10, PTFFY+12, MVDRG+7
, MVDRG+10, MVDRG+12, MVDRG+13, MVDRG+15, MVDRG+16, MVDRG+18, MVDRG+21, MVDRG+25, MVDRG+40
VDATE DXVER+3~*, DXVER+5*, DXVER+6
X BBS~, BBS+1
X1 MVDRG+4~
X2 MVDRG+4~
Info |  Source |  Call Graph |  Caller Graph |  Entry Points |  External References |  Global Variables Directly Accessed |  Label References |  Local Variables |  All