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

XB3P9.m

Go to the documentation of this file.
  1. XB3P9 ;IHS/SET/GTH - XB 3 PATCH 9 ; [ 04/21/2003 9:21 AM ]
  1. ;;3.0;IHS/VA UTILITIES;**9**;FEB 07, 1997
  1. ;
  1. ; IHS/SET/GTH XB*3*9 10/29/2002
  1. ;
  1. I '$G(IOM) D HOME^%ZIS
  1. ;
  1. NEW IORVON,IORVOFF
  1. S X="IORVON;IORVOFF"
  1. D ENDR^%ZISS
  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. D BMES^XPDUTL($$CJ^XLFSTR("Hello, "_$P(X,",",2)_" "_$P(X,","),IOM))
  1. D BMES^XPDUTL($$CJ^XLFSTR("Checking Environment for "_$P($T(+2),";",4)_" V "_$P($T(+2),";",3)_" Patch "_$P($T(+2),";",5)_".",IOM))
  1. ;
  1. NEW XBQUIT
  1. S XBQUIT=0
  1. I '$$VCHK("XB","3.0",2,"'=") S XBQUIT=2
  1. ;
  1. NEW DA,DIC
  1. S X="XB",DIC="^DIC(9.4,",DIC(0)="",D="C"
  1. D IX^DIC
  1. I Y<0,$D(^DIC(9.4,"C","XB")) D S XBQUIT=2
  1. . D BMES^XPDUTL($$CJ^XLFSTR("You Have More Than One Entry In The",IOM)),MES^XPDUTL($$CJ^XLFSTR("PACKAGE File with an ""XB"" prefix.",IOM))
  1. . D MES^XPDUTL($$CJ^XLFSTR(IORVON_"One entry needs to be deleted."_IORVOFF,IOM))
  1. . D MES^XPDUTL($$CJ^XLFSTR("FIX IT! Before Proceeding.",IOM))
  1. .Q
  1. ;
  1. I $G(XPDENV)=1 D
  1. . S (XPDDIQ("XPZ1"),XPDDIQ("XPZ2"))=0
  1. . Q:DUZ(0)["@"
  1. . D BMES^XPDUTL("I need ""@"" in your DUZ(0) for the install to work.")
  1. . D MES^XPDUTL("In programmer mode, D P^DI,^XUP, and select ""XPD MAIN"" when you're prompted")
  1. . D MES^XPDUTL("for OPTION NAME.")
  1. . S XBQUIT=2
  1. .Q
  1. ;
  1. I XBQUIT D SORRY(XBQUIT) Q
  1. ;
  1. D BMES^XPDUTL($$CJ^XLFSTR("ENVIRONMENT OK.",IOM))
  1. ;
  1. I '$$DIR^XBDIR("E","","","","","",2) D SORRY(2)
  1. Q
  1. ;
  1. SORRY(X) ;
  1. KILL DIFQ
  1. S XPDQUIT=X
  1. W:'$D(ZTQUEUED) *7,!,$$CJ^XLFSTR(IORVON_"Sorry...."_IORVOFF,IOM),$$DIR^XBDIR("E","Press RETURN")
  1. Q
  1. ;
  1. VCHK(XBPRE,XBVER,XBQUIT,XBCOMP) ; Check versions needed.
  1. ;
  1. NEW XBV
  1. S XBV=$$VERSION^XPDUTL(XBPRE)
  1. W !,$$CJ^XLFSTR("Need "_$S(XBCOMP="<":"at least ",1:"")_XBPRE_" v "_XBVER_"....."_XBPRE_" v "_XBV_" Present",IOM)
  1. I @(""""_XBV_""""_XBCOMP_""""_XBVER_"""") Q 0
  1. Q 1
  1. ;
  1. ;
  1. PRE ;EP - From KIDS.
  1. Q
  1. D BMES^XPDUTL("Begin 'PRE^XB3P9' at "_$$FMTE^XLFDT($$NOW^XLFDT)_".")
  1. D BMES^XPDUTL("End 'PRE^XB3P9' at "_$$FMTE^XLFDT($$NOW^XLFDT)_".")
  1. Q
  1. ;
  1. POST ;EP - From KIDS.
  1. D BMES^XPDUTL("Begin 'POST^XB3P9' at "_$$FMTE^XLFDT($$NOW^XLFDT)_".")
  1. ;
  1. D BMES^XPDUTL("Attaching ""XB PACKAGE TRACKING"" option to the Site Manager menu.")
  1. D ATTACH
  1. ;
  1. D BMES^XPDUTL("Setting up Q'ing of option 'XBTRK' for every 30 days.")
  1. D QUE
  1. ;
  1. I $$VERSION^%ZOSV(1)["Cache" D LOAD
  1. ;
  1. D BMES^XPDUTL("Delivering XB*3*9 install message to select users...")
  1. D MAIL
  1. ;
  1. D BMES^XPDUTL("Creating Task to delete old/unused XB/ZIB routines.")
  1. D DELR
  1. ;
  1. D BMES^XPDUTL("End 'POST^XB3P9' at "_$$FMTE^XLFDT($$NOW^XLFDT)_".")
  1. Q
  1. ;
  1. ATTACH ; Attach option for protection and interactive access.
  1. I $$ADD^XPDMENU("XUSITEMGR","XB PACKAGE TRACKING","PTRK",10) D BMES^XPDUTL("....successfully atch'd....allocating Security Keys...") D I 1
  1. . NEW XB,DA,DIC,DINUM
  1. . S XB=0,XB("PG")=$O(^DIC(19.1,"B","XUPROGMODE",0)),XB("TRK")=$O(^DIC(19.1,"B","XBZ PACKAGE TRACKING",0))
  1. . Q:'XB("PG")!'XB("TRK")
  1. . S DIC(0)="NMQ",DIC("P")=$P(^DD(200,51,0),U,2)
  1. . F S XB=$O(^XUSEC("XUPROGMODE",XB)) Q:'XB D
  1. .. Q:$D(^VA(200,XB,51,XB("TRK")))
  1. .. S DIC="^VA(200,XB,51,",DA(1)=XB,(DINUM,X)=XB("TRK")
  1. .. D FILE^DICN
  1. ..Q
  1. .Q
  1. E D BMES^XPDUTL("....Attachment *FAILED*.")
  1. Q
  1. ;
  1. QUE ; Add the option to the OPTION SCHEDULING file.
  1. NEW DA,DIC
  1. S DIC=19.2,DIC(0)="L",X="XB PACKAGE TRACKING",DIC("DR")="2////"_$$SCH^XLFDT("1D",DT)_".05;6///30D"
  1. D ^DIC
  1. I +Y<0 D BMES^XPDUTL("Entry of ""XB PACKAGE TRACKING"" into OPTION SCHEDULING file failed.") Q
  1. S DA(1)=+Y,DIC="^DIC(19.2,"_DA(1)_",2,",DIC(0)="",DIC("P")=$P(^DD(19.2,10,0),U,2),XBSYSID(1)="cmbsyb.hqw.DOMAIN.NAME",XBSYSID(2)=$P(^AUTTSITE(1,0),U,14)
  1. KILL DO,DD
  1. F X="XBSYSID(1)","XBSYSID(2)" S DIC("DR")="1///"""_(@X)_"""" D FILE^DICN
  1. D BMES^XPDUTL("""XB PACKAGE TRACKING"" has been entered into OPTION SCHEDULING file.")
  1. Q
  1. ;
  1. MAIL ; Send install mail message.
  1. NEW DIFROM,XMSUB,XMDUZ,XMTEXT,XMY
  1. KILL ^TMP("XB3P9MS",$J)
  1. S ^TMP("XB3P9MS",$J,1)=" --- XB v 3, Patch 9, has been installed ---"
  1. S %=0
  1. F S %=$O(^XTMP("XPDI",XPDA,"BLD",XPDBLD,1,%)) Q:'% S ^TMP("XB3P9MS",$J,(%+1))=" "_^(%,0)
  1. S XMSUB=$P($P($T(+1),";",2)," ",3,99),XMDUZ=$S($G(DUZ):DUZ,1:.5),XMTEXT="^TMP(""XB3P9MS"",$J,",XMY(1)="",XMY(DUZ)=""
  1. F %="XUMGR","XUPROG","XUPROGMODE" D SINGLE(%)
  1. D ^XMD
  1. KILL ^TMP("XB3P9MS",$J)
  1. Q
  1. ;
  1. SINGLE(K) ; Get holders of a single key K.
  1. NEW Y
  1. S Y=0
  1. Q:'$D(^XUSEC(K))
  1. F S Y=$O(^XUSEC(K,Y)) Q:'Y S XMY(Y)=""
  1. Q
  1. ;
  1. DELR ; Create task to delete unnecessary routines.
  1. S ZTRTN="DEL^XBDELR(""XBP8"")",ZTDESC="Delete routines in the 'XBP8' namespace.",ZTDTH=$$HADD^XLFDT($H,0,0,30,0),ZTIO="",ZTPRI=1
  1. D ^%ZTLOAD
  1. Q
  1. ;
  1. LOAD ; If Cache', save %-routines into Namespace
  1. D BMES^XPDUTL("Saving 5 routines as % routines in current Namespace.")
  1. NEW DIE,DIF,X,XB,XBF,XBL,XBT,XCM,XCN,XCNP
  1. KILL ^TMP("XB3P9",$J)
  1. F XB=1:1 S XBL=$P($T(RTN+XB),";",3) Q:'$L(XBL) D
  1. . S XBF=$P(XBL,U,1),XBT=$P(XBL,U,2)
  1. . D MES^XPDUTL(" Saving '"_$$LJ^XLFSTR(XBF,8)_"' as '"_$$LJ^XLFSTR(XBT,8)_"'.")
  1. . S DIF="^TMP(""XB3P9"",$J,",XCNP=0,X=XBF
  1. . X ^%ZOSF("LOAD")
  1. . S DIE="^TMP(""XB3P9"",$J,",X=XBT,XCN=0
  1. . X ^%ZOSF("SAVE")
  1. . KILL ^TMP("XB3P9",$J)
  1. .Q
  1. Q
  1. ;
  1. RTN ; Routine ^ Rename As
  1. ;;XBCLS^%XBCLS
  1. ;;ZIBGD^%ZIBGD
  1. ;;ZIBRD^%ZIBRD
  1. ;;ZIBCLU0^%ZIBCLU0
  1. ;;ZIBZUCI^%ZUCI
  1. ;