ONC2PS01 ;Hines OIFO/RVD - Pre&Post-Install Routine for Patch ONC*2.2*1 ;07/1/13
;;2.2;ONCOLOGY;**1**;Jul 31, 2013;Build 8
;
N RC
;DC production server.
S RC=$$UPDCSURL^ONCSAPIU("http://127.0.0.1:1757/cgi_bin/oncsrv.exe")
;DC test server, comment out for final release.
;S RC=$$UPDCSURL^ONCSAPIU("http://127.0.0.1:1755/cgi_bin/oncsrv.exe")
;
D C3E,CS,COC,LYM,METS,PR6,PR3,EXTCODE,CHEM,OSG,AJSGHLP,HIST,CONN,USS
Q
;
CS ;check if the server is up. If down, instruct IRM to re-run CS conversion.
S RC=$$CHKVER^ONCSAPIV() I RC'=0 D Q ;quit if server is down.
.D BMES^XPDUTL("OncoTrax server is down...re-run the conversion in programmer mode, type D CS^ONC2PS01")
;
W !!," Converting CS 0204 cases to 0205..."
S IEN=0 F CNT=1:1 S IEN=$O(^ONCO(165.5,IEN)) Q:IEN'>0 W:CNT#100=0 "." D
.S DATEDX=$P($G(^ONCO(165.5,IEN,0)),U,16)
.S CSDERIVED=$P($G(^ONCO(165.5,IEN,"CS1")),U,11)
.I DATEDX>3031231 D
..I CSDERIVED="" S $P(^ONCO(165.5,IEN,"CS3"),U,2)="" Q
..I $P($G(^ONCO(165.5,IEN,"CS3")),U,2)=0 Q
..I $E(CSDERIVED,4)<5 D ^ONC2PS1A S $P(^ONCO(165.5,IEN,"EDITS"),U,2)=14
K CNT,CSDERIVED,DATEDX,HIST,HIST14,IEN,SITE
Q
COC ;add 'or persistence'
N ONCDF
S ONCDF=$P($G(^ONCO(165.3,12,0)),U,2)
S:(ONCDF["w recurrence")&($L(ONCDF)<70) $P(^ONCO(165.3,12,0),U,2)=ONCDF_" or persistence"
Q
;
LYM ;convert X to 8 or 9 for Lymphatic vessel invasion
W !!," Converting Lymphatic Vessel Invasion 'BLANK' or 'X' to 8 or 9..."
N IEN,ONCH,ONCHIST,ONCX
F IEN=0:0 S IEN=$O(^ONCO(165.5,IEN)) Q:IEN'>0 D
.S ONCH=$$HIST^ONCFUNC(IEN),ONCHIST=$E(ONCH,1,4)
.S ONCX=$P($G(^ONCO(165.5,IEN,2)),U,19)
.I (ONCX="X")!(ONCX="") D
..I (ONCHIST>9589)&(ONCHIST<9993) S $P(^ONCO(165.5,IEN,2),U,19)=8
..E S $P(^ONCO(165.5,IEN,2),U,19)=9
Q
;
METS ;If METS AT DX (CS) (#165.5,34.3) equals "98" then the following
;four fields must be set to "8":
; METS AT DX-BONE (#165.5,34.31), METS AT DX-BRAIN (#165.5,34.32)
; METS AT DX-LIVER (#165.5,34.33) METS AT DX-LUNG (#165.5,34.34)
D BMES^XPDUTL(" Converting METS AT DX-fields...")
N IEN,ONCMDX
F IEN=0:0 S IEN=$O(^ONCO(165.5,IEN)) Q:IEN'>0 D
.S ONCMDX=$P($G(^ONCO(165.5,IEN,"CS")),U,3) I ONCMDX'=98 Q
.S $P(^ONCO(165.5,IEN,"CS1"),U,20)=8,$P(^ONCO(165.5,IEN,"CS1"),U,21)=8
.S $P(^ONCO(165.5,IEN,"CS1"),U,22)=8,$P(^ONCO(165.5,IEN,"CS1"),U,23)=8
Q
;
PRE1 ;environment check code, entry point of pre-init
N ONCVER
S ONCVER=$$VERSION^XPDUTL("ONC")
I ONCVER<2.11 D BMES^XPDUTL("Your system must have Oncology v2.11 in order to continue with this installation!!!") S XPDABORT=1 Q
;clean-up file 160.16
N ONCI
K ^ONCO(160.16) ;delete old entries of file #160.16, to be replaced in p1.
D BMES^XPDUTL("Done removing old entries in file #160.16")
VER ;update version number to 2.2 from 2.11
S ONCI=159.999
F S ONCI=$O(^DD(ONCI)) Q:(ONCI>160.666)!(ONCI="") S:$D(^DD(ONCI,0,"VR")) ^DD(ONCI,0,"VR")=2.2
S ONCI=163.999
F S ONCI=$O(^DD(ONCI)) Q:(ONCI>169.999)!(ONCI="") S:$D(^DD(ONCI,0,"VR")) ^DD(ONCI,0,"VR")=2.2
S:$D(^DD(5.1,0,"VR")) ^DD(5.1,0,"VR")=2.2
S:$D(^DD(5.11,0,"VR")) ^DD(5.11,0,"VR")=2.2
VER1 ;update oncology version status and Current Version
N ONCII,ONCVRNM,ONCVRNO,ONCCVR,DA,DIE,DR
I '$D(^ONCO(169.99,"B","ONCOLOGY V2.2")) D
.S ONCII=$O(^ONCO(169.99,999999999),-1)
.S ONCVRNO=$P($G(^ONCO(169.9,ONCII,0)),U,2)
.S DIE="^ONCO(169.99,",DA=ONCII+1,ONCVRNM="ONCOLOGY V2.2"
.S DR=".01///^S X=ONCVRNM;.02///2.2;1///2.11" D ^DIE
D BMES^XPDUTL("Done setting version # to 2.2 in Oncology files!!!")
;update Current Version of the package file
N ONCPAC,DA
S DIE="^DIC(9.4,",DA=$O(^DIC(9.4,"B","ONCOLOGY",0)),DR="13///^S X=2.2" D ^DIE
Q
;
PR6 ;process form for FOLLOWUP RATE REPORT
N ONCIEN,VAL
S ONCIEN=$O(^ONCO(160.2,"B","FOLLOWUP RATE REPORT",0))
D BMES^XPDUTL("Updating file #160.2 for followup rate form...")
I '$G(ONCIEN) D BMES^XPDUTL("No FOLLOWUP RATE REPORT form in your system, please inform your ONCOLOGY Dept...") Q
F NNN=1:1 S VAL=$P($T(DAT6+NNN),";;",2) Q:VAL="" S ^ONCO(160.2,ONCIEN,1,NNN,0)=VAL
D BMES^XPDUTL("Done updating file #160.2 for FOLLOWUP RATE REPORT form!!!")
Q
PR3 ;process form FOLLOWUP RATE REPORT 1
N ONCIEN3,VAL
S ONCIEN3=$O(^ONCO(160.2,"B","FOLLOWUP RATE REPORT 1",0))
D BMES^XPDUTL("Updating file #160.2 for followup rate report 1 form...")
I '$G(ONCIEN3) D BMES^XPDUTL("No FOLLOWUP RATE REPORT 1 form in your system, please inform your ONCOLOGY Dept...") Q
F NNN=1:1 S VAL=$P($T(DAT3+NNN),";;",2) Q:VAL="" S ^ONCO(160.2,ONCIEN3,1,NNN,0)=VAL
D BMES^XPDUTL("Done updating file #160.2 for FOLLOWUP RATE REPORT 1 form!!!")
Q
;
EXTCODE ;Correct the extension text for C69.5 in SEER CODE SET (#164.5) file
;Code 80 was set to "Adjacent Bone", should be "Further Contiguous Ext"
S DA=81,DA(1)=173,DIE="^ONCO(164.5,"_DA(1)_",1,"
S ONCNWTXT="Further contiguous extension",DR=".01///^S X=ONCNWTXT"
D ^DIE
K ONCNWTXT
Q
;
CHEM ;Add 4 new & update 2 existing entries for CHEMO DRUGS (#164.18) file
; Add these 4 entries: AXITINIB,PRALATREXATE,RUXOLITINIB,PAZOPANIB
; Modify these 2 entries: RAD001, IMATINIB MESYLATE
N ONCCMIEN,D0,DA,DD,DIC,X,Y K DD,DO
D AXIN,PRAL,RUXO,PAZO,AFIN,DESA Q
K ONCCMIEN Q
AXIN Q:$D(^ONCO(164.18,"B","AXITINIB"))
S DIC="^ONCO(164.18,",DIC(0)="L",X="AXITINIB",DIC("DR")="1///013736"
D FILE^DICN I Y=-1 Q
S ONCCMIEN=+Y,DA(1)=ONCCMIEN,DIC="^ONCO(164.18,"_DA(1)_",1,",DIC(0)="L"
F X="AG013736","INLYTA" D FILE^DICN
Q
PRAL Q:$D(^ONCO(164.18,"B","PRALATREXATE"))
S DIC="^ONCO(164.18,",DIC(0)="L",X="PRALATREXATE",DIC("DR")="1///488180"
D FILE^DICN I Y=-1 Q
S ONCCMIEN=+Y,DA(1)=ONCCMIEN,DIC="^ONCO(164.18,"_DA(1)_",1,",DIC(0)="L"
F X="FOLOTYN" D FILE^DICN
Q
RUXO Q:$D(^ONCO(164.18,"B","RUXOLITINIB"))
S DIC="^ONCO(164.18,",DIC(0)="L",X="RUXOLITINIB",DIC("DR")="1///018424"
D FILE^DICN
Q
PAZO Q:$D(^ONCO(164.18,"B","PAZOPANIB"))
S DIC="^ONCO(164.18,",DIC(0)="L",X="PAZOPANIB",DIC("DR")="1///444731"
D FILE^DICN I Y=-1 Q
S ONCCMIEN=+Y,DA(1)=ONCCMIEN,DIC="^ONCO(164.18,"_DA(1)_",1,",DIC(0)="L"
F X="VOTRIENT" D FILE^DICN
Q
AFIN S ONCCMIEN=$O(^ONCO(164.18,"B","RAD001","")) I ONCCMIEN="" Q
S DA(1)=ONCCMIEN,DIC="^ONCO(164.18,"_DA(1)_",1,",DIC(0)="L"
F X="AFINITOR","CERTICAN","EVEROLIMUS" D
.Q:$D(^ONCO(164.18,ONCCMIEN,1,"B",X))
.D FILE^DICN
Q
DESA S ONCCMIEN=$O(^ONCO(164.18,"B","IMATINIB MESYLATE","")) I ONCCMIEN="" Q
Q:$D(^ONCO(164.18,ONCCMIEN,1,"B","DESATINIB"))
S DA(1)=ONCCMIEN,DIC="^ONCO(164.18,"_DA(1)_",1,",DIC(0)="L"
F X="DESATINIB" D FILE^DICN
Q
;
OSG ;Add 2 new entries for OTHER STAGING GROUPS FOR ONCOLOGY (#164.3) file
N ONCOSIEN,D0,DA,DD,DIC,X,Y K DD,DO
D BCLC,MELD
K ONCOSIEN Q
BCLC Q:$D(^ONCO(164.3,"B","BCLC"))
S DIC="^ONCO(164.3,",DIC(0)="L",X="BCLC" D FILE^DICN I Y=-1 Q
S ONCOSIEN=+Y,DA(1)=ONCOSIEN,DIC="^ONCO(164.3,"_DA(1)_",1,",DIC(0)="L"
F X=20 D FILE^DICN
Q
MELD Q:$D(^ONCO(164.3,"B","MELD"))
S DIC="^ONCO(164.3,",DIC(0)="L",X="MELD" D FILE^DICN I Y=-1 Q
S ONCOSIEN=+Y,DA(1)=ONCOSIEN,DIC="^ONCO(164.3,"_DA(1)_",1,",DIC(0)="L"
F X=20 D FILE^DICN
Q
;
AJSGHLP ;Correct typos in AJCC STAGING GROUPS (#164.33) 6TH EDITION (N) CODE
; HELP (5 node) for BREAST (entry #23): O's should be 0's (zeroes)
S ^ONCO(164.33,23,5,8,0)="N0(i+) No regional lymph node metastasis histologically, positive IHC,"
S ^ONCO(164.33,23,5,12,0)="N0(mol+) No regional lymph node metastasis histologically, positive"
Q
HIST ;Edit names and synonyms of two Histology entries in Histology ICD-O-3
;file (169.3), entries 97511 and 97513
S DIC="^ONCO(169.3,",X=97511 D ^DIC
I Y'=-1 S DIE="^ONCO(169.3,",DA=+Y,DR=".01///LANGERHANS CELL HISTIOCYTOSIS, NOS (<2010 CASES)" D ^DIE
S DIC="^ONCO(169.3,",X=97513 D ^DIC
I Y'=-1 S ONCH3IEN=+Y,DIE="^ONCO(169.3,",DA=+Y,DR=".01///LANGERHANS CELL HISTIOCYTOSIS, NOS" D ^DIE
I $D(^ONCO(169.3,ONCH3IEN,1,1,0)) K DA,DIC,DIE,DR,ONCH3IEN,Y Q
S DA(1)=ONCH3IEN,DIC="^ONCO(169.3,"_DA(1)_",1,",DIC(0)="L"
F X="LANGERHANS CELL GRANULOMATOSIS","HISTIOCYTOSIS X, NOS" D FILE^DICN
K DA,DIC,DIE,DR,ONCH3IEN,Y
Q
;
CONN ;Change West Haven to Connecticut HCS
;Change NAME (160.19,.02) for WEST HAVEN VA MEDICAL CENTER to CONNECTICUT HCS
S DIC="^ONCO(160.19,",X=6160765 D ^DIC
I Y'=-1 S DIE="^ONCO(160.19,",DA=+Y,DR=".02///CONNECTICUT HCS" D ^DIE
K DA,DIC,DIE,DR,Y
Q
;
USS ;Add valid user for server updates
S IEN=0
N ONCMAIL,ONCJ,DA,DR,DIC,DIE
S ONCMAIL("DORN")="rayeanne.dorn@domain.ext"
S ONCMAIL("DAYON")="rufino.dayon@domain.ext"
S ONCMAIL("KNOEPFLE")="rich.knoepfle@domain.ext"
S ONCMAIL("WALLER")="kathleen.waller@domain.ext"
S DIC(0)="L"
F S IEN=$O(^ONCO(160.1,IEN)) Q:IEN'>0 F ONCJ="DORN","DAYON","KNOEPFLE","WALLER" D
.S DA(1)=IEN,(DIE,DIC)="^ONCO(160.1,DA(1),""SEU"","
.I '$D(^ONCO(160.1,IEN,"SEU","B",ONCJ)) D
..S DIC("DR")="2///^S X=ONCMAIL(ONCJ)",X=ONCJ D FILE^DICN
.I $D(^ONCO(160.1,IEN,"SEU","B",ONCJ)) D
..S DA=$O(^ONCO(160.1,IEN,"SEU","B",ONCJ,0))
..S DR="2///^S X=ONCMAIL(ONCJ)" D ^DIE
Q
;
C3E ;3e SS1977
N I55
F I55=0:0 S I55=$O(^ONCO(165.5,I55)) Q:I55'>0 D
.I ($P($G(^ONCO(165.5,I55,"CS3")),U,3)["3e SS1977")!($P($G(^ONCO(165.5,I55,"CS3")),U,3)["3d SS1977") D
..S $P(^ONCO(165.5,I55,"CS3"),U,2)=""
..S $P(^ONCO(165.5,I55,"CS3"),U,3)=""
Q
;
DAT3 ;data for FOLLOWUP RATE REPORT
;;|SETTAB(68)|
;;|NOW|
;; FOLLOW-UP RATE FOR ALL PATIENTS (LIVING AND DEAD) NUMBER PERCENT
;;
;; Total patients from registry reference date |TOTAL#||TAB|100%
;;
;; 1. Less benign/borderline cases - |BENIGN|
;; 2. Less Carcinoma in situ cervix cases - |CERVIX|
;; 3. Less in situ/localized basal and squamous - |LOCAL BASAL|
;; cell carcinoma of skin cases "
;; 4. Less foreign residents - |FOREIGN|
;; 5. Less non-analytic cases - |NONANALYTIC|
;; 6. Less (ALL) Class of Case 00 case - |CC|
;; 7. Less (ALL) Patient Age 100+ case - |P100|
;;
;; SUBTOTAL CASES = ANALYTIC CASES (A) |ANALYTIC||TAB|100%
;; Class of Case 10-22
;;
;; 1. Less number dead (B) |DEAD||TAB||%DEAD|%
;;
;; SUBTOTAL CASES (NUMBER LIVING) (C) |LIVING||TAB||%LIVING|%
;;
;; 1. Less number current (known to be alive
;; in the last 15 months) (D) |CURRENT||TAB||%CURRENT-TOTAL|%
;;
;; TOTAL (LOST TO FOLLOW UP OR NOT CURRENT) (E) |LTF| *|TAB||%LTF-TOTAL|%
;; (* should be less than 20%)
;;
;; Successful follow-up currency (all patients) (F) |SFC| **|TAB||%SFC|
;; (** should be 80%)
;;========================================================================
;;
;; FOLLOW UP RATE FOR LIVING PATIENTS ONLY NUMBER PERCENT
;;
;; Enter the total number from Line C |LIVING||TAB|100%
;; Subtract the total number from Line D - |CURRENT||TAB||%CURRENT-ALIVE|%
;; Total lost/not current of living patients - |LTF||TAB||%LTF-ALIVE|%
DAT6 ;data for FOLLOWUP RATE REPORT 1
;;|SETTAB(68)|
;;|NOW|
;; FOLLOW-UP RATE FOR ALL PATIENTS (LIVING AND DEAD) NUMBER PERCENT
;;
;; Total patients diagnosed within last 5 years
;; or from registry reference date, whichever is
;; shorter |TOTAL#||TAB|100%
;;
;; 1. Less benign/borderline cases - |BENIGN|
;; 2. Less carcinoma in situ cervix cases - |CERVIX|
;; 3. Less in situ/localized basal and squamous - |LOCAL BASAL|
;; cell carcinoma of skin cases
;; 4. Less foreign residents - |FOREIGN|
;; 5. Less non-analytic - |NONANALYTIC|
;; 6. Less (ALL) Class of Case 00 case - |CC|
;; 7. Less (ALL) Patient Age 100+ case - |P100|
;;
;; SUBTOTAL CASES = ANALYTIC CASES (A) |ANALYTIC||TAB|100%
;; Class of Case 10-22
;;
;; 1. Less number dead (B) |DEAD||TAB||%DEAD|%
;;
;; SUBTOTAL CASES (NUMBER LIVING) (C) |LIVING||TAB||%LIVING|%
;;
;; 1. Less number current (known to be alive
;; in the last 15 months) (D) |CURRENT||TAB||%CURRENT-TOTAL|%
;;
;; TOTAL (LOST TO FOLLOW UP OR NOT CURRENT) (E) |LTF| *|TAB||%LTF-TOTAL|%
;;
;; (* should be less than 10%)
;;
;; Successful follow-up currency (all patients) (F) |SFC| **|TAB||%SFC|%
;; (** should be 90%)
;;=========================================================================
;;
;; FOLLOW UP RATE FOR LIVING PATIENTS ONLY NUMBER PERCENT
;;
;; Enter the total number from Line C |LIVING||TAB|100%
;; Subtract the total number from Line D - |CURRENT||TAB||%CURRENT-ALIVE|%
;; Total lost/not current of living patients - |LTF||TAB||%LTF-ALIVE|%
--- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HONC2PS01 13170 printed Apr 09, 2024@21:30:07 Page 2
ONC2PS01 ;Hines OIFO/RVD - Pre&Post-Install Routine for Patch ONC*2.2*1 ;07/1/13
+1 ;;2.2;ONCOLOGY;**1**;Jul 31, 2013;Build 8
+2 ;
+3 NEW RC
+4 ;DC production server.
+5 SET RC=$$UPDCSURL^ONCSAPIU("http://127.0.0.1:1757/cgi_bin/oncsrv.exe")
+6 ;DC test server, comment out for final release.
+7 ;S RC=$$UPDCSURL^ONCSAPIU("http://127.0.0.1:1755/cgi_bin/oncsrv.exe")
+8 ;
+9 DO C3E
DO CS
DO COC
DO LYM
DO METS
DO PR6
DO PR3
DO EXTCODE
DO CHEM
DO OSG
DO AJSGHLP
DO HIST
DO CONN
DO USS
+10 QUIT
+11 ;
CS ;check if the server is up. If down, instruct IRM to re-run CS conversion.
+1 ;quit if server is down.
SET RC=$$CHKVER^ONCSAPIV()
IF RC'=0
Begin DoDot:1
+2 DO BMES^XPDUTL("OncoTrax server is down...re-run the conversion in programmer mode, type D CS^ONC2PS01")
End DoDot:1
QUIT
+3 ;
+4 WRITE !!," Converting CS 0204 cases to 0205..."
+5 SET IEN=0
FOR CNT=1:1
SET IEN=$ORDER(^ONCO(165.5,IEN))
if IEN'>0
QUIT
if CNT#100=0
WRITE "."
Begin DoDot:1
+6 SET DATEDX=$PIECE($GET(^ONCO(165.5,IEN,0)),U,16)
+7 SET CSDERIVED=$PIECE($GET(^ONCO(165.5,IEN,"CS1")),U,11)
+8 IF DATEDX>3031231
Begin DoDot:2
+9 IF CSDERIVED=""
SET $PIECE(^ONCO(165.5,IEN,"CS3"),U,2)=""
QUIT
+10 IF $PIECE($GET(^ONCO(165.5,IEN,"CS3")),U,2)=0
QUIT
+11 IF $EXTRACT(CSDERIVED,4)<5
DO ^ONC2PS1A
SET $PIECE(^ONCO(165.5,IEN,"EDITS"),U,2)=14
End DoDot:2
End DoDot:1
+12 KILL CNT,CSDERIVED,DATEDX,HIST,HIST14,IEN,SITE
+13 QUIT
COC ;add 'or persistence'
+1 NEW ONCDF
+2 SET ONCDF=$PIECE($GET(^ONCO(165.3,12,0)),U,2)
+3 if (ONCDF["w recurrence")&($LENGTH(ONCDF)<70)
SET $PIECE(^ONCO(165.3,12,0),U,2)=ONCDF_" or persistence"
+4 QUIT
+5 ;
LYM ;convert X to 8 or 9 for Lymphatic vessel invasion
+1 WRITE !!," Converting Lymphatic Vessel Invasion 'BLANK' or 'X' to 8 or 9..."
+2 NEW IEN,ONCH,ONCHIST,ONCX
+3 FOR IEN=0:0
SET IEN=$ORDER(^ONCO(165.5,IEN))
if IEN'>0
QUIT
Begin DoDot:1
+4 SET ONCH=$$HIST^ONCFUNC(IEN)
SET ONCHIST=$EXTRACT(ONCH,1,4)
+5 SET ONCX=$PIECE($GET(^ONCO(165.5,IEN,2)),U,19)
+6 IF (ONCX="X")!(ONCX="")
Begin DoDot:2
+7 IF (ONCHIST>9589)&(ONCHIST<9993)
SET $PIECE(^ONCO(165.5,IEN,2),U,19)=8
+8 IF '$TEST
SET $PIECE(^ONCO(165.5,IEN,2),U,19)=9
End DoDot:2
End DoDot:1
+9 QUIT
+10 ;
METS ;If METS AT DX (CS) (#165.5,34.3) equals "98" then the following
+1 ;four fields must be set to "8":
+2 ; METS AT DX-BONE (#165.5,34.31), METS AT DX-BRAIN (#165.5,34.32)
+3 ; METS AT DX-LIVER (#165.5,34.33) METS AT DX-LUNG (#165.5,34.34)
+4 DO BMES^XPDUTL(" Converting METS AT DX-fields...")
+5 NEW IEN,ONCMDX
+6 FOR IEN=0:0
SET IEN=$ORDER(^ONCO(165.5,IEN))
if IEN'>0
QUIT
Begin DoDot:1
+7 SET ONCMDX=$PIECE($GET(^ONCO(165.5,IEN,"CS")),U,3)
IF ONCMDX'=98
QUIT
+8 SET $PIECE(^ONCO(165.5,IEN,"CS1"),U,20)=8
SET $PIECE(^ONCO(165.5,IEN,"CS1"),U,21)=8
+9 SET $PIECE(^ONCO(165.5,IEN,"CS1"),U,22)=8
SET $PIECE(^ONCO(165.5,IEN,"CS1"),U,23)=8
End DoDot:1
+10 QUIT
+11 ;
PRE1 ;environment check code, entry point of pre-init
+1 NEW ONCVER
+2 SET ONCVER=$$VERSION^XPDUTL("ONC")
+3 IF ONCVER<2.11
DO BMES^XPDUTL("Your system must have Oncology v2.11 in order to continue with this installation!!!")
SET XPDABORT=1
QUIT
+4 ;clean-up file 160.16
+5 NEW ONCI
+6 ;delete old entries of file #160.16, to be replaced in p1.
KILL ^ONCO(160.16)
+7 DO BMES^XPDUTL("Done removing old entries in file #160.16")
VER ;update version number to 2.2 from 2.11
+1 SET ONCI=159.999
+2 FOR
SET ONCI=$ORDER(^DD(ONCI))
if (ONCI>160.666)!(ONCI="")
QUIT
if $DATA(^DD(ONCI,0,"VR"))
SET ^DD(ONCI,0,"VR")=2.2
+3 SET ONCI=163.999
+4 FOR
SET ONCI=$ORDER(^DD(ONCI))
if (ONCI>169.999)!(ONCI="")
QUIT
if $DATA(^DD(ONCI,0,"VR"))
SET ^DD(ONCI,0,"VR")=2.2
+5 if $DATA(^DD(5.1,0,"VR"))
SET ^DD(5.1,0,"VR")=2.2
+6 if $DATA(^DD(5.11,0,"VR"))
SET ^DD(5.11,0,"VR")=2.2
VER1 ;update oncology version status and Current Version
+1 NEW ONCII,ONCVRNM,ONCVRNO,ONCCVR,DA,DIE,DR
+2 IF '$DATA(^ONCO(169.99,"B","ONCOLOGY V2.2"))
Begin DoDot:1
+3 SET ONCII=$ORDER(^ONCO(169.99,999999999),-1)
+4 SET ONCVRNO=$PIECE($GET(^ONCO(169.9,ONCII,0)),U,2)
+5 SET DIE="^ONCO(169.99,"
SET DA=ONCII+1
SET ONCVRNM="ONCOLOGY V2.2"
+6 SET DR=".01///^S X=ONCVRNM;.02///2.2;1///2.11"
DO ^DIE
End DoDot:1
+7 DO BMES^XPDUTL("Done setting version # to 2.2 in Oncology files!!!")
+8 ;update Current Version of the package file
+9 NEW ONCPAC,DA
+10 SET DIE="^DIC(9.4,"
SET DA=$ORDER(^DIC(9.4,"B","ONCOLOGY",0))
SET DR="13///^S X=2.2"
DO ^DIE
+11 QUIT
+12 ;
PR6 ;process form for FOLLOWUP RATE REPORT
+1 NEW ONCIEN,VAL
+2 SET ONCIEN=$ORDER(^ONCO(160.2,"B","FOLLOWUP RATE REPORT",0))
+3 DO BMES^XPDUTL("Updating file #160.2 for followup rate form...")
+4 IF '$GET(ONCIEN)
DO BMES^XPDUTL("No FOLLOWUP RATE REPORT form in your system, please inform your ONCOLOGY Dept...")
QUIT
+5 FOR NNN=1:1
SET VAL=$PIECE($TEXT(DAT6+NNN),";;",2)
if VAL=""
QUIT
SET ^ONCO(160.2,ONCIEN,1,NNN,0)=VAL
+6 DO BMES^XPDUTL("Done updating file #160.2 for FOLLOWUP RATE REPORT form!!!")
+7 QUIT
PR3 ;process form FOLLOWUP RATE REPORT 1
+1 NEW ONCIEN3,VAL
+2 SET ONCIEN3=$ORDER(^ONCO(160.2,"B","FOLLOWUP RATE REPORT 1",0))
+3 DO BMES^XPDUTL("Updating file #160.2 for followup rate report 1 form...")
+4 IF '$GET(ONCIEN3)
DO BMES^XPDUTL("No FOLLOWUP RATE REPORT 1 form in your system, please inform your ONCOLOGY Dept...")
QUIT
+5 FOR NNN=1:1
SET VAL=$PIECE($TEXT(DAT3+NNN),";;",2)
if VAL=""
QUIT
SET ^ONCO(160.2,ONCIEN3,1,NNN,0)=VAL
+6 DO BMES^XPDUTL("Done updating file #160.2 for FOLLOWUP RATE REPORT 1 form!!!")
+7 QUIT
+8 ;
EXTCODE ;Correct the extension text for C69.5 in SEER CODE SET (#164.5) file
+1 ;Code 80 was set to "Adjacent Bone", should be "Further Contiguous Ext"
+2 SET DA=81
SET DA(1)=173
SET DIE="^ONCO(164.5,"_DA(1)_",1,"
+3 SET ONCNWTXT="Further contiguous extension"
SET DR=".01///^S X=ONCNWTXT"
+4 DO ^DIE
+5 KILL ONCNWTXT
+6 QUIT
+7 ;
CHEM ;Add 4 new & update 2 existing entries for CHEMO DRUGS (#164.18) file
+1 ; Add these 4 entries: AXITINIB,PRALATREXATE,RUXOLITINIB,PAZOPANIB
+2 ; Modify these 2 entries: RAD001, IMATINIB MESYLATE
+3 NEW ONCCMIEN,D0,DA,DD,DIC,X,Y
KILL DD,DO
+4 DO AXIN
DO PRAL
DO RUXO
DO PAZO
DO AFIN
DO DESA
QUIT
+5 KILL ONCCMIEN
QUIT
AXIN if $DATA(^ONCO(164.18,"B","AXITINIB"))
QUIT
+1 SET DIC="^ONCO(164.18,"
SET DIC(0)="L"
SET X="AXITINIB"
SET DIC("DR")="1///013736"
+2 DO FILE^DICN
IF Y=-1
QUIT
+3 SET ONCCMIEN=+Y
SET DA(1)=ONCCMIEN
SET DIC="^ONCO(164.18,"_DA(1)_",1,"
SET DIC(0)="L"
+4 FOR X="AG013736","INLYTA"
DO FILE^DICN
+5 QUIT
PRAL if $DATA(^ONCO(164.18,"B","PRALATREXATE"))
QUIT
+1 SET DIC="^ONCO(164.18,"
SET DIC(0)="L"
SET X="PRALATREXATE"
SET DIC("DR")="1///488180"
+2 DO FILE^DICN
IF Y=-1
QUIT
+3 SET ONCCMIEN=+Y
SET DA(1)=ONCCMIEN
SET DIC="^ONCO(164.18,"_DA(1)_",1,"
SET DIC(0)="L"
+4 FOR X="FOLOTYN"
DO FILE^DICN
+5 QUIT
RUXO if $DATA(^ONCO(164.18,"B","RUXOLITINIB"))
QUIT
+1 SET DIC="^ONCO(164.18,"
SET DIC(0)="L"
SET X="RUXOLITINIB"
SET DIC("DR")="1///018424"
+2 DO FILE^DICN
+3 QUIT
PAZO if $DATA(^ONCO(164.18,"B","PAZOPANIB"))
QUIT
+1 SET DIC="^ONCO(164.18,"
SET DIC(0)="L"
SET X="PAZOPANIB"
SET DIC("DR")="1///444731"
+2 DO FILE^DICN
IF Y=-1
QUIT
+3 SET ONCCMIEN=+Y
SET DA(1)=ONCCMIEN
SET DIC="^ONCO(164.18,"_DA(1)_",1,"
SET DIC(0)="L"
+4 FOR X="VOTRIENT"
DO FILE^DICN
+5 QUIT
AFIN SET ONCCMIEN=$ORDER(^ONCO(164.18,"B","RAD001",""))
IF ONCCMIEN=""
QUIT
+1 SET DA(1)=ONCCMIEN
SET DIC="^ONCO(164.18,"_DA(1)_",1,"
SET DIC(0)="L"
+2 FOR X="AFINITOR","CERTICAN","EVEROLIMUS"
Begin DoDot:1
+3 if $DATA(^ONCO(164.18,ONCCMIEN,1,"B",X))
QUIT
+4 DO FILE^DICN
End DoDot:1
+5 QUIT
DESA SET ONCCMIEN=$ORDER(^ONCO(164.18,"B","IMATINIB MESYLATE",""))
IF ONCCMIEN=""
QUIT
+1 if $DATA(^ONCO(164.18,ONCCMIEN,1,"B","DESATINIB"))
QUIT
+2 SET DA(1)=ONCCMIEN
SET DIC="^ONCO(164.18,"_DA(1)_",1,"
SET DIC(0)="L"
+3 FOR X="DESATINIB"
DO FILE^DICN
+4 QUIT
+5 ;
OSG ;Add 2 new entries for OTHER STAGING GROUPS FOR ONCOLOGY (#164.3) file
+1 NEW ONCOSIEN,D0,DA,DD,DIC,X,Y
KILL DD,DO
+2 DO BCLC
DO MELD
+3 KILL ONCOSIEN
QUIT
BCLC if $DATA(^ONCO(164.3,"B","BCLC"))
QUIT
+1 SET DIC="^ONCO(164.3,"
SET DIC(0)="L"
SET X="BCLC"
DO FILE^DICN
IF Y=-1
QUIT
+2 SET ONCOSIEN=+Y
SET DA(1)=ONCOSIEN
SET DIC="^ONCO(164.3,"_DA(1)_",1,"
SET DIC(0)="L"
+3 FOR X=20
DO FILE^DICN
+4 QUIT
MELD if $DATA(^ONCO(164.3,"B","MELD"))
QUIT
+1 SET DIC="^ONCO(164.3,"
SET DIC(0)="L"
SET X="MELD"
DO FILE^DICN
IF Y=-1
QUIT
+2 SET ONCOSIEN=+Y
SET DA(1)=ONCOSIEN
SET DIC="^ONCO(164.3,"_DA(1)_",1,"
SET DIC(0)="L"
+3 FOR X=20
DO FILE^DICN
+4 QUIT
+5 ;
AJSGHLP ;Correct typos in AJCC STAGING GROUPS (#164.33) 6TH EDITION (N) CODE
+1 ; HELP (5 node) for BREAST (entry #23): O's should be 0's (zeroes)
+2 SET ^ONCO(164.33,23,5,8,0)="N0(i+) No regional lymph node metastasis histologically, positive IHC,"
+3 SET ^ONCO(164.33,23,5,12,0)="N0(mol+) No regional lymph node metastasis histologically, positive"
+4 QUIT
HIST ;Edit names and synonyms of two Histology entries in Histology ICD-O-3
+1 ;file (169.3), entries 97511 and 97513
+2 SET DIC="^ONCO(169.3,"
SET X=97511
DO ^DIC
+3 IF Y'=-1
SET DIE="^ONCO(169.3,"
SET DA=+Y
SET DR=".01///LANGERHANS CELL HISTIOCYTOSIS, NOS (<2010 CASES)"
DO ^DIE
+4 SET DIC="^ONCO(169.3,"
SET X=97513
DO ^DIC
+5 IF Y'=-1
SET ONCH3IEN=+Y
SET DIE="^ONCO(169.3,"
SET DA=+Y
SET DR=".01///LANGERHANS CELL HISTIOCYTOSIS, NOS"
DO ^DIE
+6 IF $DATA(^ONCO(169.3,ONCH3IEN,1,1,0))
KILL DA,DIC,DIE,DR,ONCH3IEN,Y
QUIT
+7 SET DA(1)=ONCH3IEN
SET DIC="^ONCO(169.3,"_DA(1)_",1,"
SET DIC(0)="L"
+8 FOR X="LANGERHANS CELL GRANULOMATOSIS","HISTIOCYTOSIS X, NOS"
DO FILE^DICN
+9 KILL DA,DIC,DIE,DR,ONCH3IEN,Y
+10 QUIT
+11 ;
CONN ;Change West Haven to Connecticut HCS
+1 ;Change NAME (160.19,.02) for WEST HAVEN VA MEDICAL CENTER to CONNECTICUT HCS
+2 SET DIC="^ONCO(160.19,"
SET X=6160765
DO ^DIC
+3 IF Y'=-1
SET DIE="^ONCO(160.19,"
SET DA=+Y
SET DR=".02///CONNECTICUT HCS"
DO ^DIE
+4 KILL DA,DIC,DIE,DR,Y
+5 QUIT
+6 ;
USS ;Add valid user for server updates
+1 SET IEN=0
+2 NEW ONCMAIL,ONCJ,DA,DR,DIC,DIE
+3 SET ONCMAIL("DORN")="rayeanne.dorn@domain.ext"
+4 SET ONCMAIL("DAYON")="rufino.dayon@domain.ext"
+5 SET ONCMAIL("KNOEPFLE")="rich.knoepfle@domain.ext"
+6 SET ONCMAIL("WALLER")="kathleen.waller@domain.ext"
+7 SET DIC(0)="L"
+8 FOR
SET IEN=$ORDER(^ONCO(160.1,IEN))
if IEN'>0
QUIT
FOR ONCJ="DORN","DAYON","KNOEPFLE","WALLER"
Begin DoDot:1
+9 SET DA(1)=IEN
SET (DIE,DIC)="^ONCO(160.1,DA(1),""SEU"","
+10 IF '$DATA(^ONCO(160.1,IEN,"SEU","B",ONCJ))
Begin DoDot:2
+11 SET DIC("DR")="2///^S X=ONCMAIL(ONCJ)"
SET X=ONCJ
DO FILE^DICN
End DoDot:2
+12 IF $DATA(^ONCO(160.1,IEN,"SEU","B",ONCJ))
Begin DoDot:2
+13 SET DA=$ORDER(^ONCO(160.1,IEN,"SEU","B",ONCJ,0))
+14 SET DR="2///^S X=ONCMAIL(ONCJ)"
DO ^DIE
End DoDot:2
End DoDot:1
+15 QUIT
+16 ;
C3E ;3e SS1977
+1 NEW I55
+2 FOR I55=0:0
SET I55=$ORDER(^ONCO(165.5,I55))
if I55'>0
QUIT
Begin DoDot:1
+3 IF ($PIECE($GET(^ONCO(165.5,I55,"CS3")),U,3)["3e SS1977")!($PIECE($GET(^ONCO(165.5,I55,"CS3")),U,3)["3d SS1977")
Begin DoDot:2
+4 SET $PIECE(^ONCO(165.5,I55,"CS3"),U,2)=""
+5 SET $PIECE(^ONCO(165.5,I55,"CS3"),U,3)=""
End DoDot:2
End DoDot:1
+6 QUIT
+7 ;
DAT3 ;data for FOLLOWUP RATE REPORT
+1 ;;|SETTAB(68)|
+2 ;;|NOW|
+3 ;; FOLLOW-UP RATE FOR ALL PATIENTS (LIVING AND DEAD) NUMBER PERCENT
+4 ;;
+5 ;; Total patients from registry reference date |TOTAL#||TAB|100%
+6 ;;
+7 ;; 1. Less benign/borderline cases - |BENIGN|
+8 ;; 2. Less Carcinoma in situ cervix cases - |CERVIX|
+9 ;; 3. Less in situ/localized basal and squamous - |LOCAL BASAL|
+10 ;; cell carcinoma of skin cases "
+11 ;; 4. Less foreign residents - |FOREIGN|
+12 ;; 5. Less non-analytic cases - |NONANALYTIC|
+13 ;; 6. Less (ALL) Class of Case 00 case - |CC|
+14 ;; 7. Less (ALL) Patient Age 100+ case - |P100|
+15 ;;
+16 ;; SUBTOTAL CASES = ANALYTIC CASES (A) |ANALYTIC||TAB|100%
+17 ;; Class of Case 10-22
+18 ;;
+19 ;; 1. Less number dead (B) |DEAD||TAB||%DEAD|%
+20 ;;
+21 ;; SUBTOTAL CASES (NUMBER LIVING) (C) |LIVING||TAB||%LIVING|%
+22 ;;
+23 ;; 1. Less number current (known to be alive
+24 ;; in the last 15 months) (D) |CURRENT||TAB||%CURRENT-TOTAL|%
+25 ;;
+26 ;; TOTAL (LOST TO FOLLOW UP OR NOT CURRENT) (E) |LTF| *|TAB||%LTF-TOTAL|%
+27 ;; (* should be less than 20%)
+28 ;;
+29 ;; Successful follow-up currency (all patients) (F) |SFC| **|TAB||%SFC|
+30 ;; (** should be 80%)
+31 ;;========================================================================
+32 ;;
+33 ;; FOLLOW UP RATE FOR LIVING PATIENTS ONLY NUMBER PERCENT
+34 ;;
+35 ;; Enter the total number from Line C |LIVING||TAB|100%
+36 ;; Subtract the total number from Line D - |CURRENT||TAB||%CURRENT-ALIVE|%
+37 ;; Total lost/not current of living patients - |LTF||TAB||%LTF-ALIVE|%
DAT6 ;data for FOLLOWUP RATE REPORT 1
+1 ;;|SETTAB(68)|
+2 ;;|NOW|
+3 ;; FOLLOW-UP RATE FOR ALL PATIENTS (LIVING AND DEAD) NUMBER PERCENT
+4 ;;
+5 ;; Total patients diagnosed within last 5 years
+6 ;; or from registry reference date, whichever is
+7 ;; shorter |TOTAL#||TAB|100%
+8 ;;
+9 ;; 1. Less benign/borderline cases - |BENIGN|
+10 ;; 2. Less carcinoma in situ cervix cases - |CERVIX|
+11 ;; 3. Less in situ/localized basal and squamous - |LOCAL BASAL|
+12 ;; cell carcinoma of skin cases
+13 ;; 4. Less foreign residents - |FOREIGN|
+14 ;; 5. Less non-analytic - |NONANALYTIC|
+15 ;; 6. Less (ALL) Class of Case 00 case - |CC|
+16 ;; 7. Less (ALL) Patient Age 100+ case - |P100|
+17 ;;
+18 ;; SUBTOTAL CASES = ANALYTIC CASES (A) |ANALYTIC||TAB|100%
+19 ;; Class of Case 10-22
+20 ;;
+21 ;; 1. Less number dead (B) |DEAD||TAB||%DEAD|%
+22 ;;
+23 ;; SUBTOTAL CASES (NUMBER LIVING) (C) |LIVING||TAB||%LIVING|%
+24 ;;
+25 ;; 1. Less number current (known to be alive
+26 ;; in the last 15 months) (D) |CURRENT||TAB||%CURRENT-TOTAL|%
+27 ;;
+28 ;; TOTAL (LOST TO FOLLOW UP OR NOT CURRENT) (E) |LTF| *|TAB||%LTF-TOTAL|%
+29 ;;
+30 ;; (* should be less than 10%)
+31 ;;
+32 ;; Successful follow-up currency (all patients) (F) |SFC| **|TAB||%SFC|%
+33 ;; (** should be 90%)
+34 ;;=========================================================================
+35 ;;
+36 ;; FOLLOW UP RATE FOR LIVING PATIENTS ONLY NUMBER PERCENT
+37 ;;
+38 ;; Enter the total number from Line C |LIVING||TAB|100%
+39 ;; Subtract the total number from Line D - |CURRENT||TAB||%CURRENT-ALIVE|%
+40 ;; Total lost/not current of living patients - |LTF||TAB||%LTF-ALIVE|%