GMPLY47 ;ISL/TC - Post-install for GMPL*2.0*47 ;12/21/15 13:39
;;2.0;Problem List;**47**;Aug 25,1994;Build 58
;
;===========================================
; INDEXD^PXRMDIEV ICR #6059
;
CACRMTA ;Create the auxillary cross-reference for Mapping Targets multiple.
N MSG,NAME,RESULT,XREF
D BMES^XPDUTL("Creating Problem List Mapping Targets auxillary cross-reference.")
S XREF("FILE")=9000011
S XREF("ROOT FILE")=9000011
S XREF("TYPE")="MU"
S XREF("SHORT DESCR")="Clinical Reminders Index for Mapping Targets code lookup."
S XREF("DESCR",1)="This cross-reference builds two indexes, one for finding"
S XREF("DESCR",2)="all patients with a particular Mapping Target code and one for"
S XREF("DESCR",3)="finding all the Mapping Target codes a patient has. The indexes are"
S XREF("DESCR",4)="stored in the Clinical Reminders Index global as:"
S XREF("DESCR",5)=" ^PXRMINDX(9000011,CODESYS,""ISPP"",CODE,STATUS,PRIORITY,DFN,DLM,DAS)"
S XREF("DESCR",6)=" ^PXRMINDX(9000011,CODESYS,""PSPI"",DFN,STATUS,PRIORITY,CODE,DLM,DAS)"
S XREF("DESCR",7)="respectively."
S XREF("DESCR",8)=" "
S XREF("DESCR",9)="CODESYS is the standard three-character abbreviation for the coding system."
S XREF("DESCR",10)="STATUS can be ""A"" for active or ""I"" for inactive. PRIORITY"
S XREF("DESCR",11)="can be ""A"" for acute or ""C"" for chronic. If PRIORITY is"
S XREF("DESCR",12)="missing, then a ""U"" will be stored in the Index. For"
S XREF("DESCR",13)="Problems whose PRIORITY is ""C"", Clinical Reminders uses"
S XREF("DESCR",14)="today's date for the date of the Problem. In all other"
S XREF("DESCR",15)="cases, Clinical Reminders uses DLM, where DLM is the Date"
S XREF("DESCR",16)="Last Modified. When Problems are ""removed"", then CONDITION"
S XREF("DESCR",17)="is set to ""H"" for hidden. Hidden Problems are not indexed."
S XREF("DESCR",18)="For complete details, see the Clinical Reminders Index"
S XREF("DESCR",19)="Technical Guide/Programmer's Manual."
S XREF("DESCR",20)=""
S XREF("DESCR",21)="This cross-reference is based on the fields DATE LAST"
S XREF("DESCR",22)="MODIFIED, STATUS, PRIORITY, and CONDITION because the first"
S XREF("DESCR",23)="three are Index subscripts Problems whose CONDITION equals"
S XREF("DESCR",24)="HIDDEN are not indexed."
;
S XREF("EXECUTION")="R"
S XREF("ACTIVITY")="IR"
S XREF("VAL",1)=.03
S XREF("VAL",1,"SUBSCRIPT")=1
S XREF("VAL",2)=.12
S XREF("VAL",2,"SUBSCRIPT")=2
S XREF("VAL",3)=1.14
S XREF("VAL",4)=1.02
;
S XREF("NAME")="ACRMTA"
S XREF("SET")="D SPROBMTA^GMPLPXRM(.X,.DA)"
S XREF("KILL")="D KPROBMTA^GMPLPXRM(.X,.DA)"
;Remove any existing cross-references before creating the new one.
D DELIXN^DDMOD(9000011,"ACRMTA","","MSG")
K MSG
D CREIXN^DDMOD(.XREF,"",.RESULT,"","MSG")
Q
;
POST ; Post-install subroutine
;Create the new cross-reference
D CACRMTA
;Call Reminders reindexing API to clean up any ACRMT indexes that didn't get deleted appropriately.
D REINDEX
Q
;
REINDEX ;Rebuild the Problem List portion of the Clinical Reminders Index.
N TEXT,ZTDESC,ZTDTH,ZTIO,ZTRTN,ZTSK
S ZTRTN="INDEX^GMPLY47"
S ZTDESC="Problem List Clinical Reminders Index rebuild"
S ZTDTH=$H
S ZTIO=""
D ^%ZTLOAD
S TEXT(1)="Problem List Clinical Reminders Index rebuild queued."
S TEXT(2)="The task number is "_ZTSK_"."
D MES^XPDUTL(.TEXT)
Q
INDEX ;Disable reminder evaluations prior to reindexing.
K ^PXRMINDX(9000011,"DATE BUILT")
D INDEXD^PXRMDIEV(9000011) ;disable/re-eanble evaluations
D INDEX^GMPLPXRM
Q
--- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HGMPLY47 3580 printed Nov 22, 2024@17:40:38 Page 2
GMPLY47 ;ISL/TC - Post-install for GMPL*2.0*47 ;12/21/15 13:39
+1 ;;2.0;Problem List;**47**;Aug 25,1994;Build 58
+2 ;
+3 ;===========================================
+4 ; INDEXD^PXRMDIEV ICR #6059
+5 ;
CACRMTA ;Create the auxillary cross-reference for Mapping Targets multiple.
+1 NEW MSG,NAME,RESULT,XREF
+2 DO BMES^XPDUTL("Creating Problem List Mapping Targets auxillary cross-reference.")
+3 SET XREF("FILE")=9000011
+4 SET XREF("ROOT FILE")=9000011
+5 SET XREF("TYPE")="MU"
+6 SET XREF("SHORT DESCR")="Clinical Reminders Index for Mapping Targets code lookup."
+7 SET XREF("DESCR",1)="This cross-reference builds two indexes, one for finding"
+8 SET XREF("DESCR",2)="all patients with a particular Mapping Target code and one for"
+9 SET XREF("DESCR",3)="finding all the Mapping Target codes a patient has. The indexes are"
+10 SET XREF("DESCR",4)="stored in the Clinical Reminders Index global as:"
+11 SET XREF("DESCR",5)=" ^PXRMINDX(9000011,CODESYS,""ISPP"",CODE,STATUS,PRIORITY,DFN,DLM,DAS)"
+12 SET XREF("DESCR",6)=" ^PXRMINDX(9000011,CODESYS,""PSPI"",DFN,STATUS,PRIORITY,CODE,DLM,DAS)"
+13 SET XREF("DESCR",7)="respectively."
+14 SET XREF("DESCR",8)=" "
+15 SET XREF("DESCR",9)="CODESYS is the standard three-character abbreviation for the coding system."
+16 SET XREF("DESCR",10)="STATUS can be ""A"" for active or ""I"" for inactive. PRIORITY"
+17 SET XREF("DESCR",11)="can be ""A"" for acute or ""C"" for chronic. If PRIORITY is"
+18 SET XREF("DESCR",12)="missing, then a ""U"" will be stored in the Index. For"
+19 SET XREF("DESCR",13)="Problems whose PRIORITY is ""C"", Clinical Reminders uses"
+20 SET XREF("DESCR",14)="today's date for the date of the Problem. In all other"
+21 SET XREF("DESCR",15)="cases, Clinical Reminders uses DLM, where DLM is the Date"
+22 SET XREF("DESCR",16)="Last Modified. When Problems are ""removed"", then CONDITION"
+23 SET XREF("DESCR",17)="is set to ""H"" for hidden. Hidden Problems are not indexed."
+24 SET XREF("DESCR",18)="For complete details, see the Clinical Reminders Index"
+25 SET XREF("DESCR",19)="Technical Guide/Programmer's Manual."
+26 SET XREF("DESCR",20)=""
+27 SET XREF("DESCR",21)="This cross-reference is based on the fields DATE LAST"
+28 SET XREF("DESCR",22)="MODIFIED, STATUS, PRIORITY, and CONDITION because the first"
+29 SET XREF("DESCR",23)="three are Index subscripts Problems whose CONDITION equals"
+30 SET XREF("DESCR",24)="HIDDEN are not indexed."
+31 ;
+32 SET XREF("EXECUTION")="R"
+33 SET XREF("ACTIVITY")="IR"
+34 SET XREF("VAL",1)=.03
+35 SET XREF("VAL",1,"SUBSCRIPT")=1
+36 SET XREF("VAL",2)=.12
+37 SET XREF("VAL",2,"SUBSCRIPT")=2
+38 SET XREF("VAL",3)=1.14
+39 SET XREF("VAL",4)=1.02
+40 ;
+41 SET XREF("NAME")="ACRMTA"
+42 SET XREF("SET")="D SPROBMTA^GMPLPXRM(.X,.DA)"
+43 SET XREF("KILL")="D KPROBMTA^GMPLPXRM(.X,.DA)"
+44 ;Remove any existing cross-references before creating the new one.
+45 DO DELIXN^DDMOD(9000011,"ACRMTA","","MSG")
+46 KILL MSG
+47 DO CREIXN^DDMOD(.XREF,"",.RESULT,"","MSG")
+48 QUIT
+49 ;
POST ; Post-install subroutine
+1 ;Create the new cross-reference
+2 DO CACRMTA
+3 ;Call Reminders reindexing API to clean up any ACRMT indexes that didn't get deleted appropriately.
+4 DO REINDEX
+5 QUIT
+6 ;
REINDEX ;Rebuild the Problem List portion of the Clinical Reminders Index.
+1 NEW TEXT,ZTDESC,ZTDTH,ZTIO,ZTRTN,ZTSK
+2 SET ZTRTN="INDEX^GMPLY47"
+3 SET ZTDESC="Problem List Clinical Reminders Index rebuild"
+4 SET ZTDTH=$HOROLOG
+5 SET ZTIO=""
+6 DO ^%ZTLOAD
+7 SET TEXT(1)="Problem List Clinical Reminders Index rebuild queued."
+8 SET TEXT(2)="The task number is "_ZTSK_"."
+9 DO MES^XPDUTL(.TEXT)
+10 QUIT
INDEX ;Disable reminder evaluations prior to reindexing.
+1 KILL ^PXRMINDX(9000011,"DATE BUILT")
+2 ;disable/re-eanble evaluations
DO INDEXD^PXRMDIEV(9000011)
+3 DO INDEX^GMPLPXRM
+4 QUIT