| 1 | ONCOMNI ;HIRMFO/GWB,RTK-ALGORITHM FOR COMPUTING MIDDLE NAME/INITIAL ;12/10/99
 | 
|---|
| 2 |  ;;2.11;ONCOLOGY;**1,11,13,22,25,28**;Mar 07, 1995
 | 
|---|
| 3 |  ;
 | 
|---|
| 4 |  D SETUP^ONCOES
 | 
|---|
| 5 |  S NAME=$P(@ONCOX1,U,1),FNMI=$P(NAME,",",2),MNI=$P(FNMI," ",2)
 | 
|---|
| 6 |  I (MNI="JR")!(MNI="JR.")!(MNI="SR")!(MNI="SR.")!(MNI="MD")!(MNI="MD.")!(MNI="NMN")!(MNI="NMN.")!(MNI="NMI")!(MNI="NMI.")!(MNI="II")!(MNI="III")!(MNI="IV") S MNI=""
 | 
|---|
| 7 |  I $L(MNI)=2,$E(MNI,2)="." S MNI=$E(MNI,1)
 | 
|---|
| 8 |  S X=$E(MNI,1,14)
 | 
|---|
| 9 |  K ONCON,ONCOX,ONCOX1,NAME,FNMI,MNI
 | 
|---|
| 10 |  Q
 | 
|---|
| 11 | CHFPS ;CALCULATE VALUE OF FIELD #803 (CANCER HISTORY-1ST PRIMARY SITE)
 | 
|---|
| 12 |  I $P($G(^ONCO(165.5,D0,"NHL1")),U,4)'="" S X="" Q
 | 
|---|
| 13 |  S CHFSNM=$P($G(^ONCO(165.5,D0,0)),U,2)
 | 
|---|
| 14 |  S X="C88.8",CHFSFLG=0
 | 
|---|
| 15 |  S CHFS="" F  S CHFS=$O(^ONCO(165.5,"C",CHFSNM,CHFS)) Q:CHFS'>""!(CHFSFLG>0)  I $$DIV^ONCFUNC(CHFS)=DUZ(2) D
 | 
|---|
| 16 |  .I CHFS=D0 Q
 | 
|---|
| 17 |  .S CHFSFLG=CHFSFLG+1,TPX=$P($G(^ONCO(165.5,CHFS,2)),U,1) S:TPX'="" TPX=$G(^ONCO(164,TPX,0)) S:TPX'="" X=$P(TPX,U,2) Q
 | 
|---|
| 18 |  K CHFS,CHFSFLG,CHFSNM,TPX Q
 | 
|---|
| 19 | CHFPH ;CALCULATE VALUE OF FIELD #804 (CANCER HISTORY-1ST PRIMARY HISTOLOGY)
 | 
|---|
| 20 |  I $P($G(^ONCO(165.5,D0,"NHL1")),U,5)'="" S X="" Q
 | 
|---|
| 21 |  S CHFHNM=$P($G(^ONCO(165.5,D0,0)),U,2)
 | 
|---|
| 22 |  S X="8888/8",CHFHFLG=0
 | 
|---|
| 23 |  S CHFH="" F  S CHFH=$O(^ONCO(165.5,"C",CHFHNM,CHFH)) Q:CHFH'>""!(CHFHFLG>0)  I $$DIV^ONCFUNC(CHFH)=DUZ(2) D
 | 
|---|
| 24 |  .I CHFH=D0 Q
 | 
|---|
| 25 |  .S CHFHFLG=CHFHFLG+1,TPX=$$HIST^ONCFUNC(CHFH) S:TPX'="" TPX=$G(^ONCO(ICDFILE,TPX,0)) S:TPX'="" X=$P(TPX,U,2) Q
 | 
|---|
| 26 |  K CHFH,CHFHFLG,CHFHNM,TPX Q
 | 
|---|
| 27 | CHSPS ;CALCULATE VALUE OF FIELD #805 (CANCER HISTORY-2ND PRIMARY SITE)
 | 
|---|
| 28 |  I $P($G(^ONCO(165.5,D0,"NHL1")),U,6)'="" S X="" Q
 | 
|---|
| 29 |  S CHSSNM=$P($G(^ONCO(165.5,D0,0)),U,2)
 | 
|---|
| 30 |  S X="C88.8",CHSSFLG=0
 | 
