Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: ACPTENV

ACPTENV.m

Go to the documentation of this file.
  1. ACPTENV ; IHS/SD/SDR - Environment checker for ACPT V2.07 ; 5/7/2003 2:03:41 PM [ 02/03/2004 12:28 PM ]
  1. ;;2.07;CPT FILES;**1,2**;DEC 31,2006
  1. ;
  1. I '$G(DUZ) W !,"DUZ UNDEFINED OR 0." D SORRY(2) Q
  1. ;
  1. I '$L($G(DUZ(0))) W !,"DUZ(0) UNDEFINED OR NULL." D SORRY(2) Q
  1. ;
  1. S X=$P(^VA(200,DUZ,0),U)
  1. W !!,$$CJ^XLFSTR("Hello, "_$P(X,",",2)_" "_$P(X,","),IOM)
  1. W !!,$$CJ^XLFSTR("Checking Environment for "_$P($T(+2),";",4)_" V "_$P($T(+2),";",3)_" Patch "_$P($T(+2),";",5)_".",IOM),!
  1. ;
  1. NEW ACPTQUIT
  1. S ACPTQUIT=0
  1. I '$$VCHK("XU","8",2) S ACPTQUIT=2
  1. ;
  1. I '$$VCHK("XT","7.3",2) S ACPTQUIT=2
  1. ;
  1. I '$$VCHK("DI","21",2) S ACPTQUIT=2
  1. ;
  1. ;I '$$VCHK("ACPT","2.06",2) S ACPTQUIT=2 ;acpt*2*07*1
  1. I '$$VCHK("ACPT","2.07",2) S ACPTQUIT=2 ;acpt*2*07*1
  1. ;
  1. NEW DA,DIC
  1. S X="ACPT",DIC="^DIC(9.4,",DIC(0)="",D="C"
  1. D IX^DIC
  1. I Y<0,$D(^DIC(9.4,"C","ACPT")) D S ACPTQUIT=2
  1. . W !!,*7,*7,$$CJ^XLFSTR("You Have More Than One Entry In The",IOM),!,$$CJ^XLFSTR("PACKAGE File with an ""ACPT"" prefix.",IOM)
  1. . W !,$$CJ^XLFSTR("One entry needs to be deleted.",IOM)
  1. . W !,$$CJ^XLFSTR("FIX IT! Before Proceeding.",IOM),!!,*7,*7,*7
  1. .Q
  1. ;
  1. I ACPTQUIT D SORRY(ACPTQUIT) Q
  1. ;
  1. W !!,$$CJ^XLFSTR("ENVIRONMENT OK.",IOM)
  1. ;
  1. I '$$DIR^XBDIR("E","","","","","",1) D SORRY(2) Q
  1. Q
  1. ;
  1. SORRY(X) ;
  1. KILL DIFQ
  1. S XPDQUIT=X
  1. W:'$D(ZTQUEUED) *7,!,$$CJ^XLFSTR("Sorry....",IOM),$$DIR^XBDIR("E","Press RETURN")
  1. Q
  1. ;
  1. VCHK(ACPTPRE,ACPTVER,ACPTQUIT) ; Check versions needed.
  1. ;
  1. NEW ACPTV
  1. S ACPTV=$$VERSION^XPDUTL(ACPTPRE)
  1. W !,$$CJ^XLFSTR("Need at least "_ACPTPRE_" v "_ACPTVER_"....."_ACPTPRE_" v "_ACPTV_" Present",IOM)
  1. I ACPTV<ACPTVER W *7,!,$$CJ^XLFSTR("^^^^**NEEDS FIXED**^^^^",IOM) Q 0
  1. Q 1
  1. ;
  1. INSTALLD(ACPTINST) ;EP - Determine if patch ACPTINST was installed, where ACPTINST is
  1. ; the name of the INSTALL. E.g "AG*6.0*10".
  1. ;;^DIC(9.4,D0,22,D1,PAH,D2,0)=
  1. ;;(#.01) PATCH APPLICATION HISTORY [1F] ^ (#.02)DATE APPLIED [2D] ^ (#.03) APPLIED BY [3P] ^
  1. NEW DIC,X,Y
  1. S X=$P(ACPTINST,"*",1)
  1. S DIC="^DIC(9.4,",DIC(0)="FM",D="C"
  1. D IX^DIC
  1. I Y<1 Q 0
  1. S DIC=DIC_+Y_",22,",X=$P(ACPTINST,"*",2)
  1. D ^DIC
  1. I Y<1 Q 0
  1. S DIC=DIC_+Y_",""PAH"",",X=$P(ACPTINST,"*",3)
  1. D ^DIC
  1. Q $S(Y<1:0,1:1)
  1. ;