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

EC20P95.m

Go to the documentation of this file.
  1. EC20P95 ;ALB/RPM - PATCH 95 ENV/PRE/POST INSTALL ; 07/29/08
  1. ;;2.0; EVENT CAPTURE ;**95**; 8 MAY 96;Build 26
  1. ;
  1. ENV ;environment check
  1. S XPDABORT=""
  1. D PROGCHK(.XPDABORT) ;checks programmer variables
  1. ;rename option only during install, not during load
  1. I '$G(XPDABORT),$G(XPDENV)=1 D
  1. . I '$$RENOPT("EC NIGHT","EC PCE FEED") S XPDABORT=2
  1. I XPDABORT="" K XPDABORT
  1. Q
  1. ;
  1. ;
  1. PRE ;pre-install
  1. Q
  1. ;
  1. ;
  1. POST ;post-install
  1. D POST1 ;build 'APRV' index
  1. Q
  1. ;
  1. ;
  1. PROGCHK(XPDABORT) ;checks for necessary programmer variables
  1. ;
  1. I '$G(DUZ)!($G(DUZ(0))'="@")!('$G(DT))!($G(U)'="^") DO
  1. . D BMES^XPDUTL("******")
  1. . D MES^XPDUTL("Your programming variables are not set up properly.")
  1. . D MES^XPDUTL("Installation aborted.")
  1. . D MES^XPDUTL("******")
  1. . S XPDABORT=2
  1. Q
  1. ;
  1. ;
  1. RENOPT(ECOLD,ECNEW) ;rename option
  1. ;
  1. ; Input:
  1. ; ECOLD - original option name
  1. ; ECNEW - new option name
  1. ;
  1. ; Output:
  1. ; Function value - returns 1 on success; 0 on failure
  1. ;
  1. N ECRSLT
  1. S ECRSLT=1
  1. I $G(ECOLD)'="",$G(ECNEW)'="",+$$LKOPT^XPDMENU(ECOLD)>0 D
  1. . D RENAME^XPDMENU(ECOLD,ECNEW)
  1. . I +$$LKOPT^XPDMENU(ECNEW)'>0 D
  1. . . D BMES^XPDUTL("******")
  1. . . D MES^XPDUTL("The installation process failed to rename the")
  1. . . D MES^XPDUTL(ECOLD_" option to "_ECNEW_".")
  1. . . D MES^XPDUTL("Installation aborted.")
  1. . . D MES^XPDUTL("******")
  1. . . S ECRSLT=0
  1. Q ECRSLT
  1. ;
  1. POST1 ;Set up TaskMan to build 'APRV' index in the background
  1. N ZTDESC,ZTDTH,ZTIO,ZTQUEUED,ZTREQ,ZTRTN,ZTSAVE,ZTSK
  1. S ZTRTN="BLDIDX^EC20P95"
  1. S ZTDESC="Populate 'APRV' index for EC*2.0*95"
  1. ;Queue Task to start in 60 seconds
  1. S ZTDTH=$$SCH^XLFDT("60S",$$NOW^XLFDT)
  1. S ZTIO=""
  1. D ^%ZTLOAD
  1. D BMES^XPDUTL("*****")
  1. D
  1. . I $D(ZTSK)[0 D Q
  1. . .D MES^XPDUTL("TaskMan run to populate 'APRV' index for EC*2.0*95 was not started.")
  1. . .D MES^XPDUTL("Re-run Post Install routine POST1^EC20P95.")
  1. . D MES^XPDUTL("Task "_ZTSK_" started to populate 'APRV' index.")
  1. . I $D(ZTSK("D")) D
  1. . . D MES^XPDUTL("Task will start at "_$$HTE^XLFDT(ZTSK("D")))
  1. D MES^XPDUTL("*****")
  1. Q
  1. ;
  1. BLDIDX ;BUILD 'APRV' INDEX
  1. N DA,DIK
  1. N ECMSG ;error/stop messages
  1. N ECSTIME ;start time
  1. N ECCNT ;record counter
  1. N ECQUIT ;task stop flag
  1. ;
  1. S ECQUIT=0
  1. S ECCNT=0
  1. S ECMSG=""
  1. S ECSTIME=$$NOW^XLFDT()
  1. S DA(1)=0
  1. F S DA(1)=$O(^ECH(DA(1))) Q:'DA(1)!(ECQUIT) D
  1. . S ECCNT=ECCNT+1
  1. . S DIK="^ECH(DA(1),""PRV"","
  1. . S DIK(1)=".01^APRV"
  1. . D ENALL^DIK
  1. . I ECCNT#1000,$$S^%ZTLOAD D Q
  1. . . S ECMSG=2
  1. . . S ECMSG(1)="Patch EC*2.0*95 'APRV' Re-index Task Stopped by User"
  1. . . S ECMSG(2)="Re-run Post Install routine POST1^EC20P95."
  1. . . S (ZTSTOP,ECQUIT)=1
  1. D NOTIFY(ECSTIME,.ECMSG)
  1. Q
  1. ;
  1. NOTIFY(ECSTIME,ECMESS) ;send job msg
  1. ;
  1. ; Input
  1. ; ECSTIME - job start date/time
  1. ; ECMESS - free text message array for task stop or errors passed
  1. ; by reference
  1. ;
  1. ; Output
  1. ; none
  1. ;
  1. N DIFROM,XMDUZ,XMSUB,XMTEXT,XMY,XMZ
  1. N ECSITE,ECETIME,ECTEXT,ECI
  1. S ECSITE=$$SITE^VASITE
  1. S ECETIME=$$NOW^XLFDT
  1. S XMDUZ="'APRV' RE-INDEX"
  1. S XMSUB="Patch EC*2.0*95 ECS FY08 Enhancements"
  1. S XMTEXT="ECTEXT("
  1. S XMY(DUZ)=""
  1. S ECTEXT(1)=""
  1. S ECTEXT(2)=" Facility Name: "_$P(ECSITE,U,2)
  1. S ECTEXT(3)=" Station Number: "_$P(ECSITE,U,3)
  1. S ECTEXT(4)=""
  1. S ECTEXT(5)=" Date/Time job started: "_$$FMTE^XLFDT(ECSTIME)
  1. S ECTEXT(6)=" Date/Time job stopped: "_$$FMTE^XLFDT(ECETIME)
  1. S ECTEXT(7)=""
  1. I $G(ECMESS) D
  1. . F ECI=1:1:ECMESS D
  1. . . S ECTEXT(7+ECI)="*** "_$E($G(ECMESS(ECI)),1,65)
  1. I '$G(ECMESS) D
  1. . S ECTEXT(8)="'APRV' Index Populated Successfully"
  1. D ^XMD
  1. Q