ICDDRG3 ;ALB/GRR/EG - FIX SURGERY HIERARCHY ; 10/23/00 11:39am
;;18.0;DRG Grouper;**24,31**;Oct 20, 2000;Build 7
Q:$O(ICDODRG(0))'>0 K ICDJ F ICDJ=0:0 S ICDJ=$O(ICDODRG(ICDJ)) Q:ICDJ'>0 D
.I ICDDATE<3061001 D F Q
.E I ICDDATE<3071001 D FY2007 Q
.E D FY2008
END S ICDJ=$O(ICDJ(0)) Q:ICDJ'>0 S ICDJ=ICDJ(ICDJ) K ICDODRG S ICDODRG(ICDJ)="" K ICDJ Q
F I ICDJ=49 S ICDJ(1)=ICDJ Q
I ICDJ=61 S ICDJ(2)=ICDJ Q
I ICDJ=62 S ICDJ(3)=ICDJ Q
I ICDJ=53 S ICDJ(4)=ICDJ Q
I ICDJ=54 S ICDJ(5)=ICDJ Q
I ICDJ=57 S ICDJ(6)=ICDJ Q
I ICDJ=58 S ICDJ(7)=ICDJ Q
I ICDJ=52 S ICDJ(8)=ICDJ Q
I ICDJ=168 S ICDJ(9)=ICDJ Q
I ICDJ=169 S ICDJ(10)=ICDJ Q
I ICDJ=56 S ICDJ(11)=ICDJ Q
I ICDJ=50 S ICDJ(12)=ICDJ Q
I ICDJ=51 S ICDJ(13)=ICDJ Q
I ICDJ=55 S ICDJ(14)=ICDJ Q
I ICDJ=59 S ICDJ(15)=ICDJ Q
I ICDJ=60 S ICDJ(16)=ICDJ Q
I ICDJ=63 S ICDJ(17)=ICDJ Q
Q
FY2007 ;
I ICDJ=49 S ICDJ(1)=ICDJ Q
I ICDJ=61 S ICDJ(2)=ICDJ Q
I ICDJ=62 S ICDJ(3)=ICDJ Q
I ICDJ=53 S ICDJ(4)=ICDJ Q
I ICDJ=54 S ICDJ(5)=ICDJ Q
I ICDJ=168 S ICDJ(6)=ICDJ Q
I ICDJ=169 S ICDJ(7)=ICDJ Q
I ICDJ=57 S ICDJ(8)=ICDJ Q
I ICDJ=58 S ICDJ(9)=ICDJ Q
I ICDJ=52 S ICDJ(10)=ICDJ Q
I ICDJ=56 S ICDJ(11)=ICDJ Q
I ICDJ=50 S ICDJ(12)=ICDJ Q
I ICDJ=51 S ICDJ(13)=ICDJ Q
I ICDJ=55 S ICDJ(14)=ICDJ Q
I ICDJ=59 S ICDJ(15)=ICDJ Q
I ICDJ=60 S ICDJ(16)=ICDJ Q
I ICDJ=63 S ICDJ(17)=ICDJ Q
Q
FY2008 ;MS-DRG
I ICDJ=130 S ICDJ(1)=ICDJ Q
I ICDJ=132 S ICDJ(2)=ICDJ Q
I ICDJ=134 S ICDJ(3)=ICDJ Q
I ICDJ=136 S ICDJ(4)=ICDJ Q
I ICDJ=138 S ICDJ(5)=ICDJ Q
I ICDJ=139 S ICDJ(6)=ICDJ Q
Q
EN1 ;
I $D(ICDOP(" 28.2"))!($D(ICDOP(" 28.3")))!($D(ICDOP(" 28.6"))) S ICDRG=$S(ICDOCNT>1:$S(AGE>17:57,1:58),1:ICDRG)
Q
--- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HICDDRG3 1713 printed Oct 16, 2024@17:50:57 Page 2
ICDDRG3 ;ALB/GRR/EG - FIX SURGERY HIERARCHY ; 10/23/00 11:39am
+1 ;;18.0;DRG Grouper;**24,31**;Oct 20, 2000;Build 7
+2 if $ORDER(ICDODRG(0))'>0
QUIT
KILL ICDJ
FOR ICDJ=0:0
SET ICDJ=$ORDER(ICDODRG(ICDJ))
if ICDJ'>0
QUIT
Begin DoDot:1
+3 IF ICDDATE<3061001
DO F
QUIT
+4 IF '$TEST
IF ICDDATE<3071001
DO FY2007
QUIT
+5 IF '$TEST
DO FY2008
End DoDot:1
END SET ICDJ=$ORDER(ICDJ(0))
if ICDJ'>0
QUIT
SET ICDJ=ICDJ(ICDJ)
KILL ICDODRG
SET ICDODRG(ICDJ)=""
KILL ICDJ
QUIT
F IF ICDJ=49
SET ICDJ(1)=ICDJ
QUIT
+1 IF ICDJ=61
SET ICDJ(2)=ICDJ
QUIT
+2 IF ICDJ=62
SET ICDJ(3)=ICDJ
QUIT
+3 IF ICDJ=53
SET ICDJ(4)=ICDJ
QUIT
+4 IF ICDJ=54
SET ICDJ(5)=ICDJ
QUIT
+5 IF ICDJ=57
SET ICDJ(6)=ICDJ
QUIT
+6 IF ICDJ=58
SET ICDJ(7)=ICDJ
QUIT
+7 IF ICDJ=52
SET ICDJ(8)=ICDJ
QUIT
+8 IF ICDJ=168
SET ICDJ(9)=ICDJ
QUIT
+9 IF ICDJ=169
SET ICDJ(10)=ICDJ
QUIT
+10 IF ICDJ=56
SET ICDJ(11)=ICDJ
QUIT
+11 IF ICDJ=50
SET ICDJ(12)=ICDJ
QUIT
+12 IF ICDJ=51
SET ICDJ(13)=ICDJ
QUIT
+13 IF ICDJ=55
SET ICDJ(14)=ICDJ
QUIT
+14 IF ICDJ=59
SET ICDJ(15)=ICDJ
QUIT
+15 IF ICDJ=60
SET ICDJ(16)=ICDJ
QUIT
+16 IF ICDJ=63
SET ICDJ(17)=ICDJ
QUIT
+17 QUIT
FY2007 ;
+1 IF ICDJ=49
SET ICDJ(1)=ICDJ
QUIT
+2 IF ICDJ=61
SET ICDJ(2)=ICDJ
QUIT
+3 IF ICDJ=62
SET ICDJ(3)=ICDJ
QUIT
+4 IF ICDJ=53
SET ICDJ(4)=ICDJ
QUIT
+5 IF ICDJ=54
SET ICDJ(5)=ICDJ
QUIT
+6 IF ICDJ=168
SET ICDJ(6)=ICDJ
QUIT
+7 IF ICDJ=169
SET ICDJ(7)=ICDJ
QUIT
+8 IF ICDJ=57
SET ICDJ(8)=ICDJ
QUIT
+9 IF ICDJ=58
SET ICDJ(9)=ICDJ
QUIT
+10 IF ICDJ=52
SET ICDJ(10)=ICDJ
QUIT
+11 IF ICDJ=56
SET ICDJ(11)=ICDJ
QUIT
+12 IF ICDJ=50
SET ICDJ(12)=ICDJ
QUIT
+13 IF ICDJ=51
SET ICDJ(13)=ICDJ
QUIT
+14 IF ICDJ=55
SET ICDJ(14)=ICDJ
QUIT
+15 IF ICDJ=59
SET ICDJ(15)=ICDJ
QUIT
+16 IF ICDJ=60
SET ICDJ(16)=ICDJ
QUIT
+17 IF ICDJ=63
SET ICDJ(17)=ICDJ
QUIT
+18 QUIT
FY2008 ;MS-DRG
+1 IF ICDJ=130
SET ICDJ(1)=ICDJ
QUIT
+2 IF ICDJ=132
SET ICDJ(2)=ICDJ
QUIT
+3 IF ICDJ=134
SET ICDJ(3)=ICDJ
QUIT
+4 IF ICDJ=136
SET ICDJ(4)=ICDJ
QUIT
+5 IF ICDJ=138
SET ICDJ(5)=ICDJ
QUIT
+6 IF ICDJ=139
SET ICDJ(6)=ICDJ
QUIT
+7 QUIT
EN1 ;
+1 IF $DATA(ICDOP(" 28.2"))!($DATA(ICDOP(" 28.3")))!($DATA(ICDOP(" 28.6")))
SET ICDRG=$SELECT(ICDOCNT>1:$SELECT(AGE>17:57,1:58),1:ICDRG)
+2 QUIT