| 1 | SPNFSRV1 ;HISC/DAD-SCD REGISTRY VETERAN SURVEY SERVER ;1/8/96  11:01
 | 
|---|
| 2 |  ;;2.0;Spinal Cord Dysfunction;;01/02/1997
 | 
|---|
| 3 |  ;
 | 
|---|
| 4 | REG ; *** Registration data
 | 
|---|
| 5 |  S SPNFREGC=SPNFREGC+1
 | 
|---|
| 6 |  S SPND0=+$O(^SPNL(154,"B",SPNFDFN,0))
 | 
|---|
| 7 |  I (SPND0'>0)!($P($G(^SPNL(154,SPND0,0)),U)'=SPNFDFN) D
 | 
|---|
| 8 |  . K DD,DIC,DINUM,DO
 | 
|---|
| 9 |  . S DIC="^SPNL(154,",DIC(0)="L",DLAYGO=154,(DINUM,X)=SPNFDFN
 | 
|---|
| 10 |  . D FILE^DICN
 | 
|---|
| 11 |  . S SPND0=+Y
 | 
|---|
| 12 |  . Q
 | 
|---|
| 13 |  K DR S SPNDR=0
 | 
|---|
| 14 |  S SPNFFLDS=".01^.02^.03^.04^.05"
 | 
|---|
| 15 |  F SPNPIECE=2:1:$L($G(SPNFDATA(0))) D
 | 
|---|
| 16 |  . S SPNX=$P(SPNFDATA(0),U,SPNPIECE) Q:SPNX=""
 | 
|---|
| 17 |  . S SPNDR=SPNDR+1
 | 
|---|
| 18 |  . S DR(1,154,SPNDR)=$P(SPNFFLDS,U,SPNPIECE)_"///"_SPNX
 | 
|---|
| 19 |  . Q
 | 
|---|
| 20 |  S SPNFFLDS="2.1^2.2^2.3^2.4^2.5"
 | 
|---|
| 21 |  F SPNPIECE=1:1:$L($G(SPNFDATA(2))) D
 | 
|---|
| 22 |  . S SPNX=$P(SPNFDATA(2),U,SPNPIECE) Q:SPNX=""
 | 
|---|
| 23 |  . S SPNDR=SPNDR+1
 | 
|---|
| 24 |  . S DR(1,154,SPNDR)=$P(SPNFFLDS,U,SPNPIECE)_"///"_SPNX
 | 
|---|
| 25 |  . Q
 | 
|---|
| 26 |  S SPNETIOL=$$ETIOLOGY($P($G(SPNFDATA(5)),U))
 | 
|---|
| 27 |  I SPNETIOL S SPNDR=SPNDR+1,DR(1,154,SPNDR)="5.01///`"_SPNETIOL
 | 
|---|
| 28 |  S SPNFFLDS="5.01^5.02^5.03^5.04^5.05^5.06^5.07^5.08^5.09^5.1^5.11^5.12"
 | 
|---|
| 29 |  F SPNPIECE=2:1:$L($G(SPNFDATA(5))) D
 | 
|---|
| 30 |  . S SPNX=$P(SPNFDATA(5),U,SPNPIECE) Q:SPNX=""
 | 
|---|
| 31 |  . S SPNDR=SPNDR+1
 | 
|---|
| 32 |  . S DR(1,154,SPNDR)=$P(SPNFFLDS,U,SPNPIECE)_"///"_SPNX
 | 
|---|
| 33 |  . Q
 | 
|---|
| 34 |  I SPNDR K DA,DIE S DIE="^SPNL(154,",DA=SPND0,DR="" D ^DIE
 | 
|---|
| 35 |  ;
 | 
|---|
| 36 |  S SPNONSET=0
 | 
|---|
| 37 |  F  S SPNONSET=$O(SPNFDATA("E",SPNONSET)) Q:SPNONSET'>0  D
 | 
|---|
| 38 |  . S SPNDATE=$P(SPNFDATA("E",SPNONSET),U) Q:SPNDATE'>0
 | 
|---|
| 39 |  . S SPNETIOL=$$ETIOLOGY($P(SPNFDATA("E",SPNONSET),U,2))
 | 
|---|
| 40 |  . S SPNOTHER=$P(SPNFDATA("E",SPNONSET),U,3)
 | 
|---|
| 41 |  . S SPND1=+$O(^SPNL(154,SPND0,"E","B",SPNDATE,0))
 | 
|---|
| 42 |  . I SPND1'>0 D
 | 
|---|
| 43 |  .. K DA,DD,DIC,DINUM,DO
 | 
|---|
| 44 |  .. S DIC="^SPNL(154,"_SPND0_",""E"",",DIC(0)="L",DLAYGO=154.004
 | 
|---|
| 45 |  .. S DIC("P")=$P(^DD(154,4,0),U,2),(D0,DA(1))=SPND0,X=SPNDATE
 | 
|---|
| 46 |  .. D FILE^DICN
 | 
|---|
| 47 |  .. S SPND1=+Y
 | 
|---|
| 48 |  .. Q
 | 
|---|
| 49 |  . I SPNETIOL D
 | 
|---|
| 50 |  .. K DA,DIE,DR
 | 
|---|
| 51 |  .. S DIE="^SPNL(154,"_SPND0_",""E"","
 | 
|---|
| 52 |  .. S (D0,DA(1))=SPND0,(D1,DA)=SPND1
 | 
|---|
| 53 |  .. S DR=".02///`"_SPNETIOL
 | 
|---|
| 54 |  .. I SPNOTHER]"" S DR=DR_";.03///"_SPNOTHER
 | 
|---|
| 55 |  .. D ^DIE
 | 
|---|
| 56 |  .. Q
 | 
|---|
| 57 |  . Q
 | 
|---|
| 58 |  Q
 | 
|---|
| 59 |  ;
 | 
|---|
| 60 | ETIOLOGY(X) ; *** Find etiology IEN
 | 
|---|
| 61 |  ;  X = Description ; Type_of_Cause
 | 
|---|
| 62 |  N D0,DESC,IEN,TYPE
 | 
|---|
| 63 |  S DESC=$P(X,";"),TYPE=$P(X,";",2),(D0,IEN)=0
 | 
|---|
| 64 |  I DESC]"" F  S D0=$O(^SPNL(154.03,"B",DESC,D0)) Q:D0'>0!IEN  D
 | 
|---|
| 65 |  . S X=$G(^SPNL(154.03,D0,0))
 | 
|---|
| 66 |  . S DESC(0)=$P(X,U),TYPE(0)=$P(X,U,2)
 | 
|---|
| 67 |  . I DESC=DESC(0),TYPE=TYPE(0) S IEN=D0
 | 
|---|
| 68 |  . Q
 | 
|---|
| 69 |  Q IEN
 | 
|---|