PXRMP11E ; SLC/PKR - Exchange inits for PXRM*2.0*11 ;09/26/2008
;;2.0;CLINICAL REMINDERS;**11**;Feb 04, 2005;Build 39
Q
;=======================================================
DELEXI ;If the Exchange File entry already exists delete it.
N ARRAY,IC,IND,LIST,LUVALUE,NUM
D EXARRAY^PXRMP11E("L",.ARRAY)
S IC=0
F S IC=$O(ARRAY(IC)) Q:'IC D
. S LUVALUE(1)=ARRAY(IC,1)
. D FIND^DIC(811.8,"","","U",.LUVALUE,"","","","","LIST")
. I '$D(LIST) Q
. S NUM=$P(LIST("DILIST",0),U,1)
. I NUM'=0 D
.. F IND=1:1:NUM D
... N DA,DIK
... S DIK="^PXD(811.8,"
... S DA=LIST("DILIST",2,IND)
... D ^DIK
Q
;
;====================================================
EXARRAY(MODE,ARRAY) ;List of exchange entries used by delete and install
;MODE values: I for include in build, A for include action.
N LN
S LN=0
;
S LN=LN+1
S ARRAY(LN,1)="PATCH 11 LOCATION LIST"
I MODE["I" S ARRAY(LN,2)="09/22/2008@11:16:04"
I MODE["A" S ARRAY(LN,3)="I"
;This version compatible with SD*5.3*537, not needed anymore.
I MODE["L" D
. S LN=LN+1
. S ARRAY(LN,1)="PATCH 11 LOCATION LIST (SD)"
;
S LN=LN+1
S ARRAY(LN,1)="VA-ALCOHOL AUDIT-C POSITIVE F/U EVAL"
I MODE["I" S ARRAY(LN,2)="09/22/2008@11:16:16"
I MODE["A" S ARRAY(LN,3)="I"
;
S LN=LN+1
S ARRAY(LN,1)="VA-ALCOHOL USE SCREEN (AUDIT-C)"
I MODE["I" S ARRAY(LN,2)="07/09/2008@11:51:46"
I MODE["A" S ARRAY(LN,3)="I"
;
S LN=LN+1
S ARRAY(LN,1)="VA-BL OEF/OIF EMBEDDED FRAGMENTS"
I MODE["I" S ARRAY(LN,2)="09/15/2008@13:30:58"
I MODE["A" S ARRAY(LN,3)="O"
;
S LN=LN+1
S ARRAY(LN,1)="VA-BL OEF/OIF FEVER"
I MODE["I" S ARRAY(LN,2)="06/30/2008@09:09:10"
I MODE["A" S ARRAY(LN,3)="O"
;
S LN=LN+1
S ARRAY(LN,1)="VA-BL OEF/OIF GI SX"
I MODE["I" S ARRAY(LN,2)="06/30/2008@09:09:53"
I MODE["A" S ARRAY(LN,3)="O"
;
S LN=LN+1
S ARRAY(LN,1)="VA-BL OEF/OIF SKIN SX"
I MODE["I" S ARRAY(LN,2)="06/30/2008@09:10:15"
I MODE["A" S ARRAY(LN,3)="O"
;
S LN=LN+1
S ARRAY(LN,1)="VA-CV ELIG W/HF FOR NO SERVICE"
I MODE["I" S ARRAY(LN,2)="09/25/2008@13:56:32"
I MODE["A" S ARRAY(LN,3)="O"
;
S LN=LN+1
S ARRAY(LN,1)="VA-CV INELG W/HF FOR SERVICE"
I MODE["I" S ARRAY(LN,2)="09/25/2008@13:56:09"
I MODE["A" S ARRAY(LN,3)="I"
;
S LN=LN+1
S ARRAY(LN,1)="VA-DEPRESSION SCREENING"
I MODE["I" S ARRAY(LN,2)="09/25/2008@11:48:34"
I MODE["A" S ARRAY(LN,3)="I"
;
S LN=LN+1
S ARRAY(LN,1)="VA-IRAQ & AFGHAN POST-DEPLOY SCREEN"
I MODE["I" S ARRAY(LN,2)="08/06/2008@15:16:29"
I MODE["A" S ARRAY(LN,3)="I"
;
S LN=LN+1
S ARRAY(LN,1)="VA-MHV BMI > 25.0"
I MODE["I" S ARRAY(LN,2)="09/11/2008@13:21:53"
I MODE["A" S ARRAY(LN,3)="I"
;
S LN=LN+1
S ARRAY(LN,1)="VA-MHV CERVICAL CANCER SCREEN"
I MODE["I" S ARRAY(LN,2)="07/31/2008@12:12:30"
I MODE["A" S ARRAY(LN,3)="I"
;
S LN=LN+1
S ARRAY(LN,1)="VA-MHV COLORECTAL CANCER SCREEN"
I MODE["I" S ARRAY(LN,2)="07/28/2008@10:56:37"
I MODE["A" S ARRAY(LN,3)="I"
;
S LN=LN+1
S ARRAY(LN,1)="VA-MHV DIABETES FOOT EXAM"
I MODE["I" S ARRAY(LN,2)="07/01/2008@15:10:54"
I MODE["A" S ARRAY(LN,3)="I"
;
S LN=LN+1
S ARRAY(LN,1)="VA-MHV DIABETES RETINAL EXAM"
I MODE["I" S ARRAY(LN,2)="08/20/2008@09:55:06"
I MODE["A" S ARRAY(LN,3)="I"
;
S LN=LN+1
S ARRAY(LN,1)="VA-MHV HYPERTENSION"
I MODE["I" S ARRAY(LN,2)="07/01/2008@15:08:56"
I MODE["A" S ARRAY(LN,3)="I"
;
S LN=LN+1
S ARRAY(LN,1)="VA-MHV INFLUENZA VACCINE"
I MODE["I" S ARRAY(LN,2)="07/28/2008@10:56:58"
I MODE["A" S ARRAY(LN,3)="I"
;
S LN=LN+1
S ARRAY(LN,1)="VA-MHV LDL CONTROL"
I MODE["I" S ARRAY(LN,2)="07/28/2008@10:57:07"
I MODE["A" S ARRAY(LN,3)="I"
;
S LN=LN+1
S ARRAY(LN,1)="VA-MHV MAMMOGRAM SCREENING"
I MODE["I" S ARRAY(LN,2)="08/20/2008@11:25:06"
I MODE["A" S ARRAY(LN,3)="I"
;
S LN=LN+1
S ARRAY(LN,1)="VA-MHV PNEUMOVAX"
I MODE["I" S ARRAY(LN,2)="07/28/2008@10:57:48"
I MODE["A" S ARRAY(LN,3)="I"
;
S LN=LN+1
S ARRAY(LN,1)="VA-OEF/OIF MONITOR REPORTING"
I MODE["I" S ARRAY(LN,2)="09/25/2008@09:07:55"
I MODE["A" S ARRAY(LN,3)="I"
;This version compatible with SD*5.3*537, not needed anymore.
I MODE["L" D
. S LN=LN+1
. S ARRAY(LN,1)="VA-OEF/OIF MONITOR REPORTING (SD)"
;
S LN=LN+1
S ARRAY(LN,1)="VA-PTSD SCREENING"
I MODE["I" S ARRAY(LN,2)="08/06/2008@15:16:03"
I MODE["A" S ARRAY(LN,3)="I"
;
S LN=LN+1
S ARRAY(LN,1)="VA-TBI SCREENING"
I MODE["I" S ARRAY(LN,2)="08/26/2008@10:31:02"
I MODE["A" S ARRAY(LN,3)="I"
;
S LN=LN+1
S ARRAY(LN,1)="PATCH 11 ITEMS"
I MODE["I" S ARRAY(LN,2)="08/14/2008@09:29:40"
I MODE["A" S ARRAY(LN,3)="O"
;
;This version compatible with SD*5.3*537, not needed anymore.
I MODE["L" D
. S LN=LN+1
. S ARRAY(LN,1)="PATCH 11 ITEMS (SD)"
;
I MODE="IA" D BMES^XPDUTL("There are "_LN_" Reminder Exchange entries to be installed.")
Q
;
;==========================================
EXFINC(Y) ;Return a 1 if the Exchange file entry is in the list to
;include in the build. This is used in the build to determine which
;entries to include.
N EXARRAY,FOUND,IEN,IC,LUVALUE
D EXARRAY^PXRMP11E("I",.EXARRAY)
S FOUND=0
S IC=0
F S IC=+$O(EXARRAY(IC)) Q:(IC=0)!(FOUND) D
. M LUVALUE=EXARRAY(IC)
. S IEN=+$$FIND1^DIC(811.8,"","KU",.LUVALUE)
. I IEN=Y S FOUND=1 Q
Q FOUND
;
;==========================================
SMEXINS ;Silent mode install.
N ACTION,EXARRAY,IC,IEN,LUVALUE,PXRMINST,TEXT
S PXRMINST=1
D EXARRAY^PXRMP11E("IA",.EXARRAY)
S IC=0
F S IC=$O(EXARRAY(IC)) Q:'IC D
. S LUVALUE(1)=EXARRAY(IC,1),LUVALUE(2)=EXARRAY(IC,2)
. S IEN=+$$FIND1^DIC(811.8,"","KU",.LUVALUE)
. I IEN=0 Q
. S TEXT="Installing Reminder Exchange entry "_LUVALUE(1)
. D BMES^XPDUTL(TEXT)
. S ACTION=EXARRAY(IC,3)
. D INSTALL^PXRMEXSI(IEN,ACTION,1)
Q
;
PXRMP11E ; SLC/PKR - Exchange inits for PXRM*2.0*11 ;09/26/2008
+1 ;;2.0;CLINICAL REMINDERS;**11**;Feb 04, 2005;Build 39
+2 QUIT
+3 ;=======================================================
DELEXI ;If the Exchange File entry already exists delete it.
+1 NEW ARRAY,IC,IND,LIST,LUVALUE,NUM
+2 DO EXARRAY^PXRMP11E("L",.ARRAY)
+3 SET IC=0
+4 FOR
SET IC=$ORDER(ARRAY(IC))
IF 'IC
QUIT
Begin DoDot:1
+5 SET LUVALUE(1)=ARRAY(IC,1)
+6 DO FIND^DIC(811.8,"","","U",.LUVALUE,"","","","","LIST")
+7 IF '$DATA(LIST)
QUIT
+8 SET NUM=$PIECE(LIST("DILIST",0),U,1)
+9 IF NUM'=0
Begin DoDot:2
+10 FOR IND=1:1:NUM
Begin DoDot:3
+11 NEW DA,DIK
+12 SET DIK="^PXD(811.8,"
+13 SET DA=LIST("DILIST",2,IND)
+14 DO ^DIK
End DoDot:3
End DoDot:2
End DoDot:1
+15 QUIT
+16 ;
+17 ;====================================================
EXARRAY(MODE,ARRAY) ;List of exchange entries used by delete and install
+1 ;MODE values: I for include in build, A for include action.
+2 NEW LN
+3 SET LN=0
+4 ;
+5 SET LN=LN+1
+6 SET ARRAY(LN,1)="PATCH 11 LOCATION LIST"
+7 IF MODE["I"
SET ARRAY(LN,2)="09/22/2008@11:16:04"
+8 IF MODE["A"
SET ARRAY(LN,3)="I"
+9 ;This version compatible with SD*5.3*537, not needed anymore.
+10 IF MODE["L"
Begin DoDot:1
+11 SET LN=LN+1
+12 SET ARRAY(LN,1)="PATCH 11 LOCATION LIST (SD)"
End DoDot:1
+13 ;
+14 SET LN=LN+1
+15 SET ARRAY(LN,1)="VA-ALCOHOL AUDIT-C POSITIVE F/U EVAL"
+16 IF MODE["I"
SET ARRAY(LN,2)="09/22/2008@11:16:16"
+17 IF MODE["A"
SET ARRAY(LN,3)="I"
+18 ;
+19 SET LN=LN+1
+20 SET ARRAY(LN,1)="VA-ALCOHOL USE SCREEN (AUDIT-C)"
+21 IF MODE["I"
SET ARRAY(LN,2)="07/09/2008@11:51:46"
+22 IF MODE["A"
SET ARRAY(LN,3)="I"
+23 ;
+24 SET LN=LN+1
+25 SET ARRAY(LN,1)="VA-BL OEF/OIF EMBEDDED FRAGMENTS"
+26 IF MODE["I"
SET ARRAY(LN,2)="09/15/2008@13:30:58"
+27 IF MODE["A"
SET ARRAY(LN,3)="O"
+28 ;
+29 SET LN=LN+1
+30 SET ARRAY(LN,1)="VA-BL OEF/OIF FEVER"
+31 IF MODE["I"
SET ARRAY(LN,2)="06/30/2008@09:09:10"
+32 IF MODE["A"
SET ARRAY(LN,3)="O"
+33 ;
+34 SET LN=LN+1
+35 SET ARRAY(LN,1)="VA-BL OEF/OIF GI SX"
+36 IF MODE["I"
SET ARRAY(LN,2)="06/30/2008@09:09:53"
+37 IF MODE["A"
SET ARRAY(LN,3)="O"
+38 ;
+39 SET LN=LN+1
+40 SET ARRAY(LN,1)="VA-BL OEF/OIF SKIN SX"
+41 IF MODE["I"
SET ARRAY(LN,2)="06/30/2008@09:10:15"
+42 IF MODE["A"
SET ARRAY(LN,3)="O"
+43 ;
+44 SET LN=LN+1
+45 SET ARRAY(LN,1)="VA-CV ELIG W/HF FOR NO SERVICE"
+46 IF MODE["I"
SET ARRAY(LN,2)="09/25/2008@13:56:32"
+47 IF MODE["A"
SET ARRAY(LN,3)="O"
+48 ;
+49 SET LN=LN+1
+50 SET ARRAY(LN,1)="VA-CV INELG W/HF FOR SERVICE"
+51 IF MODE["I"
SET ARRAY(LN,2)="09/25/2008@13:56:09"
+52 IF MODE["A"
SET ARRAY(LN,3)="I"
+53 ;
+54 SET LN=LN+1
+55 SET ARRAY(LN,1)="VA-DEPRESSION SCREENING"
+56 IF MODE["I"
SET ARRAY(LN,2)="09/25/2008@11:48:34"
+57 IF MODE["A"
SET ARRAY(LN,3)="I"
+58 ;
+59 SET LN=LN+1
+60 SET ARRAY(LN,1)="VA-IRAQ & AFGHAN POST-DEPLOY SCREEN"
+61 IF MODE["I"
SET ARRAY(LN,2)="08/06/2008@15:16:29"
+62 IF MODE["A"
SET ARRAY(LN,3)="I"
+63 ;
+64 SET LN=LN+1
+65 SET ARRAY(LN,1)="VA-MHV BMI > 25.0"
+66 IF MODE["I"
SET ARRAY(LN,2)="09/11/2008@13:21:53"
+67 IF MODE["A"
SET ARRAY(LN,3)="I"
+68 ;
+69 SET LN=LN+1
+70 SET ARRAY(LN,1)="VA-MHV CERVICAL CANCER SCREEN"
+71 IF MODE["I"
SET ARRAY(LN,2)="07/31/2008@12:12:30"
+72 IF MODE["A"
SET ARRAY(LN,3)="I"
+73 ;
+74 SET LN=LN+1
+75 SET ARRAY(LN,1)="VA-MHV COLORECTAL CANCER SCREEN"
+76 IF MODE["I"
SET ARRAY(LN,2)="07/28/2008@10:56:37"
+77 IF MODE["A"
SET ARRAY(LN,3)="I"
+78 ;
+79 SET LN=LN+1
+80 SET ARRAY(LN,1)="VA-MHV DIABETES FOOT EXAM"
+81 IF MODE["I"
SET ARRAY(LN,2)="07/01/2008@15:10:54"
+82 IF MODE["A"
SET ARRAY(LN,3)="I"
+83 ;
+84 SET LN=LN+1
+85 SET ARRAY(LN,1)="VA-MHV DIABETES RETINAL EXAM"
+86 IF MODE["I"
SET ARRAY(LN,2)="08/20/2008@09:55:06"
+87 IF MODE["A"
SET ARRAY(LN,3)="I"
+88 ;
+89 SET LN=LN+1
+90 SET ARRAY(LN,1)="VA-MHV HYPERTENSION"
+91 IF MODE["I"
SET ARRAY(LN,2)="07/01/2008@15:08:56"
+92 IF MODE["A"
SET ARRAY(LN,3)="I"
+93 ;
+94 SET LN=LN+1
+95 SET ARRAY(LN,1)="VA-MHV INFLUENZA VACCINE"
+96 IF MODE["I"
SET ARRAY(LN,2)="07/28/2008@10:56:58"
+97 IF MODE["A"
SET ARRAY(LN,3)="I"
+98 ;
+99 SET LN=LN+1
+100 SET ARRAY(LN,1)="VA-MHV LDL CONTROL"
+101 IF MODE["I"
SET ARRAY(LN,2)="07/28/2008@10:57:07"
+102 IF MODE["A"
SET ARRAY(LN,3)="I"
+103 ;
+104 SET LN=LN+1
+105 SET ARRAY(LN,1)="VA-MHV MAMMOGRAM SCREENING"
+106 IF MODE["I"
SET ARRAY(LN,2)="08/20/2008@11:25:06"
+107 IF MODE["A"
SET ARRAY(LN,3)="I"
+108 ;
+109 SET LN=LN+1
+110 SET ARRAY(LN,1)="VA-MHV PNEUMOVAX"
+111 IF MODE["I"
SET ARRAY(LN,2)="07/28/2008@10:57:48"
+112 IF MODE["A"
SET ARRAY(LN,3)="I"
+113 ;
+114 SET LN=LN+1
+115 SET ARRAY(LN,1)="VA-OEF/OIF MONITOR REPORTING"
+116 IF MODE["I"
SET ARRAY(LN,2)="09/25/2008@09:07:55"
+117 IF MODE["A"
SET ARRAY(LN,3)="I"
+118 ;This version compatible with SD*5.3*537, not needed anymore.
+119 IF MODE["L"
Begin DoDot:1
+120 SET LN=LN+1
+121 SET ARRAY(LN,1)="VA-OEF/OIF MONITOR REPORTING (SD)"
End DoDot:1
+122 ;
+123 SET LN=LN+1
+124 SET ARRAY(LN,1)="VA-PTSD SCREENING"
+125 IF MODE["I"
SET ARRAY(LN,2)="08/06/2008@15:16:03"
+126 IF MODE["A"
SET ARRAY(LN,3)="I"
+127 ;
+128 SET LN=LN+1
+129 SET ARRAY(LN,1)="VA-TBI SCREENING"
+130 IF MODE["I"
SET ARRAY(LN,2)="08/26/2008@10:31:02"
+131 IF MODE["A"
SET ARRAY(LN,3)="I"
+132 ;
+133 SET LN=LN+1
+134 SET ARRAY(LN,1)="PATCH 11 ITEMS"
+135 IF MODE["I"
SET ARRAY(LN,2)="08/14/2008@09:29:40"
+136 IF MODE["A"
SET ARRAY(LN,3)="O"
+137 ;
+138 ;This version compatible with SD*5.3*537, not needed anymore.
+139 IF MODE["L"
Begin DoDot:1
+140 SET LN=LN+1
+141 SET ARRAY(LN,1)="PATCH 11 ITEMS (SD)"
End DoDot:1
+142 ;
+143 IF MODE="IA"
DO BMES^XPDUTL("There are "_LN_" Reminder Exchange entries to be installed.")
+144 QUIT
+145 ;
+146 ;==========================================
EXFINC(Y) ;Return a 1 if the Exchange file entry is in the list to
+1 ;include in the build. This is used in the build to determine which
+2 ;entries to include.
+3 NEW EXARRAY,FOUND,IEN,IC,LUVALUE
+4 DO EXARRAY^PXRMP11E("I",.EXARRAY)
+5 SET FOUND=0
+6 SET IC=0
+7 FOR
SET IC=+$ORDER(EXARRAY(IC))
IF (IC=0)!(FOUND)
QUIT
Begin DoDot:1
+8 MERGE LUVALUE=EXARRAY(IC)
+9 SET IEN=+$$FIND1^DIC(811.8,"","KU",.LUVALUE)
+10 IF IEN=Y
SET FOUND=1
QUIT
End DoDot:1
+11 QUIT FOUND
+12 ;
+13 ;==========================================
SMEXINS ;Silent mode install.
+1 NEW ACTION,EXARRAY,IC,IEN,LUVALUE,PXRMINST,TEXT
+2 SET PXRMINST=1
+3 DO EXARRAY^PXRMP11E("IA",.EXARRAY)
+4 SET IC=0
+5 FOR
SET IC=$ORDER(EXARRAY(IC))
IF 'IC
QUIT
Begin DoDot:1
+6 SET LUVALUE(1)=EXARRAY(IC,1)
SET LUVALUE(2)=EXARRAY(IC,2)
+7 SET IEN=+$$FIND1^DIC(811.8,"","KU",.LUVALUE)
+8 IF IEN=0
QUIT
+9 SET TEXT="Installing Reminder Exchange entry "_LUVALUE(1)
+10 DO BMES^XPDUTL(TEXT)
+11 SET ACTION=EXARRAY(IC,3)
+12 DO INSTALL^PXRMEXSI(IEN,ACTION,1)
End DoDot:1
+13 QUIT
+14 ;