|---|
| 31 |  S CHSS="" F  S CHSS=$O(^ONCO(165.5,"C",CHSSNM,CHSS)) Q:CHSS'>""!(CHSSFLG>1)  I $$DIV^ONCFUNC(CHSS)=DUZ(2) D
 | 
|---|
| 32 |  .I CHSS=D0 Q
 | 
|---|
| 33 |  .I CHSSFLG=0 S CHSSFLG=CHSSFLG+1 Q
 | 
|---|
| 34 |  .S CHSSFLG=CHSSFLG+1,TPX=$P($G(^ONCO(165.5,CHSS,2)),U,1) S:TPX'="" TPX=$G(^ONCO(164,TPX,0)) S:TPX'="" X=$P(TPX,U,2) Q
 | 
|---|
| 35 |  K CHSS,CHSSFLG,CHSSNM,TPX Q
 | 
|---|
| 36 | CHSPH ;CALCULATE VALUE OF FIELD #806 (CANCER HISTORY-2ND PRIMARY HISTOLOGY)
 | 
|---|
| 37 |  I $P($G(^ONCO(165.5,D0,"NHL1")),U,7)'="" S X="" Q
 | 
|---|
| 38 |  S CHSHNM=$P($G(^ONCO(165.5,D0,0)),U,2)
 | 
|---|
| 39 |  S X="8888/8",CHSHFLG=0
 | 
|---|
| 40 |  S CHSH="" F  S CHSH=$O(^ONCO(165.5,"C",CHSHNM,CHSH)) Q:CHSH'>""!(CHSHFLG>1)  I $$DIV^ONCFUNC(CHSH)=DUZ(2) D
 | 
|---|
| 41 |  .I CHSH=D0 Q
 | 
|---|
| 42 |  .I CHSHFLG=0 S CHSHFLG=CHSHFLG+1 Q
 | 
|---|
| 43 |  .S CHSHFLG=CHSHFLG+1,TPX=$$HIST^ONCFUNC(CHSH) S:TPX'="" TPX=$G(^ONCO(ICDFILE,TPX,0)) S:TPX'="" X=$P(TPX,U,2) Q
 | 
|---|
| 44 |  K CHSH,CHSHFLG,CHSHNM,TPX Q
 | 
