| 1 | SPNGFIMI ;WDE/SD OUTCOME GRID FOR FIM'S 9/19/2002
 | 
|---|
| 2 |  ;;2.0;Spinal Cord Dysfunction;**19**;01/02/1997
 | 
|---|
| 3 | CALC ;  Create the values
 | 
|---|
| 4 |  ;called from spngfimh  gets the scores to plug into the grids
 | 
|---|
| 5 |  ;  da = the current fim with a score of 4,5,9 or 10
 | 
|---|
| 6 |  ;  now get the goal fim  SPNGFIM
 | 
|---|
| 7 |  S SPNGOAL=""
 | 
|---|
| 8 |  S SPNXX=0 F  S SPNXX=$O(^TMP($J,SPNXX)) Q:SPNXX=""  S SPNYY=0 F  S SPNYY=$O(^TMP($J,SPNXX,SPNYY)) Q:SPNYY=""  S SPNZZ=0 F  S SPNZZ=$O(^TMP($J,SPNXX,SPNYY,SPNZZ)) Q:SPNZZ=""  D  Q:+SPNGOAL
 | 
|---|
| 9 |  .I $P(^SPNL(154.1,SPNZZ,0),U,2)=2 I 27[$P(^SPNL(154.1,SPNZZ,2),U,17) S SPNGOAL=SPNZZ
 | 
|---|
| 10 |  I SPNGOAL="" S SPNMSG="There is no FIM goal on file !"
 | 
|---|
| 11 |  ;get eating
 | 
|---|
| 12 |  Q:$D(SPNGOAL)=0
 | 
|---|
| 13 |  Q:$G(SPNGOAL)=""
 | 
|---|
| 14 |  S SPNR1C1=$P($G(^SPNL(154.1,DA,0)),U,5) I SPNR1C1="" S SPNR1C1=0
 | 
|---|
| 15 |  S SPNR2C1=$P($G(^SPNL(154.1,SPNGOAL,0)),U,5) I SPNR2C1="" S SPNR2C1=0
 | 
|---|
| 16 |  S SPNR3C1=SPNR1C1-SPNR2C1
 | 
|---|
| 17 |  ;get groming
 | 
|---|
| 18 |  S SPNR1C2=$P($G(^SPNL(154.1,DA,0)),U,6) I SPNR1C2="" S SPNR1C2=0
 | 
|---|
| 19 |  S SPNR2C2=$P($G(^SPNL(154.1,SPNGOAL,0)),U,6) I SPNR2C2="" S SPNR2C2=0
 | 
|---|
| 20 |  S SPNR3C2=SPNR1C2-SPNR2C2
 | 
|---|
| 21 |  ;bathing
 | 
|---|
| 22 |  S SPNR1C3=$P($G(^SPNL(154.1,DA,0)),U,7) I SPNR1C3="" S SPNR1C3=0
 | 
|---|
| 23 |  S SPNR2C3=$P($G(^SPNL(154.1,SPNGOAL,0)),U,7) I SPNR2C3="" S SPNR2C3=0
 | 
|---|
| 24 |  S SPNR3C3=SPNR1C3-SPNR2C3
 | 
|---|
| 25 |  ;DUB dressing upper body
 | 
|---|
| 26 |  S SPNR1C4=$P($G(^SPNL(154.1,DA,0)),U,8) I SPNR1C4="" S SPNR1C4=0
 | 
|---|
| 27 |  S SPNR2C4=$P($G(^SPNL(154.1,SPNGOAL,0)),U,8) I SPNR2C4="" S SPNR2C4=0
 | 
|---|
| 28 |  S SPNR3C4=SPNR1C4-SPNR2C4
 | 
|---|
| 29 |  ;DLB dressing lower body
 | 
|---|
| 30 |  S SPNR1C5=$P($G(^SPNL(154.1,DA,0)),U,9) I SPNR1C5="" S SPNR1C5=0
 | 
|---|
| 31 |  S SPNR2C5=$P($G(^SPNL(154.1,SPNGOAL,0)),U,9) I SPNR2C5="" S SPNR2C5=0
 | 
|---|
| 32 |  S SPNR3C5=SPNR1C5-SPNR2C5
 | 
|---|
| 33 |  ;Toileting
 | 
|---|
| 34 |  S SPNR1C6=$P($G(^SPNL(154.1,DA,0)),U,10) I SPNR1C6="" S SPNR1C6=0
 | 
|---|
| 35 |  S SPNR2C6=$P($G(^SPNL(154.1,SPNGOAL,0)),U,10) I SPNR2C6="" S SPNR2C6=0
 | 
|---|
| 36 |  S SPNR3C6=SPNR1C6-SPNR2C6
 | 
|---|
| 37 |  ;Bladder
 | 
|---|
| 38 |  S SPNR4C1=$P($G(^SPNL(154.1,DA,0)),U,11) I SPNR4C1="" S SPNR4C1=0
 | 
|---|
| 39 |  S SPNR5C1=$P($G(^SPNL(154.1,SPNGOAL,0)),U,11) I SPNR5C1="" S SPNR5C1=0
 | 
|---|
| 40 |  S SPNR6C1=SPNR4C1-SPNR5C1
 | 
|---|
| 41 |  ;BWL
 | 
|---|
| 42 |  S SPNR4C2=$P($G(^SPNL(154.1,DA,0)),U,12) I SPNR4C2="" S SPNR4C2=0
 | 
|---|
| 43 |  S SPNR5C2=$P($G(^SPNL(154.1,SPNGOAL,0)),U,12) I SPNR5C2="" S SPNR5C2=0
 | 
|---|
| 44 |  S SPNR6C2=SPNR4C2-SPNR5C2
 | 
|---|
| 45 |  ;BC WC TXFR ?
 | 
|---|
| 46 |  S SPNR4C3=$P($G(^SPNL(154.1,DA,0)),U,13) I SPNR4C3="" S SPNR4C3=0
 | 
|---|
| 47 |  S SPNR5C3=$P($G(^SPNL(154.1,SPNGOAL,0)),U,13) I SPNR5C3="" S SPNR5C3=0
 | 
|---|
| 48 |  S SPNR6C3=SPNR4C3-SPNR5C3
 | 
|---|
| 49 |  ;Toilet txfr
 | 
|---|
| 50 |  S SPNR4C4=$P($G(^SPNL(154.1,DA,0)),U,14) I SPNR4C4="" S SPNR4C4=0
 | 
|---|
| 51 |  S SPNR5C4=$P($G(^SPNL(154.1,SPNGOAL,0)),U,14) I SPNR5C4="" S SPNR5C4=0
 | 
|---|
| 52 |  S SPNR6C4=SPNR4C4-SPNR5C4
 | 
|---|
| 53 |  ;TUB SHW XFER
 | 
|---|
| 54 |  S SPNR4C5=$P($G(^SPNL(154.1,DA,0)),U,15) I SPNR4C5="" S SPNR4C5=0
 | 
|---|
| 55 |  S SPNR5C5=$P($G(^SPNL(154.1,SPNGOAL,0)),U,15) I SPNR5C5="" S SPNR5C5=0
 | 
|---|
| 56 |  S SPNR6C5=SPNR4C5-SPNR5C5
 | 
|---|
| 57 |  ;WALK W/C
 | 
|---|
| 58 |  S SPNR4C6=$P($G(^SPNL(154.1,DA,0)),U,16) I SPNR4C6="" S SPNR4C6=0
 | 
|---|
| 59 |  S SPNR5C6=$P($G(^SPNL(154.1,SPNGOAL,0)),U,16) I SPNR5C6="" S SPNR5C6=0
 | 
|---|
| 60 |  S SPNR6C6=SPNR4C6-SPNR5C6
 | 
|---|
| 61 |  ;Stairs
 | 
|---|
| 62 |  S SPNR4C7=$P($G(^SPNL(154.1,DA,0)),U,17) I SPNR4C7="" S SPNR4C7=0
 | 
|---|
| 63 |  S SPNR5C7=$P($G(^SPNL(154.1,SPNGOAL,0)),U,17) I SPNR5C7="" S SPNR5C7=0
 | 
|---|
| 64 |  S SPNR6C7=SPNR4C7-SPNR5C7
 | 
|---|
| 65 |  ;COMP
 | 
|---|
| 66 |  S SPNR7C1=$P($G(^SPNL(154.1,DA,0)),U,18)
 | 
|---|
| 67 |  I +SPNR7C1 S SPNR7C1=$P($G(^SPNL(154.11,SPNR7C1,0)),U,1)
 | 
|---|
| 68 |  I SPNR7C1="" S SPNR7C1=0
 | 
|---|
| 69 |  S SPNR8C1=$P($G(^SPNL(154.1,SPNGOAL,0)),U,18)
 | 
|---|
| 70 |  I +SPNR8C1 S SPNR8C1=$P($G(^SPNL(154.11,SPNR8C1,0)),U,1)
 | 
|---|
| 71 |  I SPNR8C1="" S SPNR8C1=0
 | 
|---|
| 72 |  S SPNR9C1=SPNR7C1-SPNR8C1
 | 
|---|
| 73 |  ;EXPR
 | 
|---|
| 74 |  S SPNR7C2=$P($G(^SPNL(154.1,DA,0)),U,19)
 | 
|---|
| 75 |  I +SPNR7C2 S SPNR7C2=$P($G(^SPNL(154.11,SPNR7C2,0)),U,1)
 | 
|---|
| 76 |  I SPNR7C2="" S SPNR7C2=0
 | 
|---|
| 77 |  S SPNR8C2=$P($G(^SPNL(154.1,SPNGOAL,0)),U,19)
 | 
|---|
| 78 |  I +SPNR8C2 S SPNR8C2=$P($G(^SPNL(154.11,SPNR8C2,0)),U,1)
 | 
|---|
| 79 |  I SPNR8C2="" S SPNR8C2=0
 | 
|---|
| 80 |  S SPNR9C2=SPNR7C2-SPNR8C2
 | 
|---|
| 81 |  ;SOCIAL INT
 | 
|---|
| 82 |  S SPNR7C3=$P($G(^SPNL(154.1,DA,0)),U,20)
 | 
|---|
| 83 |  I +SPNR7C3 S SPNR7C3=$P($G(^SPNL(154.11,SPNR7C3,0)),U,1)
 | 
|---|
| 84 |  I SPNR7C3="" S SPNR7C3=0
 | 
|---|
| 85 |  S SPNR8C3=$P($G(^SPNL(154.1,SPNGOAL,0)),U,20)
 | 
|---|
| 86 |  I +SPNR8C3 S SPNR8C3=$P($G(^SPNL(154.11,SPNR8C3,0)),U,1)
 | 
|---|
| 87 |  I SPNR8C3="" S SPNR8C3=0
 | 
|---|
| 88 |  S SPNR9C3=SPNR7C3-SPNR8C3
 | 
|---|
| 89 |  ;Problem solv
 | 
|---|
| 90 |  S SPNR7C4=$P($G(^SPNL(154.1,DA,0)),U,21)
 | 
|---|
| 91 |  I +SPNR7C4 S SPNR7C4=$P($G(^SPNL(154.11,SPNR7C4,0)),U,1)
 | 
|---|
| 92 |  I SPNR7C4="" S SPNR7C4=0
 | 
|---|
| 93 |  S SPNR8C4=$P($G(^SPNL(154.1,SPNGOAL,0)),U,21)
 | 
|---|
| 94 |  I +SPNR8C4 S SPNR8C4=$P($G(^SPNL(154.11,SPNR8C4,0)),U,1)
 | 
|---|
| 95 |  I SPNR8C4="" S SPNR8C4=0
 | 
|---|
| 96 |  S SPNR9C4=SPNR7C4-SPNR8C4
 | 
|---|
| 97 |  ;MEM
 | 
|---|
| 98 |  S SPNR7C5=$P($G(^SPNL(154.1,DA,0)),U,22)
 | 
|---|
| 99 |  I +SPNR7C5 S SPNR7C5=$P($G(^SPNL(154.11,SPNR7C5,0)),U,1)
 | 
|---|
| 100 |  I SPNR7C5="" S SPNR7C5=0
 | 
|---|
| 101 |  S SPNR8C5=$P($G(^SPNL(154.1,SPNGOAL,0)),U,22)
 | 
|---|
| 102 |  I +SPNR8C5 S SPNR8C5=$P($G(^SPNL(154.11,SPNR8C5,0)),U,1)
 | 
|---|
| 103 |  I SPNR8C5="" S SPNR8C5=0
 | 
|---|
| 104 |  S SPNR9C5=SPNR7C5-SPNR8C5
 | 
|---|
| 105 |  ;MOTOR
 | 
|---|
| 106 |  S SPNR7C6=$$EN1^SPNFUTL0(DA)
 | 
|---|
| 107 |  S SPNR8C6=$$EN1^SPNFUTL0(SPNGOAL)
 | 
|---|
| 108 |  S SPNR9C6=SPNR7C6-SPNR8C6
 | 
|---|
| 109 |  ;CONG
 | 
|---|
| 110 |  S SPNR7C7=$$EN2^SPNFUTL0(DA)
 | 
|---|
| 111 |  S SPNR8C7=$$EN2^SPNFUTL0(SPNGOAL)
 | 
|---|
| 112 |  S SPNR9C7=SPNR7C7-SPNR8C7
 | 
|---|
| 113 |  ;TOTAL
 | 
|---|
| 114 |  S SPNR7C8=$$EN3^SPNFUTL0(DA)
 | 
|---|
| 115 |  S SPNR8C8=$$EN3^SPNFUTL0(SPNGOAL)
 | 
|---|
| 116 |  S SPNR9C8=SPNR7C8-SPNR8C8
 | 
|---|