[613] | 1 | ONCPREMR ;HIRMFO/RTK-PRE-INSTALL ROUTINE CONTINUED ONC*2.11*13 09/10/97
|
---|
| 2 | ;;2.11;ONCOLOGY;**13**;Mar 07, 1995
|
---|
| 3 | ;
|
---|
| 4 | ; Loop thru ICDO MORPHOLOGY (#164.1) file and find any duplicate entries
|
---|
| 5 | ; of 9710/2 & 9710/3. Convert any pointers that point to these entries
|
---|
| 6 | ; and then delete the duplicates entries.
|
---|
| 7 | ;
|
---|
| 8 | W !!,"Checking for any duplicates in ICDO MORHOLOGY (#164.1) file..."
|
---|
| 9 | S MRBAD=""
|
---|
| 10 | F MR=0:0 S MR=$O(^ONCO(164.1,"B","MARGINAL ZONE LYMPHOMA, NOS IN",MR)) Q:MR'>0 I MR'=97102 S MRBAD=MRBAD_MR_"^"
|
---|
| 11 | F MR=0:0 S MR=$O(^ONCO(164.1,"B","MARGINAL ZONE LYMPHOMA, NOS",MR)) Q:MR'>0 I MR'=97103 S MRBAD=MRBAD_MR_"^"
|
---|
| 12 | I MRBAD="" G CHANGE ;if theres no duplicates, skip the conversion stuff
|
---|
| 13 | ;
|
---|
| 14 | ; Convert field #22 of file #165.5
|
---|
| 15 | ;
|
---|
| 16 | S CT=0
|
---|
| 17 | W !?4,"Converting file #165.5 pointers..."
|
---|
| 18 | F PRIEN=0:0 S PRIEN=$O(^ONCO(165.5,PRIEN)) Q:PRIEN'>0 D
|
---|
| 19 | .S CT=CT+1 I CT#100=0 W "."
|
---|
| 20 | .I '$D(^ONCO(165.5,PRIEN,2)) Q
|
---|
| 21 | .S HIST=$P($G(^ONCO(165.5,PRIEN,2)),"^",3) I HIST="" Q
|
---|
| 22 | .I MRBAD[HIST D
|
---|
| 23 | ..I $P($G(^ONCO(164.1,HIST,0)),"^",2)="9710/2" S $P(^ONCO(165.5,PRIEN,2),"^",3)=97102 Q
|
---|
| 24 | ..I $P($G(^ONCO(164.1,HIST,0)),"^",2)="9710/3" S $P(^ONCO(165.5,PRIEN,2),"^",3)=97103 Q
|
---|
| 25 | ..W !,"CANNOT CONVERT POINTER IN ENTRY NUMBER: ",PRIEN Q
|
---|
| 26 | .Q
|
---|
| 27 | ;
|
---|
| 28 | ; Convert field #64 of file #160
|
---|
| 29 | ;
|
---|
| 30 | S CT=0
|
---|
| 31 | W !?4,"Converting file #160 pointers..."
|
---|
| 32 | F PTIEN=0:0 S PTIEN=$O(^ONCO(160,PTIEN)) Q:PTIEN'>0 D
|
---|
| 33 | .S CT=CT+1 I CT#100=0 W "."
|
---|
| 34 | .I '$D(^ONCO(160,PTIEN,2)) Q
|
---|
| 35 | .S MORPH=$P($G(^ONCO(160,PTIEN,2)),"^",10) I MORPH="" Q
|
---|
| 36 | .I MRBAD[MORPH D
|
---|
| 37 | ..I $P($G(^ONCO(164.1,MORPH,0)),"^",2)="9710/2" S $P(^ONCO(160,PTIEN,2),"^",10)=97102 Q
|
---|
| 38 | ..I $P($G(^ONCO(164.1,MORPH,0)),"^",2)="9710/3" S $P(^ONCO(160,PTIEN,2),"^",10)=97103 Q
|
---|
| 39 | ..W !,"CANNOT CONVERT POINTER IN ENTRY NUMBER: ",PTIEN Q
|
---|
| 40 | .Q
|
---|
| 41 | ;
|
---|
| 42 | ; Convert field #70 of file #169.1
|
---|
| 43 | ;
|
---|
| 44 | S CT=0
|
---|
| 45 | W !?4,"Converting file #169.1 pointers..."
|
---|
| 46 | F ICDIEN=0:0 S ICDIEN=$O(^ONCO(169.1,ICDIEN)) Q:ICDIEN'>0 D
|
---|
| 47 | .S CT=CT+1 I CT#100=0 W "."
|
---|
| 48 | .I '$D(^ONCO(169.1,ICDIEN,0)) Q
|
---|
| 49 | .S MRPH1=$P($G(^ONCO(169.1,ICDIEN,0)),"^",5) I MRPH1="" Q
|
---|
| 50 | .I MRBAD[MRPH1 D
|
---|
| 51 | ..I $P($G(^ONCO(164.1,MRPH1,0)),"^",2)="9710/2" S $P(^ONCO(169.1,ICDIEN,0),"^",5)=97102 Q
|
---|
| 52 | ..I $P($G(^ONCO(164.1,MRPH1,0)),"^",2)="9710/3" S $P(^ONCO(169.1,ICDIEN,0),"^",5)=97103 Q
|
---|
| 53 | ..W !,"CANNOT CONVERT POINTER IN ENTRY NUMBER: ",ICDIEN Q
|
---|
| 54 | .Q
|
---|
| 55 | ;
|
---|
| 56 | ; Convert field #30 of file #164.1 (points to itself)
|
---|
| 57 | ;
|
---|
| 58 | S CT=0
|
---|
| 59 | W !?4,"Converting file #164.1 pointers..."
|
---|
| 60 | F MRIEN=0:0 S MRIEN=$O(^ONCO(164.1,MRIEN)) Q:MRIEN'>0 D
|
---|
| 61 | .S CT=CT+1 I CT#100=0 W "."
|
---|
| 62 | .I '$D(^ONCO(164.1,MRIEN,0)) Q
|
---|
| 63 | .S TNCODE=$P($G(^ONCO(164.1,MRIEN,0)),"^",4) I TNCODE="" Q
|
---|
| 64 | .I MRBAD[TNCODE D
|
---|
| 65 | ..I $P($G(^ONCO(164.1,TNCODE,0)),"^",2)="9710/2" S $P(^ONCO(164.1,MRIEN,0),"^",4)=97102 Q
|
---|
| 66 | ..I $P($G(^ONCO(164.1,TNCODE,0)),"^",2)="9710/3" S $P(^ONCO(164.1,MRIEN,0),"^",4)=97103 Q
|
---|
| 67 | ..W !,"CANNOT CONVERT POINTER IN ENTRY NUMBER: ",MRIEN Q
|
---|
| 68 | .Q
|
---|
| 69 | ;
|
---|
| 70 | ; Convert sub-field #.01 of field #20 (multiple) of file #164.2
|
---|
| 71 | ;
|
---|
| 72 | S CT=0
|
---|
| 73 | W !?4,"Converting file #164.2 pointers..."
|
---|
| 74 | F STIEN=0:0 S STIEN=$O(^ONCO(164.2,STIEN)) Q:STIEN'>0 D
|
---|
| 75 | .S CT=CT+1 I CT#100=0 W "."
|
---|
| 76 | .I '$D(^ONCO(164.2,STIEN,"M",0)) Q
|
---|
| 77 | .F STMULT=0:0 S STMULT=$O(^ONCO(164.2,STIEN,"M",STMULT)) Q:STMULT'>0 D
|
---|
| 78 | ..S STMORP=$P($G(^ONCO(164.2,STIEN,"M",STMULT,0)),"^",1) I STMORP="" Q
|
---|
| 79 | ..I MRBAD[STMORP D
|
---|
| 80 | ...I $P($G(^ONCO(164.1,STMORP,0)),"^",2)="9710/2" S $P(^ONCO(164.2,STIEN,"M",STMULT,0),"^",1)=97102 Q
|
---|
| 81 | ...I $P($G(^ONCO(164.1,STMORP,0)),"^",2)="9710/3" S $P(^ONCO(164.2,STIEN,"M",STMULT,0),"^",1)=97103 Q
|
---|
| 82 | ...W !,"CANNOT CONVERT POINTER IN ENTRY NUMBER: ",STIEN," SUBFIELD ",STMULT Q
|
---|
| 83 | ..Q
|
---|
| 84 | .Q
|
---|
| 85 | ;
|
---|
| 86 | ; Delete the duplicates of MARGINAL ZONE LYMPHOMA, NOS & NOS IN SITU
|
---|
| 87 | ;
|
---|
| 88 | S NUM=0 F S NUM=NUM+1,MRDA=$P(MRBAD,"^",NUM) Q:MRDA="" D
|
---|
| 89 | .S DIK="^ONCO(164.1,",DA=MRDA D ^DIK
|
---|
| 90 | .Q
|
---|
| 91 | ;
|
---|
| 92 | CHANGE ; Correct NAME (#.01) field of entries #97102,#97103 in 164.1 file
|
---|
| 93 | ; and correct CODE (#1) field of entry #86221 in 164.1 file
|
---|
| 94 | ;
|
---|
| 95 | S DR=".01///MARGINAL ZONE LYMPHOMA, NOS IN SITU",DIE="^ONCO(164.1,",DA=97102 D ^DIE
|
---|
| 96 | S DR=".01///MARGINAL ZONE LYMPHOMA, NOS",DIE="^ONCO(164.1,",DA=97103 D ^DIE
|
---|
| 97 | S DR="1////8622/1",DIE="^ONCO(164.1,",DA=86221 D ^DIE
|
---|
| 98 | ;
|
---|
| 99 | K CT,HIST,ICDIEN,MORPH,MR,MRBAD,MRDA,MRIEN,MRPH1,NUM,PRIEN,PTIEN
|
---|
| 100 | K STIEN,STMORP,STMULT,TNCODE
|
---|
| 101 | Q
|
---|