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

BCHPOST.m

Go to the documentation of this file.
  1. BCHPOST ; IHS/CMI/LAB - POST INIT ROUTINE ;
  1. ;;2.0;IHS RPMS CHR SYSTEM;;OCT 23, 2012;Build 27
  1. ;
  1. ENV ;EP;
  1. ; The following line prevents the "Disable Options..." and "Move
  1. ; Routines..." questions from being asked during the install.
  1. F X="XPM1","XPO1","XPZ1","XPZ2","XPI1" S XPDDIQ(X)=0
  1. I +$$VERSION^XPDUTL("XU")<8 D MES^XPDUTL($$CJ^XLFSTR("Version 8.0 of KERNEL is required. Not installed",80)) D SORRY(2) I 1
  1. E D MES^XPDUTL($$CJ^XLFSTR("Requires Kernel Version 8.0....Present.",80))
  1. I +$$VERSION^XPDUTL("DI")<22 D MES^XPDUTL($$CJ^XLFSTR("Version 22.0 of FILEMAN is required. Not installed.",80)) D SORRY(2) I 1
  1. E D MES^XPDUTL($$CJ^XLFSTR("Requires Fileman v22....Present.",80))
  1. ;I '$$INSTALLD("ACM*2.0*6") D SORRY(2)
  1. Q
  1. PRE ;
  1. S DA=0 F S DA=$O(^BCHSORT(DA)) Q:DA'=+DA S DIK="^BCHSORT(" D ^DIK
  1. S DA=0 F S DA=$O(^BCHTCNAR(DA)) Q:DA'=+DA S DIK="^BCHTCNAR(" D ^DIK
  1. SC S DA=$O(^BCHTSERV("B","OTHER EDUCATION",0))
  1. I DA S DIE="^BCHTSERV(",DR=".01///PROVIDE STAFF TRAINING;.03///ST" D ^DIE K DA,DR,DIE
  1. ;S DIU=90002.01,DIU(0)="S" D EN^DIU2
  1. Q
  1. PWH ;create CHR type PWH
  1. NEW BCHX,BCHC,BCHHTX,BCHTEXT,BCHFDA,BCHER,BCHERRR,FL,BCHIENS
  1. S X="CHR PWH",DIC="^APCHPWHT(",DIC(0)="L",DIADD=1,DLAYGO=9001026 D FILE^DICN K DIADD,DLAYGO,DIC
  1. I Y=-1 D MES^XPDUTL("UNABLE TO CREATE PWH TYPE - NOTIFY PROGRAMMER") Q
  1. S BCHY=+Y
  1. S BCHTEXT="PWHC" F BCHX=1:1 S BCHTX=$P($T(@BCHTEXT+BCHX),";;",2,4) Q:BCHTX="" D
  1. .S BCHO=$P(BCHTX,";;",1),BCHC=$P(BCHTX,";;",2)
  1. . S DA(1)=BCHY,X=BCHO,DINUM=X
  1. . S DIC="^APCHPWHT("_DA(1)_",1,"
  1. . S DIC(0)="L"
  1. . S DIC("P")=$P(^DD(9001026,1,0),U,2)
  1. . S DIC("DR")=".03///"_$P(BCHTX,";;",3)_";1////"_$O(^APCHPWHC("B",BCHC,0))
  1. . D ^DIC
  1. . I Y=-1 D MES^XPDUTL("ERROR CREATING PWH - NOTIFY PROGRAMMER") Q
  1. . Q
  1. K DINUM,DIC,DIADD,DLAYGO
  1. Q
  1. POST ;
  1. ;
  1. I '$O(^APCHPWHT("B","CHR PWH",0)) D PWH
  1. ;move referral data into the multiples
  1. S BCHR=0 F S BCHR=$O(^BCHR(BCHR)) Q:BCHR'=+BCHR D
  1. .Q:'$D(^BCHR(BCHR,0))
  1. .S BCHRT=$P(^BCHR(BCHR,0),U,7)
  1. .I BCHRT D
  1. ..Q:$D(^BCHR(BCHR,41,0)) ;already has multiple
  1. ..S ^BCHR(BCHR,41,0)="^90002.141PA^1^1"
  1. ..S ^BCHR(BCHR,41,1,0)=BCHRT
  1. ..S ^BCHR(BCHR,41,"B",BCHRT,1)=""
  1. .S BCHRT=$P(^BCHR(BCHR,0),U,8)
  1. .I BCHRT D
  1. ..Q:$D(^BCHR(BCHR,42,0)) ;already has multiple
  1. ..S ^BCHR(BCHR,42,0)="^90002.142PA^1^1"
  1. ..S ^BCHR(BCHR,42,1,0)=BCHRT
  1. ..S ^BCHR(BCHR,42,"B",BCHRT,1)=""
  1. ;K ^DD(90002.01,0,"ID")
  1. ; REINDEX C XREF OF CHR TEMP GROUP FILE
  1. S DIK="^BCHGROUP(" D IXALL^DIK
  1. ;set up zish send parameters
  1. D ZISH
  1. Q
  1. ;
  1. ;
  1. ZISH ;create entry in ZISH SEND PARAMETERS file
  1. D ^XBFMK K DIADD,DLAYGO,DIC,DD,D0,DO
  1. ;Q:$D(^%ZIB(9888888.93,"B","BCHR AUTO SEND"))
  1. S APCLY=0 F S APCLY=$O(^%ZIB(9888888.93,"B","BCHR AUTO SEND",0)) Q:APCLY'=+APCLY D
  1. .I APCLY S DA=APCLY,DIK="^%ZIB(9888888.93," D ^DIK K DA,DIK
  1. S X="BCHR AUTO SEND",DIC(0)="L",DIC="^%ZIB(9888888.93," D FILE^DICN
  1. I Y=-1 W !!,"error creating ZISH SEND PARAMETERS entry" Q
  1. S DA=+Y,DIE="^%ZIB(9888888.93,",DR=".02///QUOVADX-IE.IHS.GOV;.03///ihpesusr;.04///g2dwy66b;.06///-u;.07///B;.08///sendto"
  1. D ^DIE
  1. I $D(Y) W !!,"error updating ZISH SEND PARAMETERS entry" Q
  1. Q
  1. ;
  1. INSTALLD(BCHSTAL) ;EP - Determine if patch BCHSTAL was installed, where
  1. ; BCHSTAL is the name of the INSTALL. E.g "AG*6.0*11".
  1. NEW BCHY,DIC,X,Y
  1. S X=$P(BCHSTAL,"*",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(BCHSTAL,"*",2)
  1. D ^DIC
  1. I Y<1 D IMES Q 0
  1. S DIC=DIC_+Y_",""PAH"",",X=$P(BCHSTAL,"*",3)
  1. D ^DIC
  1. S BCHY=Y
  1. D IMES
  1. Q $S(BCHY<1:0,1:1)
  1. IMES ;
  1. D MES^XPDUTL($$CJ^XLFSTR("Patch """_BCHSTAL_""" 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. PWHC ;;
  1. ;;10;;ACTIVITY LEVEL
  1. ;;20;;ALLERGIES;;A
  1. ;;40;;BLOOD PRESSURE
  1. ;;70;;CANCER SCREENING
  1. ;;80;;CHOLESTEROL
  1. ;;90;;DIABETES CARE
  1. ;;50;;HEIGHT/WEIGHT/BMI
  1. ;;60;;IMMUNIZATIONS DUE
  1. ;;30;;MEDICATIONS (ACTIVE ONLY)
  1. ;;100;;PATIENT GOALS