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

BUD4ENV.m

Go to the documentation of this file.
  1. BUD4ENV ; IHS/CMI/LAB - environmental check ;
  1. ;;10.0;IHS/RPMS UNIFORM DATA SYSTEM;;FEB 04, 2016;Build 50
  1. ;
  1. ENV ;
  1. ; The following line prevents the "Disable Options..." and "Move
  1. ; Routines..." questions from being asked during the install.
  1. I $G(XPDENV)=1 S (XPDDIQ("XPZ1"),XPDDIQ("XPZ2"))=0
  1. I '$$INSTALLD("BGP*9.0*1") D SORRY(2)
  1. I $$VERSION^XPDUTL("BJPC")'="2.0" W !,"version 2.0 of BJPC is required" D SORRY(2)
  1. Q
  1. ;
  1. ;
  1. PRE ;
  1. F DA=1:1:50 S DIK="^BUDFCNTL(" D ^DIK
  1. F DA=1:1:50 S DIK="^BUDFIL(" D ^DIK
  1. F DA=1:1:50 S DIK="^BUDFFIV(" D ^DIK
  1. F DA=1:1:50 S DIK="^BUDFTTA(" D ^DIK
  1. Q
  1. POST ;
  1. ;move site parameters from 03 to 04 on first time install only
  1. I '$O(^BUDFSITE(0)) D
  1. .S BUDX=0 F S BUDX=$O(^BUDFSITE(BUDX)) Q:BUDX'=+BUDX D
  1. ..M ^BUDFSITE(BUDX)=^BUDFSITE(BUDX)
  1. ..S DA=BUDX,DIK="^BUDFSITE(" D IX1^DIK
  1. D ^BUDTX
  1. D ^BUD4TX
  1. LAB ;
  1. S BUDX="BUD PAP SMEAR TAX" D LAB1
  1. S BUDX="BUD HIV TEST TAX" D LAB1
  1. D SETTAX
  1. D SETTAXL
  1. Q
  1. LAB1 ;
  1. W !,"Creating ",BUDX," Taxonomy..."
  1. S BUDDA=$O(^ATXLAB("B",BUDX,0))
  1. Q:BUDDA ;taxonomy already exisits
  1. S X=BUDX,DIC="^ATXLAB(",DIC(0)="L",DIADD=1,DLAYGO=9002228 D ^DIC K DIC,DA,DIADD,DLAYGO,I
  1. I Y=-1 W !!,"ERROR IN CREATING ",BUDX," TAX" Q
  1. S BUDTX=+Y,$P(^ATXLAB(BUDTX,0),U,2)=BUDX,$P(^(0),U,5)=DUZ,$P(^(0),U,6)=DT,$P(^(0),U,8)="B",$P(^(0),U,9)=60,^ATXLAB(BUDTX,21,0)="^9002228.02101PA^0^0"
  1. S DA=BUDTX,DIK="^ATXAX(" D IX1^DIK
  1. Q
  1. SETTAX ;
  1. Q:'$D(^DD(9002226,4101,0)) ;taxonomy patch not yet installed
  1. S BUDTEXT="TAX" F BUDX=1:1 S BUDDATA=$P($T(@BUDTEXT+BUDX),";;",2) Q:BUDDATA="" D
  1. .S BUDDA=$O(^ATXAX("B",$P(BUDDATA,"|"),0))
  1. .Q:BUDDA=""
  1. .S $P(^ATXAX(BUDDA,0),U,4)="n" W !,$P(BUDDATA,"|") ;SET NO DELETE
  1. .S $P(^ATXAX(BUDDA,0),U,22)=$P(BUDDATA,"|",2) ;set read only
  1. .;set packages in multiple
  1. .K DIC,DA,DR
  1. .S BUDP=$P(BUDDATA,"|",3)
  1. .F BUDN=1:1 S BUDPP=$P(BUDP,"*",BUDN) Q:BUDPP="" D
  1. ..S BUDPI=$O(^DIC(9.4,"C",BUDPP,0))
  1. ..Q:BUDPI="" ;NO PACKAGE
  1. ..S X="`"_BUDPI,DIC="^ATXAX("_BUDDA_",41,",DIC(0)="L",DIC("P")=$P(^DD(9002226,4101,0),U,2),DA(1)=BUDDA
  1. ..D ^DIC
  1. ..I Y=-1 W !,"updating package multiple for ",BUDPP," entry ",$P(^ATXAX(BUDDA,0),U)," failed"
  1. ..K DIC,DA,Y,X
  1. .Q
  1. Q
  1. SETTAXL ;
  1. Q:'$D(^DD(9002228,4101,0)) ;taxonomy patch not yet installed
  1. S BUDTEXT="LABTAX" F BUDX=1:1 S BUDDATA=$P($T(@BUDTEXT+BUDX),";;",2) Q:BUDDATA="" D
  1. .S BUDDA=$O(^ATXLAB("B",$P(BUDDATA,"|"),0))
  1. .Q:BUDDA=""
  1. .S $P(^ATXLAB(BUDDA,0),U,4)="n" W !,$P(BUDDATA,"|") ;SET NO DELETE
  1. .S $P(^ATXLAB(BUDDA,0),U,22)=$P(BUDDATA,"|",2) ;set read only
  1. .;set packages in multiple
  1. .K DIC,DA,DR
  1. .S BUDP=$P(BUDDATA,"|",3)
  1. .F BUDN=1:1 S BUDPP=$P(BUDP,"*",BUDN) Q:BUDPP="" D
  1. ..S BUDPI=$O(^DIC(9.4,"C",BUDPP,0))
  1. ..Q:BUDPI="" ;NO PACKAGE
  1. ..S X="`"_BUDPI,DIC="^ATXLAB("_BUDDA_",41,",DIC(0)="L",DIC("P")=$P(^DD(9002228,4101,0),U,2),DA(1)=BUDDA
  1. ..D ^DIC
  1. ..I Y=-1 W !,"updating package multiple for ",BUDPP," entry ",$P(^ATXLAB(BUDDA,0),U)," failed"
  1. ..K DIC,DA,Y,X
  1. .Q
  1. Q
  1. INSTALLD(BUDSTAL) ;EP - Determine if patch BUDSTAL was installed, where
  1. ; BUDSTAL is the name of the INSTALL. E.g "AG*6.0*11".
  1. ;
  1. NEW BUDY,DIC,X,Y
  1. S X=$P(BUDSTAL,"*",1)
  1. S DIC="^DIC(9.4,",DIC(0)="FM",D="C"
  1. D IX^DIC
  1. I Y<1 D IMES Q 0
  1. S DIC=DIC_+Y_",22,",X=$P(BUDSTAL,"*",2)
  1. D ^DIC
  1. I Y<1 D IMES Q 0
  1. S DIC=DIC_+Y_",""PAH"",",X=$P(BUDSTAL,"*",3)
  1. D ^DIC
  1. S BUDY=Y
  1. D IMES
  1. Q $S(BUDY<1:0,1:1)
  1. IMES ;
  1. D MES^XPDUTL($$CJ^XLFSTR("Patch """_BUDSTAL_""" is"_$S(Y<1:" *NOT*",1:"")_" installed.",IOM))
  1. Q
  1. SORRY(X) ;
  1. KILL DIFQ
  1. I X=3 S XPDQUIT=2 Q
  1. S XPDQUIT=X
  1. W *7,!,$$CJ^XLFSTR("Sorry....FIX IT!",IOM)
  1. Q
  1. Q
  1. LABTAX ;
  1. ;;BUD HIV TEST TAX|0|BUD
  1. ;;BUD PAP SMEAR TAX|0|BUD
  1. ;;
  1. TAX ;
  1. ;;BUD CPT HIV TESTS|1|BUD
  1. ;;BUD CPT PAP 04|1|BUD
  1. ;;BUD HIV TEST LOINC CODES|1|BUD
  1. ;;BUD PAP LOINC CODES|1|BUD
  1. ;;BUD IMM CPTS|1|BUD
  1. ;;BUD L26 CPTS|1|BUD
  1. ;;