|---|
| 45 | ARCHHLP ;AIDS RISK CATEGORY FOR HIV POSITIVE PATIENT (#822) HELP
 | 
|---|
| 46 |  W !?5,"Choose from the following codes:",!
 | 
|---|
| 47 |  W !?8,"0  Not HIV positive"
 | 
|---|
| 48 |  W !?8,"1  No known risk category"
 | 
|---|
| 49 |  W !?8,"2  Homosexual/Bisexual"
 | 
|---|
| 50 |  W !?8,"3  IV drug user"
 | 
|---|
| 51 |  W !?8,"4  Blood product recipient"
 | 
|---|
| 52 |  W !?8,"5  Heterosexual transmission"
 | 
|---|
| 53 |  W !?8,"6  Congenitally acquired"
 | 
|---|
| 54 |  W !?8,"7  Multiple categories"
 | 
|---|
| 55 |  W !?8,"8  Other/Unknown risk category"
 | 
|---|
| 56 |  W !?8,"9  Unknown if HIV positive",!
 | 
|---|
| 57 |  Q
 | 
|---|
| 58 | ARCHP ;AIDS RISK CATEGORY FOR HIV POSITIVE PATIENT (#822) OUTPUT TRANSFORM
 | 
|---|
| 59 |  I Y=0 S Y="Not HIV positive" Q
 | 
|---|
| 60 |  I Y=1 S Y="No known risk category" Q
 | 
|---|
| 61 |  I Y=2 S Y="Homosexual/Bisexual" Q
 | 
|---|
| 62 |  I Y=3 S Y="IV drug user" Q
 | 
|---|
| 63 |  I Y=4 S Y="Blood product recipient" Q
 | 
|---|
| 64 |  I Y=5 S Y="Heterosexual transmission" Q
 | 
|---|
| 65 |  I Y=6 S Y="Congenitally acquired" Q
 | 
|---|
| 66 |  I Y=7 S Y="Multiple categories" Q
 | 
|---|
| 67 |  I Y=8 S Y="Other/Unknown risk category" Q
 | 
|---|
| 68 |  I Y=9 S Y="Unknown if HIV positive" Q
 | 
|---|
| 69 |  Q
 | 
|---|
| 70 | EXNSIT ;EXTRANODAL SITE 1,2,3 (FIELDS #852,#853,#854) INPUT TRANSFORM
 | 
|---|
| 71 |  I X[U!(X="") K X Q
 | 
|---|
| 72 |  I $L(X)<3 W *7,"  Must be at least 3 characters " K X Q
 | 
|---|
| 73 |  I X=888!(X="C888")!(X=88.8)!(X="C88.8") S X="C888" W "  None" Q
 | 
|---|
| 74 |  I X=999!(X="C999")!(X=99.9)!(X="C99.9") S X="C999" W "  Unknown" Q
 | 
|---|
| 75 |  K DIC S DIC="^ONCO(164,",DIC(0)="EMQ" D ^DIC
 | 
|---|
| 76 |  I Y<0 K X Q
 | 
|---|
| 77 |  I +Y'<0 S CCD=$P($G(^ONCO(164,+Y,0)),U,2) S X=$E(CCD,1,3)_$E(CCD,5) Q
 | 
|---|
| 78 | EXNSOT ;EXTRANODAL SITE 1,2,3 (FIELDS #852,#853,#854) OUTPUT TRANSFORM
 | 
|---|
| 79 |  I Y="C888" S Y="None" Q
 | 
|---|
| 80 |  I Y="C999" S Y="Unknown" Q
 | 
|---|
| 81 |  S EXN=$E(Y,1,3)_"."_$E(Y,4)
 | 
|---|
| 82 |  F TPG=0:0 S TPG=$O(^ONCO(164,TPG)) Q:TPG'>0  D
 | 
|---|
| 83 |  .I EXN'=$P($G(^ONCO(164,TPG,0)),U,2) Q
 | 
|---|
| 84 |  .S TPGNM=$P($G(^ONCO(164,TPG,0)),U,1),EXN=EXN_"  "_TPGNM Q
 | 
|---|
| 85 |  S Y=EXN K EXN,TPG,TPGNM Q
 | 
|---|
| 86 | XHP ;EXTRANODAL SITE 1,2,3 (FIELDS #852,#853,#854) EXECUTABLE HELP
 | 
|---|
| 87 |  I X'="?",X'="??" Q
 | 
|---|
| 88 |  K DIC S DIC="^ONCO(164,",DIC(0)="EMQ" D ^DIC Q
 | 
|---|
| 89 | RCSIT ;RADIATION/CHEMOTHERAPY SEQUENCE (#862) INPUT TRANSFORM
 | 
|---|
| 90 |  I X=0!(X=5)!(X=6) K X Q
 | 
|---|
| 91 |  S Y=X D RCSOT W "  ",Y K Y
 | 
|---|
| 92 |  Q
 | 
|---|
| 93 | RCSOT ;RADIATION/CHEMOTHERAPY SEQUENCE (#862) OUTPUT TRANSFORM
 | 
|---|
| 94 |  I Y=1 S Y="Radiation before chemotherapy"
 | 
|---|
| 95 |  I Y=2 S Y="Chemotherapy before radiation"
 | 
|---|
| 96 |  I Y=3 S Y="Chemotherapy before and after radiation"
 | 
|---|
| 97 |  I Y=4 S Y="Radiation and chemotherapy concurrently"
 | 
|---|
| 98 |  I Y=7 S Y="Unknown if radiation and/or chemo given"
 | 
|---|
| 99 |  I Y=8 S Y="NA, no radiation and/or no chemo given"
 | 
|---|
| 100 |  I Y=9 S Y="Sequence unknown"
 | 
|---|
| 101 |  Q
 | 
|---|
| 102 | RCSHP ;RADIATION/CHEMOTHERAPY SEQUENCE (#862) HELP
 | 
|---|
| 103 |  W !,"  1  Radiation before chemotherapy"
 | 
|---|
| 104 |  W !,"  2  Chemotherapy before radiation"
 | 
|---|
| 105 |  W !,"  3  Chemotherapy before and after radiation"
 | 
|---|
| 106 |  W !,"  4  Radiation and chemotherapy concurrently"
 | 
|---|
| 107 |  W !,"  7  Unknown if radiation and/or chemo given"
 | 
|---|
| 108 |  W !,"  8  NA, no radiation and/or no chemo given"
 | 
|---|
| 109 |  W !,"  9  Sequence unknown",!
 | 
|---|
| 110 |  Q
 | 
|---|
| 111 |  S %DT="EP",%DT(0)="-NOW" D ^%DT S X=Y K:Y<1 X K ^%DT(0)
 | 
|---|
| 112 |  I $D(X) S DTDX=$P($G(^ONCO(165.5,D0,0)),U,16) I DTDX'="" K:X<DTDX X
 | 
|---|
| 113 | FSC ;Calculate default for fields #1102,#1103
 | 
|---|
| 114 |  ;I $P($G(^ONCO(165.5,D0,"MEL1")),U,3)'="" S X="" Q
 | 
|---|
| 115 |  S PNM=$P($G(^ONCO(165.5,D0,0)),U,2),X="C88.8",FSDX="88/8888"
 | 
|---|
| 116 |  S ST=0 F  S ST=$O(^ONCO(165.5,"C",PNM,ST)) Q:ST'>0  I $$DIV^ONCFUNC(ST)=DUZ(2) S LAST=ST
 | 
|---|
| 117 |  I LAST'=D0 D
 | 
|---|
| 118 |  .S Y=$P($G(^ONCO(165.5,LAST,0)),U,16) D CHDTOT^ONCOPCE S FSDX=Y
 | 
|---|
| 119 |  .S TPX=$P($G(^ONCO(165.5,LAST,2)),U,1) I TPX="" Q
 | 
|---|
| 120 |  .S TPX=$G(^ONCO(164,TPX,0)) S:TPX'="" X=$P(TPX,U,2) Q
 | 
|---|
| 121 |  I LAST=D0 F  S LAST=$O(^ONCO(165.5,"C",PNM,LAST),-1) Q:LAST=""  I $$DIV^ONCFUNC(LAST)=DUZ(2) D  Q
 | 
|---|
| 122 |  .S Y=$P($G(^ONCO(165.5,LAST,0)),U,16) D CHDTOT^ONCOPCE S FSDX=Y
 | 
|---|
| 123 |  .S TPX=$P($G(^ONCO(165.5,LAST,2)),U,1) I TPX="" Q
 | 
|---|
| 124 |  .S TPX=$G(^ONCO(164,TPX,0)) S:TPX'="" X=$P(TPX,U,2) Q
 | 
|---|
| 125 |  K LAST,PNM,ST,TPX Q
 | 
|---|
| 126 | SSC ;Calculate default for fields #1104,#1105
 | 
|---|
| 127 |  ;I $P($G(^ONCO(165.5,D0,"MEL1")),U,5)'="" S X="" Q
 | 
|---|
| 128 |  S PNM=$P($G(^ONCO(165.5,D0,0)),U,2),X="C88.8",SSDX="88/8888",FLG=0
 | 
|---|
| 129 |  S ST=0 F  S ST=$O(^ONCO(165.5,"C",PNM,ST)) Q:ST'>0  I $$DIV^ONCFUNC(ST)=DUZ(2) S LAST=ST
 | 
|---|
| 130 |  I LAST'=D0 S FLG=FLG+1
 | 
|---|
| 131 |  S SSC=LAST F  S SSC=$O(^ONCO(165.5,"C",PNM,SSC),-1) Q:SSC'>""!(FLG>1)  I $$DIV^ONCFUNC(SSC)=DUZ(2) D
 | 
|---|
| 132 |  .I SSC=D0 Q
 | 
|---|
| 133 |  .I FLG=0 S FLG=FLG+1 Q
 | 
|---|
| 134 |  .S FLG=FLG+1
 | 
|---|
| 135 |  .S Y=$P($G(^ONCO(165.5,SSC,0)),U,16) D CHDTOT^ONCOPCE S SSDX=Y
 | 
|---|
| 136 |  .S TPX=$P($G(^ONCO(165.5,SSC,2)),U,1) S:TPX'="" TPX=$G(^ONCO(164,TPX,0)) S:TPX'="" X=$P(TPX,U,2) Q
 | 
|---|
| 137 |  K FLG,LAST,PNM,SSC,ST,TPX Q
 | 
|---|
| 138 | NSNIT ;Number of Satellite Nodules (#1112)
 | 
|---|
| 139 |  I X'?1.2N K X Q
 | 
|---|
| 140 |  I X=0!(X="00") S X="00" W "  No satellite nodules"
 | 
|---|
| 141 |  I X=96 W "  96 or more nodules"
 | 
|---|
| 142 |  I X=97 W "  Satellite nodules, # unknown"
 | 
|---|
| 143 |  I X=98 W "  NA, non-cutaneous melanoma"
 | 
|---|
| 144 |  I X=99 W "  Unknown"
 | 
|---|
| 145 |  S X=$S($L(X)=1:"0"_X,1:X)
 | 
|---|
| 146 |  Q
 | 
|---|
| 147 | NSNOT ;Number of Satellite Nodules (#1112)
 | 
|---|
| 148 |  I Y="00" S Y="No satellite nodules" Q
 | 
|---|
| 149 |  I Y=96 S Y="96 or more nodules" Q
 | 
|---|
| 150 |  I Y=97 S Y="Satellite nodules, # unknown" Q
 | 
|---|
| 151 |  I Y=98 S Y="NA, non-cutaneous melanoma" Q
 | 
|---|
| 152 |  I Y=99 S Y="Unknown" Q
 | 
|---|
| 153 |  S Y=$S(Y="01":Y_" nodule",1:Y_" nodules")
 | 
|---|
| 154 |  Q
 | 
|---|
| 155 | BTIT ;Breslow's Thickness (#1113)
 | 
|---|
| 156 |  I X'?1.3N K X Q
 | 
|---|
| 157 |  I X=997 W "  Cutaneous melanoma, thickness unk"
 | 
|---|
| 158 |  I X=998 W "  NA, non-cutaneous melanoma"
 | 
|---|
| 159 |  I X=999 W "  Primary site unknown"
 | 
|---|
| 160 |  S X=$S($L(X)=1:"00"_X,$L(X)=2:"0"_X,1:X)
 | 
|---|
| 161 |  Q
 | 
|---|
| 162 | BTOT ;Breslow's Thickness (#1113)
 | 
|---|
| 163 |  I Y=997 S Y="Cutaneous melanoma, thickness unk" Q
 | 
|---|
| 164 |  I Y=998 S Y="NA, non-cutaneous melanoma" Q
 | 
|---|
| 165 |  I Y=999 S Y="Primary site unknown" Q
 | 
|---|
| 166 |  S Y=Y_" mm"
 | 
|---|
| 167 |  Q
 | 
|---|
| 168 | MDIT ;Margin Distance (#1120)
 | 
|---|
| 169 |  I X'?1.3N K X Q
 | 
|---|
| 170 |  I X=997 W "  Margins free, distance unknown"
 | 
|---|
| 171 |  I X=998 W "  NA, surgery not performed"
 | 
|---|
| 172 |  I X=999 W "  Unknown"
 | 
|---|
| 173 |  S X=$S($L(X)=1:"00"_X,$L(X)=2:"0"_X,1:X)
 | 
|---|
| 174 |  Q
 | 
|---|
| 175 | MDOT ;Margin Distance (#1120)
 | 
|---|
| 176 |  I Y=996 S Y=Y_"mm or more" Q
 | 
|---|
| 177 |  I Y=997 S Y="Margins free, distance unknown" Q
 | 
|---|
| 178 |  I Y=998 S Y="NA, surgery not performed" Q
 | 
|---|
| 179 |  I Y=999 S Y="Unknown" Q
 | 
|---|
| 180 |  S Y=Y_"mm"
 | 
|---|
| 181 |  Q
 | 
|---|
| 182 | SNPIT ;Sentinel Nodes Positive (#1125)
 | 
|---|
| 183 |  I X=0!(X>6) Q
 | 
|---|
| 184 |  S SNE=$P($G(^ONCO(165.5,D0,"MEL1")),U,25) I SNE=""!(SNE>5) Q
 | 
|---|
| 185 |  I X>SNE W !,"     Sentinel Nodes Positive MUST be less than/equal Sentinel Nodes Examined! " K X Q
 | 
|---|
| 186 |  Q
 | 
|---|
| 187 | NBPIT ;Number of Basins Positive (#1129)
 | 
|---|
| 188 |  I X=0!(X>6) Q
 | 
|---|
| 189 |  S NBD=$P($G(^ONCO(165.5,D0,"MEL1")),U,29) I NBD=""!(NBD>5) Q
 | 
|---|
| 190 |  I X>NBD W !,"     Number of Basins Positive MUST be less than/equal to Basins Detected! " K X Q
 | 
|---|
| 191 |  Q
 | 
|---|