PXRMTXSM ;SLC/PKR - Reminder Taxonomy ScreenMan routines ;02-Nov-2015 08:55;du
;;2.0;CLINICAL REMINDERS;**26,1005**;Feb 04, 2005;Build 23
;
;===================================
CODELIST(TAXIEN,TERM,CODESYS) ;See if the temporary list of selected codes
;exists, if it does not and codes have been stored in the taxonomy
;then build it.
I $D(^TMP("PXRMCODES",$J,TERM,CODESYS)) Q
I '$D(^PXD(811.2,TAXIEN,20,"ATC",TERM,CODESYS)) Q
M ^TMP("PXRMCODES",$J,TERM,CODESYS)=^PXD(811.2,TAXIEN,20,"ATCC",TERM,CODESYS)
Q
;
;===================================
EXETCCAP(DA) ;Executable caption for code search.
N TC
S TC=$$GET^DDSVAL(811.23,.DA,.01,"","E")
I $L(TC)>57 S TC=$E(TC,1,54)_"..."
Q " Term/Code: "_TC_" "
;
;===================================
LEXSRCH(DA,CODESYS) ;Branch for Lexicon Term/Code search.
;selection.
N PXRMLEXV,SAVEDDS,TAXIEN,TERM
;These PXRM variables are used in the List Manager Lexicon search.
N PXRMBGS,PXRMLEXV
K ^TMP("PXRMLEXTC",$J)
S ^TMP("PXRMLEXTC",$J,"CODESYS")=CODESYS
S (^TMP("PXRMLEXTC",$J,"LEX TERM"),TERM)=$$GET^DDSVAL(811.23,.DA,.01,"","E")
S (^TMP("PXRMLEXTC",$J,"TAX IEN"),TAXIEN)=DA(1)
D CODELIST(TAXIEN,TERM,CODESYS)
;DBIA #5746 covers kill and set of DDS.
I $D(DDS) S SAVEDDS=DDS K DDS
D EN^VALM("PXRM LEXICON SELECT")
K ^TMP("PXRMLEXTC",$J)
;Reset the screen so ScreenMan displays properly.
I $D(SAVEDDS) D
. N IOAWM0,X
. S DDS=SAVEDDS
. S X=0 X ^%ZOSF("RM"),^%ZOSF("TYPE-AHEAD")
. S X="IOAWM0" D ENDR^%ZISS W IOAWM0
. D REFRESH^DDSUTL
Q
;
;===================================
LTCPAOC(DA) ;Lexicon Term/Code post-action on change.
N NTC,OTC,TEXT
S NTC=$$GET^DDSVAL(811.23,.DA,"TERM/CODE")
S OTC=$G(^PXD(811.2,DA(1),20,DA,0))
I ($L(OTC)>0),(NTC'=OTC) D
. S TEXT(1)="Overwriting a search Term/Code is not allowed!"
. S TEXT(2)="To replace a search term delete the existing one first."
. S TEXT(3)="$$EOP"
. D HLP^DDSUTL(.TEXT)
. D PUT^DDSVAL(811.23,.DA,"TERM/CODE",OTC)
Q
;
;===================================
NUMCODES(DA) ;Executable caption to display the number of selected codes
;for Lexicon Term/Code.
;^TMP("PXRMCODES",$J) will have the value from the current editing
;session so check it first.
I DA="" Q $$REPEAT^XLFSTR(" ",30)
N CODESYS,COUNT,IND,NUID,NUM,TEMP,TERM,TEXT,UID
S TERM=$$GET^DDSVAL(811.23,.DA,.01,"","E")
S CODESYS=""
F S CODESYS=$O(^TMP("PXRMCODES",$J,TERM,CODESYS)) Q:CODESYS="" D
. S CODE="",(NUID,NUM)=0
. F S CODE=$O(^TMP("PXRMCODES",$J,TERM,CODESYS,CODE)) Q:CODE="" D
.. S NUM=NUM+1
.. S UID=^TMP("PXRMCODES",$J,TERM,CODESYS,CODE)
.. I UID=1 S NUID=NUID+1
. S COUNT(CODESYS)=NUM
. S NUID(CODESYS)=NUID
;Check for stored values.
S IND=0
F S IND=+$O(^PXD(811.2,DA(1),20,DA,1,IND)) Q:IND=0 D
. S TEMP=^PXD(811.2,DA(1),20,DA,1,IND,0)
. S CODESYS=$P(TEMP,U,1),NUM=$P(TEMP,U,2),NUID=$P(TEMP,U,3)
. I $D(COUNT(CODESYS))!(NUM=0) Q
. S COUNT(CODESYS)=NUM
. S NUID(CODESYS)=NUID
I '$D(COUNT) Q "None"_$$REPEAT^XLFSTR(" ",26)
S (CODESYS,TEXT)=""
F S CODESYS=$O(COUNT(CODESYS)) Q:CODESYS="" D
. S TEXT=TEXT_CODESYS_":"_COUNT(CODESYS)
. I NUID(CODESYS)>0 S TEXT=TEXT_":"_NUID(CODESYS)
. S TEXT=TEXT_" "
S NUM=$L(TEXT)
I NUM<30 S TEXT=TEXT_$$REPEAT^XLFSTR(" ",(30-NUM))
Q TEXT
;
;===================================
POSTACT(D0) ;Form Post Action
N INACTIVE,INUSE,OUTPUT
K ^TMP("PXRMCODES",$J)
;If the change was a deletion there is nothing else to do.
I '$D(^PXD(811.2,D0)) Q
;If the taxonomy was inactivated check to see if it is being used.
S INACTIVE=$$GET^DDSVAL(811.2,D0,"INACTIVE FLAG")
S INUSE=$S(INACTIVE:$$INUSE^PXRMTAXD(D0,"INACT"),1:0)
I INUSE D HLP^DDSUTL("$$EOP")
;Check for dialog problems.
D TAXEDITC^PXRMDTAX(D0,.OUTPUT)
I $D(OUTPUT) D
. ;IHS/MSC/MGH Newed Variables
. N IOSTBM,IORI
. D BROWSE^DDBR("OUTPUT","NR","Problems with dialogs using this taxonomy.")
. I $D(DDS) D REFRESH^DDSUTL S DY=IOSL-7,DX=0 X IOXY S $Y=DY,$X=DX
Q
;
;===================================
POSTSAVE(IEN) ;Form Post Save. Store changes in lists of codes.
N CODE,CODESYS,CSYIND,FDA,KCSYSIND,KFDA,MSG,NSEL,NUID,PDS
N TEMP,TERM,TERMIND,TEXT,UID
S TERM="",TERMIND=0
F S TERM=$O(^TMP("PXRMCODES",$J,TERM)) Q:TERM="" D
.;If this term has been deleted, skip the rest.
. I '$D(^PXD(811.2,IEN,20,"B",TERM)) Q
. S TERMIND=$O(^PXD(811.2,IEN,20,"B",TERM,""))
. S CODESYS="",CSYSIND=TERMIND
. F S CODESYS=$O(^TMP("PXRMCODES",$J,TERM,CODESYS)) Q:CODESYS="" D
..;Check for existing entries for this term and this coding system.
..;If there are any remove them before storing the new set.
.. I $D(^PXD(811.2,IEN,20,"ATC",TERM,CODESYS)) D
... S KCSYSIND=$P(^PXD(811.2,IEN,20,"ATC",TERM,CODESYS),U,2)
... S IENS=KCSYSIND_","_TERMIND_","_IEN_","
... S KFDA(811.231,IENS,.01)="@"
... D FILE^DIE("","KFDA","MSG")
.. S CSYSIND=CSYSIND+1
.. S (NSEL,NUID)=0,CODE=""
.. F S CODE=$O(^TMP("PXRMCODES",$J,TERM,CODESYS,CODE)) Q:CODE="" D
... S NSEL=NSEL+1
... S UID=^TMP("PXRMCODES",$J,TERM,CODESYS,CODE)
... I UID=1 S NUID=NUID+1
... S IENS="+"_(NSEL+CSYSIND)_",+"_CSYSIND_","_TERMIND_","_IEN_","
... S FDA(811.2312,IENS,.01)=CODE
... S FDA(811.2312,IENS,1)=UID
.. S IENS="+"_CSYSIND_","_TERMIND_","_IEN_","
.. S FDA(811.231,IENS,.01)=CODESYS
.. S FDA(811.231,IENS,1)=NSEL
.. S FDA(811.231,IENS,3)=NUID
.. S CSYSIND=NSEL+CSYSIND
. D UPDATE^DIE("","FDA","","MSG")
. I $D(MSG) D
.. S TEXT(1)="Error storing codes for term "_TERM
.. S TEXT(2)=" coding system "_CODESYS
.. D EN^DDIOL(.TEXT)
.. D AWRITE^PXRMUTIL("MSG")
.. H 2
K ^TMP("PXRMCODES",$J)
;Make sure Patient Data Source index is built.
S PDS=$$GET^DDSVAL(811.2,IEN,"PATIENT DATA SOURCE")
I PDS="" D SPDS^PXRMPDS(IEN,PDS)
Q
;
;===================================
SMANEDIT(IEN,NEW,FORM) ;ScreenMan edit for entry IEN.
N CLASS,DA,DDSCHANG,DDSFILE,DDSPARM,DIDEL,DIMSG,DR,DTOUT,NATOK
S (DDSFILE,DIDEL)=811.2,DDSPARM="CS",DR="["_FORM_"]"
S CLASS=$P(^PXD(811.2,IEN,100),U,1)
S NATOK=$S(CLASS'="N":1,1:($G(PXRMINST)=1)&($G(DUZ(0))="@"))
I 'NATOK D Q
. W !,"National taxonomies cannot be edited."
. H 2
. S VALMBCK="R"
;These ^TMP entries are used by the Lexicon display to store the
;results of the search and selection. Initializing them here minimizes
;the number of Lexicon searches.
K ^TMP("PXRMCODES",$J),^TMP("PXRMLEXS",$J),^TMP("PXRMTEXT",$J)
S DA=IEN
D ^DDS
K ^TMP("PXRMCODES",$J),^TMP("PXRMLEXS",$J),^TMP("PXRMTEXT",$J)
I $D(DIMSG) H 2
;If the entry is new and the user did not save, delete it.
I $G(NEW),$G(DDSSAVE)'=1 D DELETE^PXRMEXFI(811.2,IEN) Q
;If changes were made update the change log and rebuild the
;List Manager list.
I 'NEW,$G(DDSCHANG)'=1 S VALMBCK="R" Q
D BLDLIST^PXRMTAXL("PXRMTAXL")
S VALMBCK="R"
;If the change was a deletion skip the change log.
I '$D(^PXD(811.2,IEN)) Q
N IENS,FDA,FDAIEN,MSG,WPTMP
S IENS="+1,"_IEN_","
S FDA(811.21,IENS,.01)=$$NOW^XLFDT
S FDA(811.21,IENS,1)=DUZ
I NEW D
. S WPTMP(1,1,1)=" Creation."
. S FDA(811.21,IENS,2)="WPTMP(1,1)"
D UPDATE^DIE("S","FDA","FDAIEN","MSG")
K DA,DDSFILE
S DA=FDAIEN(1),DA(1)=IEN
S DDSFILE=811.2,DDSFILE(1)=811.21
S DR="[PXRM TAXONOMY CHANGE LOG]"
D ^DDS
Q
;
PXRMTXSM ;SLC/PKR - Reminder Taxonomy ScreenMan routines ;02-Nov-2015 08:55;du
+1 ;;2.0;CLINICAL REMINDERS;**26,1005**;Feb 04, 2005;Build 23
+2 ;
+3 ;===================================
CODELIST(TAXIEN,TERM,CODESYS) ;See if the temporary list of selected codes
+1 ;exists, if it does not and codes have been stored in the taxonomy
+2 ;then build it.
+3 IF $DATA(^TMP("PXRMCODES",$JOB,TERM,CODESYS))
QUIT
+4 IF '$DATA(^PXD(811.2,TAXIEN,20,"ATC",TERM,CODESYS))
QUIT
+5 MERGE ^TMP("PXRMCODES",$JOB,TERM,CODESYS)=^PXD(811.2,TAXIEN,20,"ATCC",TERM,CODESYS)
+6 QUIT
+7 ;
+8 ;===================================
EXETCCAP(DA) ;Executable caption for code search.
+1 NEW TC
+2 SET TC=$$GET^DDSVAL(811.23,.DA,.01,"","E")
+3 IF $LENGTH(TC)>57
SET TC=$EXTRACT(TC,1,54)_"..."
+4 QUIT " Term/Code: "_TC_" "
+5 ;
+6 ;===================================
LEXSRCH(DA,CODESYS) ;Branch for Lexicon Term/Code search.
+1 ;selection.
+2 NEW PXRMLEXV,SAVEDDS,TAXIEN,TERM
+3 ;These PXRM variables are used in the List Manager Lexicon search.
+4 NEW PXRMBGS,PXRMLEXV
+5 KILL ^TMP("PXRMLEXTC",$JOB)
+6 SET ^TMP("PXRMLEXTC",$JOB,"CODESYS")=CODESYS
+7 SET (^TMP("PXRMLEXTC",$JOB,"LEX TERM"),TERM)=$$GET^DDSVAL(811.23,.DA,.01,"","E")
+8 SET (^TMP("PXRMLEXTC",$JOB,"TAX IEN"),TAXIEN)=DA(1)
+9 DO CODELIST(TAXIEN,TERM,CODESYS)
+10 ;DBIA #5746 covers kill and set of DDS.
+11 IF $DATA(DDS)
SET SAVEDDS=DDS
KILL DDS
+12 DO EN^VALM("PXRM LEXICON SELECT")
+13 KILL ^TMP("PXRMLEXTC",$JOB)
+14 ;Reset the screen so ScreenMan displays properly.
+15 IF $DATA(SAVEDDS)
Begin DoDot:1
+16 NEW IOAWM0,X
+17 SET DDS=SAVEDDS
+18 SET X=0
XECUTE ^%ZOSF("RM")
XECUTE ^%ZOSF("TYPE-AHEAD")
+19 SET X="IOAWM0"
DO ENDR^%ZISS
WRITE IOAWM0
+20 DO REFRESH^DDSUTL
End DoDot:1
+21 QUIT
+22 ;
+23 ;===================================
LTCPAOC(DA) ;Lexicon Term/Code post-action on change.
+1 NEW NTC,OTC,TEXT
+2 SET NTC=$$GET^DDSVAL(811.23,.DA,"TERM/CODE")
+3 SET OTC=$GET(^PXD(811.2,DA(1),20,DA,0))
+4 IF ($LENGTH(OTC)>0)
IF (NTC'=OTC)
Begin DoDot:1
+5 SET TEXT(1)="Overwriting a search Term/Code is not allowed!"
+6 SET TEXT(2)="To replace a search term delete the existing one first."
+7 SET TEXT(3)="$$EOP"
+8 DO HLP^DDSUTL(.TEXT)
+9 DO PUT^DDSVAL(811.23,.DA,"TERM/CODE",OTC)
End DoDot:1
+10 QUIT
+11 ;
+12 ;===================================
NUMCODES(DA) ;Executable caption to display the number of selected codes
+1 ;for Lexicon Term/Code.
+2 ;^TMP("PXRMCODES",$J) will have the value from the current editing
+3 ;session so check it first.
+4 IF DA=""
QUIT $$REPEAT^XLFSTR(" ",30)
+5 NEW CODESYS,COUNT,IND,NUID,NUM,TEMP,TERM,TEXT,UID
+6 SET TERM=$$GET^DDSVAL(811.23,.DA,.01,"","E")
+7 SET CODESYS=""
+8 FOR
SET CODESYS=$ORDER(^TMP("PXRMCODES",$JOB,TERM,CODESYS))
IF CODESYS=""
QUIT
Begin DoDot:1
+9 SET CODE=""
SET (NUID,NUM)=0
+10 FOR
SET CODE=$ORDER(^TMP("PXRMCODES",$JOB,TERM,CODESYS,CODE))
IF CODE=""
QUIT
Begin DoDot:2
+11 SET NUM=NUM+1
+12 SET UID=^TMP("PXRMCODES",$JOB,TERM,CODESYS,CODE)
+13 IF UID=1
SET NUID=NUID+1
End DoDot:2
+14 SET COUNT(CODESYS)=NUM
+15 SET NUID(CODESYS)=NUID
End DoDot:1
+16 ;Check for stored values.
+17 SET IND=0
+18 FOR
SET IND=+$ORDER(^PXD(811.2,DA(1),20,DA,1,IND))
IF IND=0
QUIT
Begin DoDot:1
+19 SET TEMP=^PXD(811.2,DA(1),20,DA,1,IND,0)
+20 SET CODESYS=$PIECE(TEMP,U,1)
SET NUM=$PIECE(TEMP,U,2)
SET NUID=$PIECE(TEMP,U,3)
+21 IF $DATA(COUNT(CODESYS))!(NUM=0)
QUIT
+22 SET COUNT(CODESYS)=NUM
+23 SET NUID(CODESYS)=NUID
End DoDot:1
+24 IF '$DATA(COUNT)
QUIT "None"_$$REPEAT^XLFSTR(" ",26)
+25 SET (CODESYS,TEXT)=""
+26 FOR
SET CODESYS=$ORDER(COUNT(CODESYS))
IF CODESYS=""
QUIT
Begin DoDot:1
+27 SET TEXT=TEXT_CODESYS_":"_COUNT(CODESYS)
+28 IF NUID(CODESYS)>0
SET TEXT=TEXT_":"_NUID(CODESYS)
+29 SET TEXT=TEXT_" "
End DoDot:1
+30 SET NUM=$LENGTH(TEXT)
+31 IF NUM<30
SET TEXT=TEXT_$$REPEAT^XLFSTR(" ",(30-NUM))
+32 QUIT TEXT
+33 ;
+34 ;===================================
POSTACT(D0) ;Form Post Action
+1 NEW INACTIVE,INUSE,OUTPUT
+2 KILL ^TMP("PXRMCODES",$JOB)
+3 ;If the change was a deletion there is nothing else to do.
+4 IF '$DATA(^PXD(811.2,D0))
QUIT
+5 ;If the taxonomy was inactivated check to see if it is being used.
+6 SET INACTIVE=$$GET^DDSVAL(811.2,D0,"INACTIVE FLAG")
+7 SET INUSE=$SELECT(INACTIVE:$$INUSE^PXRMTAXD(D0,"INACT"),1:0)
+8 IF INUSE
DO HLP^DDSUTL("$$EOP")
+9 ;Check for dialog problems.
+10 DO TAXEDITC^PXRMDTAX(D0,.OUTPUT)
+11 IF $DATA(OUTPUT)
Begin DoDot:1
+12 ;IHS/MSC/MGH Newed Variables
+13 NEW IOSTBM,IORI
+14 DO BROWSE^DDBR("OUTPUT","NR","Problems with dialogs using this taxonomy.")
+15 IF $DATA(DDS)
DO REFRESH^DDSUTL
SET DY=IOSL-7
SET DX=0
XECUTE IOXY
SET $Y=DY
SET $X=DX
End DoDot:1
+16 QUIT
+17 ;
+18 ;===================================
POSTSAVE(IEN) ;Form Post Save. Store changes in lists of codes.
+1 NEW CODE,CODESYS,CSYIND,FDA,KCSYSIND,KFDA,MSG,NSEL,NUID,PDS
+2 NEW TEMP,TERM,TERMIND,TEXT,UID
+3 SET TERM=""
SET TERMIND=0
+4 FOR
SET TERM=$ORDER(^TMP("PXRMCODES",$JOB,TERM))
IF TERM=""
QUIT
Begin DoDot:1
+5 ;If this term has been deleted, skip the rest.
+6 IF '$DATA(^PXD(811.2,IEN,20,"B",TERM))
QUIT
+7 SET TERMIND=$ORDER(^PXD(811.2,IEN,20,"B",TERM,""))
+8 SET CODESYS=""
SET CSYSIND=TERMIND
+9 FOR
SET CODESYS=$ORDER(^TMP("PXRMCODES",$JOB,TERM,CODESYS))
IF CODESYS=""
QUIT
Begin DoDot:2
+10 ;Check for existing entries for this term and this coding system.
+11 ;If there are any remove them before storing the new set.
+12 IF $DATA(^PXD(811.2,IEN,20,"ATC",TERM,CODESYS))
Begin DoDot:3
+13 SET KCSYSIND=$PIECE(^PXD(811.2,IEN,20,"ATC",TERM,CODESYS),U,2)
+14 SET IENS=KCSYSIND_","_TERMIND_","_IEN_","
+15 SET KFDA(811.231,IENS,.01)="@"
+16 DO FILE^DIE("","KFDA","MSG")
End DoDot:3
+17 SET CSYSIND=CSYSIND+1
+18 SET (NSEL,NUID)=0
SET CODE=""
+19 FOR
SET CODE=$ORDER(^TMP("PXRMCODES",$JOB,TERM,CODESYS,CODE))
IF CODE=""
QUIT
Begin DoDot:3
+20 SET NSEL=NSEL+1
+21 SET UID=^TMP("PXRMCODES",$JOB,TERM,CODESYS,CODE)
+22 IF UID=1
SET NUID=NUID+1
+23 SET IENS="+"_(NSEL+CSYSIND)_",+"_CSYSIND_","_TERMIND_","_IEN_","
+24 SET FDA(811.2312,IENS,.01)=CODE
+25 SET FDA(811.2312,IENS,1)=UID
End DoDot:3
+26 SET IENS="+"_CSYSIND_","_TERMIND_","_IEN_","
+27 SET FDA(811.231,IENS,.01)=CODESYS
+28 SET FDA(811.231,IENS,1)=NSEL
+29 SET FDA(811.231,IENS,3)=NUID
+30 SET CSYSIND=NSEL+CSYSIND
End DoDot:2
+31 DO UPDATE^DIE("","FDA","","MSG")
+32 IF $DATA(MSG)
Begin DoDot:2
+33 SET TEXT(1)="Error storing codes for term "_TERM
+34 SET TEXT(2)=" coding system "_CODESYS
+35 DO EN^DDIOL(.TEXT)
+36 DO AWRITE^PXRMUTIL("MSG")
+37 HANG 2
End DoDot:2
End DoDot:1
+38 KILL ^TMP("PXRMCODES",$JOB)
+39 ;Make sure Patient Data Source index is built.
+40 SET PDS=$$GET^DDSVAL(811.2,IEN,"PATIENT DATA SOURCE")
+41 IF PDS=""
DO SPDS^PXRMPDS(IEN,PDS)
+42 QUIT
+43 ;
+44 ;===================================
SMANEDIT(IEN,NEW,FORM) ;ScreenMan edit for entry IEN.
+1 NEW CLASS,DA,DDSCHANG,DDSFILE,DDSPARM,DIDEL,DIMSG,DR,DTOUT,NATOK
+2 SET (DDSFILE,DIDEL)=811.2
SET DDSPARM="CS"
SET DR="["_FORM_"]"
+3 SET CLASS=$PIECE(^PXD(811.2,IEN,100),U,1)
+4 SET NATOK=$SELECT(CLASS'="N":1,1:($GET(PXRMINST)=1)&($GET(DUZ(0))="@"))
+5 IF 'NATOK
Begin DoDot:1
+6 WRITE !,"National taxonomies cannot be edited."
+7 HANG 2
+8 SET VALMBCK="R"
End DoDot:1
QUIT
+9 ;These ^TMP entries are used by the Lexicon display to store the
+10 ;results of the search and selection. Initializing them here minimizes
+11 ;the number of Lexicon searches.
+12 KILL ^TMP("PXRMCODES",$JOB),^TMP("PXRMLEXS",$JOB),^TMP("PXRMTEXT",$JOB)
+13 SET DA=IEN
+14 DO ^DDS
+15 KILL ^TMP("PXRMCODES",$JOB),^TMP("PXRMLEXS",$JOB),^TMP("PXRMTEXT",$JOB)
+16 IF $DATA(DIMSG)
HANG 2
+17 ;If the entry is new and the user did not save, delete it.
+18 IF $GET(NEW)
IF $GET(DDSSAVE)'=1
DO DELETE^PXRMEXFI(811.2,IEN)
QUIT
+19 ;If changes were made update the change log and rebuild the
+20 ;List Manager list.
+21 IF 'NEW
IF $GET(DDSCHANG)'=1
SET VALMBCK="R"
QUIT
+22 DO BLDLIST^PXRMTAXL("PXRMTAXL")
+23 SET VALMBCK="R"
+24 ;If the change was a deletion skip the change log.
+25 IF '$DATA(^PXD(811.2,IEN))
QUIT
+26 NEW IENS,FDA,FDAIEN,MSG,WPTMP
+27 SET IENS="+1,"_IEN_","
+28 SET FDA(811.21,IENS,.01)=$$NOW^XLFDT
+29 SET FDA(811.21,IENS,1)=DUZ
+30 IF NEW
Begin DoDot:1
+31 SET WPTMP(1,1,1)=" Creation."
+32 SET FDA(811.21,IENS,2)="WPTMP(1,1)"
End DoDot:1
+33 DO UPDATE^DIE("S","FDA","FDAIEN","MSG")
+34 KILL DA,DDSFILE
+35 SET DA=FDAIEN(1)
SET DA(1)=IEN
+36 SET DDSFILE=811.2
SET DDSFILE(1)=811.21
+37 SET DR="[PXRM TAXONOMY CHANGE LOG]"
+38 DO ^DDS
+39 QUIT
+40 ;