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

GMTSPI98.m

Go to the documentation of this file.
  1. GMTSPI98 ;SLC/WAT - Post Install GMTS*2.7*98 ;03/02/17 11:13
  1. ;;2.7;Health Summary;**98**;Oct 20, 1995;Build 88
  1. ;;
  1. ;INTEGRATION CONTROL REGISTRATION
  1. ;UPDATE^DIE #2053
  1. ;FIND1^DIC #3217
  1. ;FIND^DIC #2051
  1. ;MES and $$PATCH^XPDUTL #10141
  1. ;^PXRMEXSI #4371
  1. ;READ OF REMINDER EXCHANGE FILE ^PXD(811.8 #4586
  1. ;;ENV CHECK - ensure IENs are empty before proceeding
  1. D BMES^XPDUTL(" Verifying installation environment...")
  1. N GMTSABRT,GMTSRIEN,FLG18,FLG19 S (GMTSABRT,FLG18,FLG19)=0
  1. I $$PATCH^XPDUTL("GMTS*2.7*98") D Q
  1. . ;ensure types are at correct IEN.
  1. . I +$O(^GMT(142,"B","REMOTE HT CLINICAL REMINDERS",""))=5000018 S FLG18=1
  1. . I +$O(^GMT(142,"B","REMOTE HT TRACKING",""))=5000019 S FLG19=1
  1. . I FLG18&(FLG19) D BMES^XPDUTL(" Verification complete; environment check passed ") Q
  1. . I 'FLG18 D MSG(5000018) S GMTSABRT=1
  1. . I 'FLG19 D MSG(5000019) S GMTSABRT=1
  1. . I GMTSABRT D BMES^XPDUTL("Please re-install HT TEMPLATES PROJECT 1.0 when necessary changes are complete.") S XPDABORT=1 Q
  1. F GMTSRIEN=5000018,5000019 D
  1. .I $D(^GMT(142,GMTSRIEN)) D
  1. ..D MSG(GMTSRIEN) S GMTSABRT=1
  1. ..I +$G(GMTSABRT) D BMES^XPDUTL("Please re-install HT TEMPLATES PROJECT 1.0 when necessary changes are complete.") S XPDABORT=1 Q
  1. D:+$G(GMTSABRT)=0 BMES^XPDUTL(" Verification complete; environment check passed ")
  1. Q
  1. ;
  1. MSG(IEN) ;abort message to screen
  1. D BMES^XPDUTL("!!! INSTALL ABORT !!!")
  1. D MES^XPDUTL("HEALTH SUMMARY TYPE IEN ***"_$G(IEN)_"*** is occupied.")
  1. D MES^XPDUTL("This IEN is reserved for National REMOTE HEALTH SUMMARY TYPES and is expected")
  1. D MES^XPDUTL("to be undefined so that GMTS*2.7*98 may install a new entry in that location.")
  1. D MES^XPDUTL("Please DO NOT delete the file entry at "_$G(IEN))
  1. D BMES^XPDUTL("Please DO contact the National Help Desk at 1-888-596-4357 and request")
  1. D MES^XPDUTL("a help desk ticket be created to the NTL SUP Clin 1 team.")
  1. Q
  1. ;
  1. PRE ;housekeeping
  1. D DELEXE^PXRMEXSI("EXARRAY","GMTSPI98")
  1. D INSTUB
  1. Q
  1. ;
  1. POST ;post
  1. D SMEXINS^PXRMEXSI("EXARRAY","GMTSPI98")
  1. D GMTSET
  1. Q
  1. ;
  1. GMTSET ;reset ^GMT(142,0) to last low IEN
  1. N IEN,LIEN
  1. S IEN=0 F S IEN=$O(^GMT(142,IEN)) D Q:IEN'>0!(IEN=5000001)
  1. .I IEN<5000000 S LIEN=IEN
  1. I +$G(LIEN)>0 S $P(^GMT(142,0),U,3)=LIEN
  1. Q
  1. EXARRAY(MODE,ARRAY) ;List of exchange entries used by delete and install
  1. ;MODE values: I for include in build, A for include action.
  1. N LN
  1. S LN=0
  1. ;
  1. S LN=LN+1
  1. S ARRAY(LN,1)="VA-HT REMOTE HEALTH SUMMARY TYPES"
  1. I MODE["I" S ARRAY(LN,2)="02/15/2017@06:55:47"
  1. I MODE["A" S ARRAY(LN,3)="O"
  1. Q
  1. ;
  1. INSTUB ; create stubs for REMOTE types
  1. ;if already there, no need for stubs - rem exch will overwrite existing entries so always left with current
  1. ;ensure IENs are empty before adding new stubs
  1. I +$O(^GMT(142,"B","REMOTE HT CLINICAL REMINDERS",""))=5000018,+$O(^GMT(142,"B","REMOTE HT TRACKING",""))=5000019 Q
  1. N FDA,MSG,HSIEN
  1. I $D(^GMT(142,5000018,0))=0 D
  1. .S FDA(1,142,"+1,",.01)="REMOTE HT CLINICAL REMINDERS"
  1. .S HSIEN(1)=5000018
  1. .D UPDATE^DIE("S","FDA(1)","HSIEN","MSG")
  1. I $D(^GMT(142,5000019,0))=0 D
  1. .S FDA(1,142,"+1,",.01)="REMOTE HT TRACKING"
  1. .S HSIEN(1)=5000019
  1. .D UPDATE^DIE("","FDA(1)","HSIEN","MSG")
  1. .I $D(MSG)>0 D AWRITE("MSG")
  1. Q
  1. ;
  1. AWRITE(REF) ;Write all the descendants of the array reference.
  1. ;REF is the starting array reference, for example A or ^TMP("PXRM",$J).
  1. ;coied from PXRMUTIL
  1. N DONE,IND,LEN,LN,PROOT,ROOT,START,TEMP,TEXT
  1. I REF="" Q
  1. S LN=0
  1. S PROOT=$P(REF,")",1)
  1. ;Build the root so we can tell when we are done.
  1. S TEMP=$NA(@REF)
  1. S ROOT=$P(TEMP,")",1)
  1. S REF=$Q(@REF)
  1. I REF'[ROOT Q
  1. S DONE=0
  1. F Q:(REF="")!(DONE) D
  1. . S START=$F(REF,ROOT)
  1. . S LEN=$L(REF)
  1. . S IND=$E(REF,START,LEN)
  1. . S LN=LN+1,TEXT(LN)=PROOT_IND_"="_@REF
  1. . S REF=$Q(@REF)
  1. . I REF'[ROOT S DONE=1
  1. D MES^XPDUTL(.TEXT)
  1. Q
  1. ;