- PXRMP3I ; SLC/PKR - Patch 3 init routine. ;02/15/2005
- ;;2.0;CLINICAL REMINDERS;**3**;Feb 04, 2005
- ;Reminder Exchange install.
- Q
- ;
- ;===============================================================
- ARRAY(MODE,ARRAY) ;List of exchange entries used by delete and install
- ;
- S ARRAY(1,1)="VA-MHV BMI > 25.0"
- I MODE S ARRAY(1,2)="04/01/2005@10:11:13"
- S ARRAY(2,1)="VA-MHV CERVICAL CANCER SCREEN"
- I MODE S ARRAY(2,2)="02/15/2005@08:47:44"
- S ARRAY(3,1)="VA-MHV COLORECTAL CANCER SCREEN"
- I MODE S ARRAY(3,2)="02/15/2005@08:48:07"
- S ARRAY(4,1)="VA-MHV DIABETES FOOT EXAM"
- I MODE S ARRAY(4,2)="02/15/2005@08:48:38"
- S ARRAY(5,1)="VA-MHV DIABETES HBA1C"
- I MODE S ARRAY(5,2)="02/15/2005@08:48:55"
- S ARRAY(6,1)="VA-MHV DIABETES RETINAL EXAM"
- I MODE S ARRAY(6,2)="02/15/2005@08:49:15"
- S ARRAY(7,1)="VA-MHV HYPERTENSION"
- I MODE S ARRAY(7,2)="02/15/2005@08:49:36"
- S ARRAY(8,1)="VA-MHV INFLUENZA VACCINE"
- I MODE S ARRAY(8,2)="02/15/2005@08:49:56"
- S ARRAY(9,1)="VA-MHV LDL CONTROL"
- I MODE S ARRAY(9,2)="03/01/2005@13:08:41"
- S ARRAY(10,1)="VA-MHV LIPID MEASUREMENT"
- I MODE S ARRAY(10,2)="03/01/2005@13:08:18"
- S ARRAY(11,1)="VA-MHV MAMMOGRAM SCREENING"
- I MODE S ARRAY(11,2)="03/01/2005@13:08:55"
- S ARRAY(12,1)="VA-MHV PNEUMOVAX"
- I MODE S ARRAY(12,2)="02/15/2005@08:51:39"
- Q
- ;
- ;===============================================================
- DELEI ;If the Exchange File entry already exists delete it.
- N ARRAY,IC,IND,LIST,LUVALUE,NUM
- D ARRAY(1,.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
- ;
- ;===============================================================
- 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 ARRAY,FOUND,IEN,IC,LUVALUE
- D ARRAY(1,.ARRAY)
- S FOUND=0
- S IC=0
- F S IC=+$O(ARRAY(IC)) Q:(IC=0)!(FOUND) D
- . M LUVALUE=ARRAY(IC)
- . S IEN=+$$FIND1^DIC(811.8,"","KU",.LUVALUE)
- . I IEN=Y S FOUND=1 Q
- Q FOUND
- ;
- PRE ;
- D DELEI
- Q
- POST ;
- D SMEXINS
- Q
- ;===============================================================
- SMEXINS ;Silent mode install.
- N ARRAY,IC,IEN,LUVALUE,PXRMINST
- S PXRMINST=1
- D ARRAY(1,.ARRAY)
- S IC=0
- F S IC=$O(ARRAY(IC)) Q:'IC D
- .M LUVALUE=ARRAY(IC)
- .S IEN=+$$FIND1^DIC(811.8,"","KU",.LUVALUE)
- .I IEN'=0 D
- .. N TEXT
- .. I LUVALUE(1)["PARAMETER" S TEXT="Installing entry "_LUVALUE(1)
- .. E S TEXT="Installing reminder "_LUVALUE(1)
- .. D BMES^XPDUTL(TEXT)
- .. D INSTALL^PXRMEXSI(IEN,1)
- Q
- ;
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HPXRMP3I 2792 printed Mar 13, 2025@20:52:16 Page 2
- PXRMP3I ; SLC/PKR - Patch 3 init routine. ;02/15/2005
- +1 ;;2.0;CLINICAL REMINDERS;**3**;Feb 04, 2005
- +2 ;Reminder Exchange install.
- +3 QUIT
- +4 ;
- +5 ;===============================================================
- ARRAY(MODE,ARRAY) ;List of exchange entries used by delete and install
- +1 ;
- +2 SET ARRAY(1,1)="VA-MHV BMI > 25.0"
- +3 IF MODE
- SET ARRAY(1,2)="04/01/2005@10:11:13"
- +4 SET ARRAY(2,1)="VA-MHV CERVICAL CANCER SCREEN"
- +5 IF MODE
- SET ARRAY(2,2)="02/15/2005@08:47:44"
- +6 SET ARRAY(3,1)="VA-MHV COLORECTAL CANCER SCREEN"
- +7 IF MODE
- SET ARRAY(3,2)="02/15/2005@08:48:07"
- +8 SET ARRAY(4,1)="VA-MHV DIABETES FOOT EXAM"
- +9 IF MODE
- SET ARRAY(4,2)="02/15/2005@08:48:38"
- +10 SET ARRAY(5,1)="VA-MHV DIABETES HBA1C"
- +11 IF MODE
- SET ARRAY(5,2)="02/15/2005@08:48:55"
- +12 SET ARRAY(6,1)="VA-MHV DIABETES RETINAL EXAM"
- +13 IF MODE
- SET ARRAY(6,2)="02/15/2005@08:49:15"
- +14 SET ARRAY(7,1)="VA-MHV HYPERTENSION"
- +15 IF MODE
- SET ARRAY(7,2)="02/15/2005@08:49:36"
- +16 SET ARRAY(8,1)="VA-MHV INFLUENZA VACCINE"
- +17 IF MODE
- SET ARRAY(8,2)="02/15/2005@08:49:56"
- +18 SET ARRAY(9,1)="VA-MHV LDL CONTROL"
- +19 IF MODE
- SET ARRAY(9,2)="03/01/2005@13:08:41"
- +20 SET ARRAY(10,1)="VA-MHV LIPID MEASUREMENT"
- +21 IF MODE
- SET ARRAY(10,2)="03/01/2005@13:08:18"
- +22 SET ARRAY(11,1)="VA-MHV MAMMOGRAM SCREENING"
- +23 IF MODE
- SET ARRAY(11,2)="03/01/2005@13:08:55"
- +24 SET ARRAY(12,1)="VA-MHV PNEUMOVAX"
- +25 IF MODE
- SET ARRAY(12,2)="02/15/2005@08:51:39"
- +26 QUIT
- +27 ;
- +28 ;===============================================================
- DELEI ;If the Exchange File entry already exists delete it.
- +1 NEW ARRAY,IC,IND,LIST,LUVALUE,NUM
- +2 DO ARRAY(1,.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 ;===============================================================
- 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 ARRAY,FOUND,IEN,IC,LUVALUE
- +4 DO ARRAY(1,.ARRAY)
- +5 SET FOUND=0
- +6 SET IC=0
- +7 FOR
- SET IC=+$ORDER(ARRAY(IC))
- if (IC=0)!(FOUND)
- QUIT
- Begin DoDot:1
- +8 MERGE LUVALUE=ARRAY(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 ;
- PRE ;
- +1 DO DELEI
- +2 QUIT
- POST ;
- +1 DO SMEXINS
- +2 QUIT
- +3 ;===============================================================
- SMEXINS ;Silent mode install.
- +1 NEW ARRAY,IC,IEN,LUVALUE,PXRMINST
- +2 SET PXRMINST=1
- +3 DO ARRAY(1,.ARRAY)
- +4 SET IC=0
- +5 FOR
- SET IC=$ORDER(ARRAY(IC))
- if 'IC
- QUIT
- Begin DoDot:1
- +6 MERGE LUVALUE=ARRAY(IC)
- +7 SET IEN=+$$FIND1^DIC(811.8,"","KU",.LUVALUE)
- +8 IF IEN'=0
- Begin DoDot:2
- +9 NEW TEXT
- +10 IF LUVALUE(1)["PARAMETER"
- SET TEXT="Installing entry "_LUVALUE(1)
- +11 IF '$TEST
- SET TEXT="Installing reminder "_LUVALUE(1)
- +12 DO BMES^XPDUTL(TEXT)
- +13 DO INSTALL^PXRMEXSI(IEN,1)
- End DoDot:2
- End DoDot:1
- +14 QUIT
- +15 ;