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

BTIUP13.m

Go to the documentation of this file.
  1. BTIUP13 ; IHS/CIA/MGH - ENV CHECK FOR PATCH 1013;24-Mar-2015 15:19;DU
  1. ;;1.0;TEXT INTEGRATION UTILITIES;**1013**;SEPT 04, 2005;Build 33
  1. ;
  1. ENV ;EP environment check
  1. N PATCH,IN,STAT,INSTDA
  1. S (XPDDIQ("XPZ1"),XPDDIQ("XPZ2"))=0
  1. ;
  1. S PATCH="TIU*1.0*1012"
  1. I '$$PATCH(PATCH) D Q
  1. . W !,"You must first install "_PATCH_"." S XPDABORT=1
  1. S PATCH="BJPC*2.0*10"
  1. I '$$PATCH(PATCH) D Q
  1. . W !,"You must first install "_PATCH_"." S XPDABORT=1
  1. S PATCH="ATX*5.1*11"
  1. I '$$PATCH(PATCH) D Q
  1. . W !,"You must first install "_PATCH_"." S XPDABORT=1
  1. Q
  1. PATCH(X) ;return 1 if patch X was installed, X=aaaa*nn.nn*nnnn
  1. ;copy of code from XPDUTL but modified to handle 4 digit IHS patch numbers
  1. Q:X'?1.4UN1"*"1.2N1"."1.2N.1(1"V",1"T").2N1"*"1.4N 0
  1. NEW NUM,I,J
  1. S I=$O(^DIC(9.4,"C",$P(X,"*"),0)) Q:'I 0
  1. S J=$O(^DIC(9.4,I,22,"B",$P(X,"*",2),0)),X=$P(X,"*",3) Q:'J 0
  1. ;check if patch is just a number
  1. Q:$O(^DIC(9.4,I,22,J,"PAH","B",X,0)) 1
  1. S NUM=$O(^DIC(9.4,I,22,J,"PAH","B",X_" SEQ"))
  1. Q (X=+NUM)
  1. ;
  1. PRE ;EP; beginning of pret install code
  1. Q
  1. POST ;EP; beginning of post install code
  1. N DTOUT,DUOUT,TIU,TIUFPRIV,TIUIEN,TIUMSG,TIUPRNT,TIUTMP S TIUFPRIV=1
  1. I $$LOOKUP(8930,"CLINICAL COORDINATOR","X")<0 W !!,"Installation Error: CLASS OWNER cannot be defined." S XPDABORT=1 G EXIT
  1. I $$LOOKUP(8925.1,"RESCINDED ADVANCE DIRECTIVE","X")>0 W !!,"RESCINDED ADVANCE DIRECTIVE already exists." G EXIT
  1. F D Q:TIUPRNT>0!($D(XPDABORT))
  1. . W ! S TIUPRNT=$$LOOKUP(8925.1,,"AEQ","I $P(^(0),U,4)=""DC""","Select TIU DOCUMENT CLASS name for the new title RESCINDED ADVANCE DIRECTIVE: ")
  1. . I $D(DTOUT) W !!,"Installation Aborted due to TIMEOUT." S XPDABORT=1 Q
  1. . I $D(DUOUT) W !!,"Installation Aborted by USER." S XPDABORT=1 Q
  1. . I TIUPRNT<0 W !!,"Installation Error: Invalid Selection",!
  1. . I W !,"A DOCUMENT CLASS must be entered or '^' to abort." Q
  1. . W ! I '$$READ^TIUU("Y","Is this correct","YES") S TIUPRNT=0
  1. I +$G(TIUPRNT)'>0 G EXIT
  1. S TIU(8925.1,"+1,",.01)="RESCINDED ADVANCE DIRECTIVE"
  1. S TIU(8925.1,"+1,",.02)=""
  1. S TIU(8925.1,"+1,",.03)="RESCINDED ADVANCE DIRECTIVE"
  1. S TIU(8925.1,"+1,",.04)="DOC"
  1. S TIU(8925.1,"+1,",.05)=""
  1. S TIU(8925.1,"+1,",.06)=$$LOOKUP(8930,"CLINICAL COORDINATOR")
  1. S TIU(8925.1,"+1,",.07)=13
  1. S TIU(8925.1,"+1,",3.02)=1
  1. S TIU(8925.1,"+1,",99)=$H
  1. W !!,"Creating RESCINDED ADVANCE DIRECTIVE title..."
  1. D UPDATE^DIE("","TIU","TIUIEN","TIUMSG")
  1. I $D(TIUMSG) D S XPDABORT=1 G EXIT
  1. . W !!,"The following error message was returned:",!
  1. . S TIUMSG="" F S TIUMSG=$O(TIUMSG("DIERR",1,"TEXT",TIUMSG)) Q:TIUMSG="" W !,TIUMSG("DIERR",1,"TEXT",TIUMSG)
  1. W "DONE."
  1. S TIU(8925.14,"+2,"_TIUPRNT_",",.01)=TIUIEN(1)
  1. S TIU(8925.14,"+2,"_TIUPRNT_",",4)="Recinded Advance Directive"
  1. W !!,"Adding "_$P(^TIU(8925.1,TIUPRNT,0),U)_" as parent..."
  1. D UPDATE^DIE("","TIU","TIUIEN","TIUMSG")
  1. I $D(TIUMSG) D S XPDABORT=1 G EXIT
  1. . W !!,"The following error message was returned:",!
  1. . S TIUMSG="" F S TIUMSG=$O(TIUMSG("DIERR",1,"TEXT",TIUMSG)) Q:TIUMSG="" W !,TIUMSG("DIERR",1,"TEXT",TIUMSG)
  1. W "DONE.",!
  1. S TIUIEN(TIUIEN(1))=TIUIEN(1)
  1. S TIU(8925.1,TIUIEN(1)_",",3)="TIUTMP"
  1. I $D(TIUMSG) D S XPDABORT=1 G EXIT
  1. . W !!,"The following error message was returned:",!
  1. . S TIUMSG="" F S TIUMSG=$O(TIUMSG("DIERR",1,"TEXT",TIUMSG)) Q:TIUMSG="" W !,TIUMSG("DIERR",1,"TEXT",TIUMSG)
  1. W "DONE.",!
  1. W !,"*** The RESCINDED ADVANCE DIRECTIVE***"
  1. W !,"*** title must be activated before use. ***"
  1. EXIT D
  1. .N DIR,X,Y S DIR(0)="E" W ! D ^DIR
  1. Q
  1. REM ;
  1. N TIUTMP
  1. S TIUTMP=$$LOOKUP(8925.1,"RESCINDED ADVANCE DIRECTIVE")
  1. I TIUTMP>0 S $P(^TIU(8925.1,TIUTMP,0),U,13)=0
  1. Q
  1. LOOKUP(FILE,NAME,TYPE,SCREEN,PROMPT) ;
  1. ; file = file # to perform lookup on
  1. ; [name] = for instance lookups - required if type is missing
  1. ; [type] = for inquiries to file (eg: "AEQ") - required if name is missing
  1. ; [screen] = screen for lookup/inquiries
  1. ; [prompt] = replace default prompt
  1. ;
  1. N DIC,X,Y S DIC=$G(FILE),DIC("S")=$G(SCREEN),X=$G(NAME)
  1. I $D(TYPE) S DIC(0)=TYPE
  1. I $D(PROMPT) S DIC("A")=PROMPT
  1. D ^DIC
  1. Q +Y
  1. Q
  1. ;