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

Package: DRG Grouper

Routine: ICDJC2


Information

ICDJC2 ;ALB/ARH - DRG GROUPER CALCULATOR 2015 - CODE SETS ;05/26/2016

Source Information

Source file <ICDJC2.m>

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: 2

Package Total Caller Graph
DRG Grouper 2 ICDJC  ICDJC1  

Entry Points

Name Comments DBIA/ICR reference
CDSET(ICDDX,ICDPR,ICDDATE,PRATT,CDSARR) ; get all Code Sets defined by event Diagnosis and Procedure codes
; most Code Sets are specific to an event code, either Diagnosis (83.5,20) or Procedure (83.6,20)
; Dx Code Sets may be specific to primary or secondary event dx, all members of procedure Clusters must be defined
; an 'ONLY' Code Set is selected only if all the codes defined for the event are in the Code Set
; computed generic and linked group Code Sets are selected if all criteria are met
;
; Input: ICDDX(x) and ICDPR(x) - array of Dx/procedures input to API, ICDDATE - date of event, PRATT pr attributes
; Output: CDSARR - array of all Code Sets (83.3) satisfied by the event diagnosis and procedures
; CDSARR(code set ifn, icdxx number) = code ien (80/80.1) ^ DX/PR ^ single(1)/cluster only(0) ^ cluster ien
; CDSARR(code set ifn, 99_cmpt #) = ^ type of codes in set 'DX' or 'PR' - for computed codes sets
GETCDS(TYP,CDIFN,DATE,ARRCDS,ICDPR) ; get Code Sets for a single code on a date, either diagnosis (83.5,20) or procedure (83.6,20)
; input: TYP - type of codes 'DX' or 'PR', CDIFN - ptr to code in 83.5 or 83.6
; output: ARRCDS - array of code sets the code is a member of on the date
; ARRCDS(code set ifn (83.3)) = TYP ^ code set ifn ^ single(1)/cluster only(0) in set ^ cluster ptr 83.61
; a procedure may be assigned to a Code Set as a single procedure and/or as a member of a cluster, all members
; of a cluster (83.6,20,.04) must be defined for the cluster only procedures to select a Code Set
CLSTR(CLUSTER,ICDPR) ; determine if the event procedures satisfy the cluster
; returns true if all the procedures assigned to the cluster (83.61) are defined on the event
; input: CLUSTER - ptr to a cluster (83.61), ICDPR - array of event procedures
CALC1(ICDPR,PRATT) ; Computed generic Code Set: ANY OPERATING ROOM PROCEDURE
; returns the generic Code Set IFN if there is one or more O.R. or Surgical event procedures
CALC2(ICDPR,PRATT) ; Computed generic Code Set: NO OPERATING ROOM PROCEDURE
; returns the generic Code Set IFN if there are no O.R or Surgical event procedures
CALC3(ICDDX) ; Computed generic Code Set: NO SECONDARY DIAGNOSIS
; returns the generic Code Set IFN if there are no Secondary diagnosis on the event (only 1 dx)
ONLY(ONLYARR,ICDARR,CDSARR,PRATT) ; add 'ONLY' Code Set if all codes assigned to the event are in the Set
; if all the event codes are in the set then add the Only Code Set to the list of all selected Code Sets
; for diagnosis this is only applied to the secondary codes
; for procedures this is only applied to operating room procedures, non-or procedures outside the set are allowed
; input: ONLYARR(icdxx number) = ONLY code set ifn ^ code ifn (ptr #80, #80.1) ^ code type
; ICDARR - may be either ICDDX or ICDPRC, PRATT compiled procedure attributes
; output: CDSARR modified - if meets criteria the ONLY Code Set is added to CDSARR array of selected code sets
; CDSARR(ONLY code set ifn, idcxx number) = code ien (80/80.1) ^ code type ^ 1 (single)
LINK(LINKARR,CDSARR) ; add any Computed LNK Code Set that apply
; for any selected Code Set in a Linked group, check if the Link criteria is satisfied
; if the Link criteria is met then add the generic LNK Computed Code Set to the list of selected Code Sets
; input: LINKARR(link group, LINKED code set ifn) = count of selected Code Sets with the link group
; CDSARR(code set ifn, icdxx number) = code ifn (ptr #80, #80.1) ^ code type
; output: CDSARR modified, any LNK Computed Code Set satisfied is added to CDSARR array of all selected Sets
; CDSARR(LNK Computed code set ifn, 99x) = ^ code type w/x is the LNK set value
; difference between CDN and MLT is Condition is not exclusive, one code can satisfy more than one condition
; number of sets required is in link text after '-', count link number a group satisfies is in the set name

Global Variables Directly Accessed

Name Line Occurrences  (* Changed,  ! Killed)
^ICDD( GETCDS+9, GETCDS+10
^ICDD(83.3 - [#83.3] CDSET+22, CDSET+45, CALC1+4, CALC2+4, CALC3+4, LINK+13, LINK+14, LINK+19, LINK+22, LINK+23
^ICDD(83.5 - [#83.5] CDSET+18
^ICDD(83.6 - [#83.6] CDSET+41
^ICDD(83.61 - [#83.61] CLSTR+9

Label References

Name Line Occurrences
$$CALC1 CDSET+60
$$CALC2 CDSET+61
$$CALC3 CDSET+62
$$CLSTR GETCDS+16
GETCDS CDSET+18, CDSET+41
LINK CDSET+57
ONLY CDSET+33, CDSET+54

Local Variables

Legend:

>> Not killed explicitly
* Changed
! Killed
~ Newed

Name Field # of Occurrence
ARRCDS CDSET+10~, CDSET+18, CDSET+34!, CDSET+41, GETCDS~, GETCDS+6!
ARRCDS( CDSET+21, CDSET+44, CDSET+52, GETCDS+14*, GETCDS+17, GETCDS+19*
ARRLNK LINK+9~
ARRLNK( LINK+14*, LINK+18
ARRPR CLSTR+3~
ARRPR( CLSTR+6*, CLSTR+9
BEGIN GETCDS+6~, GETCDS+11*, GETCDS+12
CDFILE GETCDS+6~, GETCDS+7*, GETCDS+9, GETCDS+10
CDIFN GETCDS~, GETCDS+6*, GETCDS+9, GETCDS+10
CDSARR CDSET~, CDSET+10!, CDSET+33, CDSET+54, CDSET+57, ONLY~, LINK~
CDSARR( CDSET+31*, CDSET+52*, CDSET+60*, CDSET+61*, CDSET+62*, ONLY+16*, LINK+25, LINK+27, LINK+31*
CLUSTER GETCDS+6~, GETCDS+16*, GETCDS+17*, GETCDS+19, CLSTR~, CLSTR+3*, CLSTR+9
CMPTD LINK+9~, LINK+20*, LINK+25, LINK+27, LINK+29, LINK+31
CMPTSET LINK+9~, LINK+13*, LINK+14, LINK+18*, LINK+19, LINK+22, LINK+31
CMPTSET1 CALC1+2~, CALC1+4*, CALC1+8
CMPTSET2 CALC2+2~, CALC2+4*, CALC2+8
CMPTSET3 CALC3+2~, CALC3+4*, CALC3+8
CNT ONLY+8~*, ONLY+12*, ONLY+14*, ONLY+16, LINK+9~, LINK+20*, LINK+25*, LINK+27*, LINK+29*, LINK+31
CODTYP ONLY+8~, ONLY+10*, ONLY+12, ONLY+14
COUNT LINK+9~, LINK+23*, LINK+29
CSET0 LINK+9~, LINK+19*, LINK+20, LINK+31
DATE GETCDS~, GETCDS+6*, GETCDS+12
DT GETCDS+6
DX CDSET+10~, CDSET+18*, CDSET+29, CDSET+31
DXI CDSET+10~, CDSET+15*, CDSET+18, CDSET+25, CDSET+26, CDSET+29, CDSET+31
DXIFN CDSET+10~, CDSET+18*
END GETCDS+6~, GETCDS+11*, GETCDS+12
FND CLSTR+3~*, CLSTR+9*, CLSTR+11, CALC1+2~*, CALC1+6*, CALC1+8*, CALC1+10, CALC2+2~*, CALC2+6*, CALC2+8*
, CALC2+10, CALC3+2~*, CALC3+6*, CALC3+8*, CALC3+10, ONLY+8~*, ONLY+12*, ONLY+14*, ONLY+16
ICDARR ONLY~
ICDARR( ONLY+12, ONLY+14
ICDARR(0 ONLY+12
ICDDATE CDSET~, CDSET+10*, CDSET+18, CDSET+41
ICDDX CDSET~, CDSET+33, CDSET+62, CALC3~
ICDDX( CDSET+15, CDSET+18, CALC3+6
ICDDX(0 CDSET+11, CALC3+6
ICDPR CDSET~, CDSET+41, CDSET+54, CDSET+60, CDSET+61, GETCDS~, GETCDS+16, CLSTR~, CALC1~, CALC2~
ICDPR( CDSET+38, CDSET+41, CLSTR+6, CALC1+6, CALC2+6
IX GETCDS+6~, GETCDS+9*, GETCDS+10, CALC3+2~, CALC3+6*, ONLY+8~, ONLY+10*, ONLY+12*, ONLY+14*, ONLY+16*
, LINK+9~, LINK+31*
LINE CDSET+10~, CDSET+22*, CDSET+24, CDSET+25, CDSET+26, CDSET+28, CDSET+29, CDSET+45*, CDSET+47, CDSET+49
, CDSET+50, GETCDS+6~, GETCDS+10*, GETCDS+11, GETCDS+16, GETCDS+17*, ONLY+8~, ONLY+16*, LINK+9~, LINK+14*
, LINK+23*
LINK CDSET+10~, CDSET+57, LINK+9~, LINK+12*, LINK+13, LINK+20*, LINK+22, LINK+29
LINK( CDSET+28*, CDSET+49*
LINK("" CDSET+57
LINKARR LINK~
LINKARR( LINK+12, LINK+29
MDCCAT LINK+9~, LINK+20*, LINK+23
NUM LINK+9~, LINK+20*, LINK+31
ONLY CDSET+10~, CDSET+33, CDSET+34!, CDSET+54
ONLY( CDSET+29*, CDSET+50*
ONLY(0 CDSET+33, CDSET+54
ONLYARR ONLY~
ONLYARR( ONLY+10, ONLY+12, ONLY+14, ONLY+16
ONLYARR(0 ONLY+10
PDX CDSET+10~, CDSET+11*, CDSET+25, CDSET+26
PR CDSET+10~, CDSET+41*, CDSET+50, CDSET+52, CLSTR+3~, CLSTR+6*, CLSTR+9*
PRATT CDSET~, CDSET+54, CDSET+60, CDSET+61, CALC1~, CALC2~, ONLY~
PRATT( CALC1+6, CALC2+6, ONLY+14
PRI CDSET+10~, CDSET+38*, CDSET+41, CDSET+50, CDSET+52, CLSTR+3~, CLSTR+6*, CALC1+2~, CALC1+6*, CALC2+2~
, CALC2+6*
PRIFN CDSET+10~, CDSET+41*
SETIFN CDSET+10~, CDSET+21*, CDSET+22, CDSET+28, CDSET+29, CDSET+31, CDSET+44*, CDSET+45, CDSET+49, CDSET+50
, CDSET+52, CDSET+60*, CDSET+61*, CDSET+62*, GETCDS+6~, GETCDS+10*, GETCDS+14, GETCDS+17, GETCDS+19, LINK+9~
, LINK+22*, LINK+23, LINK+25, LINK+27, LINK+29
SINGLE GETCDS+6~, GETCDS+17*, GETCDS+19
TYP GETCDS~, GETCDS+6*, GETCDS+7, GETCDS+14, GETCDS+19
U CDSET+24, CDSET+25, CDSET+26, CDSET+28, CDSET+29, CDSET+31, CDSET+47, CDSET+49, CDSET+50, CDSET+52
, CDSET+60, CDSET+61, CDSET+62, GETCDS+10, GETCDS+11, GETCDS+14, GETCDS+16, GETCDS+17, GETCDS+19, CALC1+6
, CALC2+6, ONLY+10, ONLY+14, ONLY+16, LINK+14, LINK+20, LINK+23, LINK+31
Info |  Source |  Caller Graph |  Entry Points |  Global Variables Directly Accessed |  Label References |  Local Variables  | All