APCMPRE ;IHS/CMI/LAB - MU V1.0 PATCH 1 ENV; ; 03 Feb 2015 10:13 AM
;;1.0;IHS MU PERFORMANCE REPORTS;**1,2,5,6**;MAR 26, 2012;Build 65
;
;
; The following line prevents the "Disable Options..." and "Move
; Routines..." questions from being asked during the install.
I $G(XPDENV)=1 S (XPDDIQ("XPZ1"),XPDDIQ("XPZ2"))=0
F X="XPO1","XPZ1","XPZ2","XPI1" S XPDDIQ(X)=0
I '$$INSTALLD("BJPC*2.0*10") D SORRY(2)
I '$$INSTALLD("APCM*1.0*5") D SORRY(2)
;
Q
;
PRE ;
;CREATE PACKAGE ENTRY FOR APCM
;DELETE OLD ONE FIRST
S DA=0 F S DA=$O(^APCM14OB(DA)) Q:DA'=+DA S DIK="^APCM14OB(" D ^DIK
S DA=0 F S DA=$O(^APCM24OB(DA)) Q:DA'=+DA S DIK="^APCM24OB(" D ^DIK
S DA=0 F S DA=$O(^APCMM14L(DA)) Q:DA'=+DA S DIK="^APCMM14L(" D ^DIK
S DA=0 F S DA=$O(^APCMM24L(DA)) Q:DA'=+DA S DIK="^APCMM24L(" D ^DIK
Q
POST ;
Q
INSTALLD(APCMSTAL) ;EP - Determine if patch APCMSTAL was installed, where
; APCLSTAL is the name of the INSTALL. E.g "AG*6.0*11".
;
NEW APCMY,DIC,X,Y
S X=$P(APCMSTAL,"*",1)
S DIC="^DIC(9.4,",DIC(0)="FM",D="C"
D IX^DIC
I Y<1 D IMES Q 0
S DIC=DIC_+Y_",22,",X=$P(APCMSTAL,"*",2)
D ^DIC
I Y<1 D IMES Q 0
S DIC=DIC_+Y_",""PAH"",",X=$P(APCMSTAL,"*",3)
D ^DIC
S APCMY=Y
D IMES
Q $S(APCMY<1:0,1:1)
IMES ;
D MES^XPDUTL($$CJ^XLFSTR("Patch """_APCMSTAL_""" is"_$S(Y<1:" *NOT*",1:"")_" installed.",IOM))
Q
SORRY(X) ;
KILL DIFQ
I X=3 S XPDQUIT=2 Q
S XPDQUIT=X
W *7,!,$$CJ^XLFSTR("Sorry....FIX IT!",IOM)
Q
APCMPRE ;IHS/CMI/LAB - MU V1.0 PATCH 1 ENV; ; 03 Feb 2015 10:13 AM
+1 ;;1.0;IHS MU PERFORMANCE REPORTS;**1,2,5,6**;MAR 26, 2012;Build 65
+2 ;
+3 ;
+4 ; The following line prevents the "Disable Options..." and "Move
+5 ; Routines..." questions from being asked during the install.
+6 IF $GET(XPDENV)=1
SET (XPDDIQ("XPZ1"),XPDDIQ("XPZ2"))=0
+7 FOR X="XPO1","XPZ1","XPZ2","XPI1"
SET XPDDIQ(X)=0
+8 IF '$$INSTALLD("BJPC*2.0*10")
DO SORRY(2)
+9 IF '$$INSTALLD("APCM*1.0*5")
DO SORRY(2)
+10 ;
+11 QUIT
+12 ;
PRE ;
+1 ;CREATE PACKAGE ENTRY FOR APCM
+2 ;DELETE OLD ONE FIRST
+3 SET DA=0
FOR
SET DA=$ORDER(^APCM14OB(DA))
IF DA'=+DA
QUIT
SET DIK="^APCM14OB("
DO ^DIK
+4 SET DA=0
FOR
SET DA=$ORDER(^APCM24OB(DA))
IF DA'=+DA
QUIT
SET DIK="^APCM24OB("
DO ^DIK
+5 SET DA=0
FOR
SET DA=$ORDER(^APCMM14L(DA))
IF DA'=+DA
QUIT
SET DIK="^APCMM14L("
DO ^DIK
+6 SET DA=0
FOR
SET DA=$ORDER(^APCMM24L(DA))
IF DA'=+DA
QUIT
SET DIK="^APCMM24L("
DO ^DIK
+7 QUIT
POST ;
+1 QUIT
INSTALLD(APCMSTAL) ;EP - Determine if patch APCMSTAL was installed, where
+1 ; APCLSTAL is the name of the INSTALL. E.g "AG*6.0*11".
+2 ;
+3 NEW APCMY,DIC,X,Y
+4 SET X=$PIECE(APCMSTAL,"*",1)
+5 SET DIC="^DIC(9.4,"
SET DIC(0)="FM"
SET D="C"
+6 DO IX^DIC
+7 IF Y<1
DO IMES
QUIT 0
+8 SET DIC=DIC_+Y_",22,"
SET X=$PIECE(APCMSTAL,"*",2)
+9 DO ^DIC
+10 IF Y<1
DO IMES
QUIT 0
+11 SET DIC=DIC_+Y_",""PAH"","
SET X=$PIECE(APCMSTAL,"*",3)
+12 DO ^DIC
+13 SET APCMY=Y
+14 DO IMES
+15 QUIT $SELECT(APCMY<1:0,1:1)
IMES ;
+1 DO MES^XPDUTL($$CJ^XLFSTR("Patch """_APCMSTAL_""" is"_$SELECT(Y<1:" *NOT*",1:"")_" installed.",IOM))
+2 QUIT
SORRY(X) ;
+1 KILL DIFQ
+2 IF X=3
SET XPDQUIT=2
QUIT
+3 SET XPDQUIT=X
+4 WRITE *7,!,$$CJ^XLFSTR("Sorry....FIX IT!",IOM)
+5 QUIT