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

VENPCCQ6.m

Go to the documentation of this file.
  1. VENPCCQ6 ; IHS/OIT/GIS - POSTINIT KIDS SUPPORT ROUTINE ; [ 03/31/09 5:36 PM ]
  1. ;;2.6;PCC+;**1,4,5**;APR 03, 2012;Build 19
  1. ;
  1. ;
  1. POSTINIT ; POST INIT ROUTINE
  1. N MODE,OK,X,Y,Z,%,BUILD,ERR,BIEN,MP,MPIEN,DIC,DIE,DA,DR,DLAYGO,D0,V,KIEN,KEY,OPT,BOIEN
  1. S BUILD="PCC+*2.6*5"
  1. S OK=0,ERR=0
  1. W !!!?15,"***** WCM POST-INITIALIZATION PROCEDURES *****",!!
  1. W ?5,"Continuing installation of content",!!
  1. KB ; ADD ANY MISSING ENTRIES TO THE KB
  1. D ^VEN8INIT ; REBUILD THE REFERENCE KNOWLEDGEBASE
  1. W !!,"Updating the Knowledgebase..."
  1. D KBM^VENPCCQ7(1,5170,.ERR) ; REBUILD THE KNOWLEDGEBASE RETAINING EXISTING SETTINGS FOR ACTIVE/INACTIVE STATUS
  1. I ERR D Q ; KB UPDATE FAILED
  1. . W !?5,"Knowledgebase installation failed. Installation terminated"
  1. . S X="WCM installation failed. Contact the OIT Help Desk for assistance"
  1. . D BOX(X)
  1. . Q
  1. W !?5,"Knowledgebase installed successfully!"
  1. PE ; REFRESH PATIENT ED TOPICS
  1. W !!,"Updating the Patient Education topics..."
  1. D TOPIC^VENPCCKB ; UPDATE EDUCATION TOPIC FILE
  1. W " < Content updated successfully!"
  1. HS ; REFRESH HEALTH SUMMARY COMPONENTS
  1. S OK=0,MPIEN=""
  1. W !!,"Updating Health Summary Components..."
  1. D MP(.MPIEN) ; GET ASQ MEASUREMENT PANEL
  1. I 'MPIEN D G HSX
  1. . W !?5,"Health Summary Measurement Panel 'ASQ DEVELOPMENT SCORES' is missing!"
  1. . S ERR=1,OK=0
  1. . Q
  1. D WCEC(.OK)
  1. I OK D G HSX
  1. . W !?5,"The Health Summary Component 'WELL CHILD EXAM' is missing!"
  1. . S ERR=1,OK=0
  1. . Q
  1. D HST(.OK)
  1. I OK S OK=0,ERR=1 W !?5,"The Health Summart Type 'WELL CHILD EXAM' is missing!"
  1. E W " < All components have been installed"
  1. HSX ; END HS UPDATE
  1. GETMODE ; GET MODALITY
  1. D MODE(.MODE)
  1. I 'MODE,'$G(VFLAG) D Q ; IF MODE IS UNDEFINED, ABORT THE INSTALLATION
  1. . W !!,"The installation of the WCM has been terminated prematurely"
  1. . W !?5,"Please reinstall the build later..."
  1. . W !?5,"Press <Enter> to exit this option"
  1. . I $$STOP
  1. . Q
  1. I 'MODE,$G(VFLAG) D Q ; IF MODE IS UNDEFINED, ABORT VALIDATION
  1. . W !!,"The VALIDATION of the WCM has been terminated prematurely"
  1. . W !?5,"Press <Enter> to exit this option"
  1. . I $$STOP
  1. . Q
  1. ;
  1. D INTRO
  1. BUILD ; VERIFY CURRENT KIDS BUILD
  1. W !!,"Checking KIDS build '",BUILD,"'..."
  1. S BIEN=$O(^XPD(9.6,"B",BUILD,0))
  1. I 'BIEN W !,"Unable to locate the KIDS build for this package! Validation terminated..." Q
  1. W " < Validated"
  1. I $$STOP S OK=2 G CSCX
  1. I MODE=2 G VAL ; TRADITIONAL PCC+ MODE - NO NEED FOR CIA OBJECTS OR BMX BROKER
  1. ;
  1. CIAOBJ ; UPDATE THE VUECENTRIC REGISTERED OBJECTS FILE
  1. S OK=0
  1. W !,"Registering the Vucentric Objects..."
  1. I '$D(^CIAVOBJ(19930.2)) G BMX
  1. D CKVOBJ^VENPCCQ7("PCC+ 2.6",.OK)
  1. I 'OK W " < All OBJECTS have been registered"
  1. I $$STOP S OK=2 G CSCX
  1. ;
  1. BMX ; CHECK BMX 4.0
  1. S OK=0 D BMX^VENPCCQ8(.OK) I OK S ERR=1
  1. I $$STOP S OK=2 G CSCX
  1. ;
  1. VAL ; EP - VALIDATE THE WCM
  1. S OK=0
  1. D VALIDATE^VENPCCQ8(BIEN,MODE,.OK,.ERR)
  1. I $G(OK)=2 G CSCX
  1. CFG ; EP - CONFIGURE THE WCM
  1. W !,"Now we are ready to CONFIGURE the Well Child Module..."
  1. I $$STOP S OK=2 G CSCX
  1. ;
  1. BOPT ; CHECK VEN RPC BROKER OPTION PLACEMENT
  1. S OK=0
  1. W !!,"Assign the broker option VEN RPC to end users..."
  1. D BOPT^VENPCCQ8(.OK)
  1. I OK S ERR=1,OK=0
  1. I $$STOP S OK=2 G CSCX
  1. ;
  1. KEYS ; ASSIGN KEYS TO USERS
  1. AKEY W !!,"Assign the key VENZMGUI to selected IT personnel and supervisors..."
  1. D HOLD^VENPCCQ7("VENZMGUI^VENZDESKTOP^VENZKBEDIT","M")
  1. DESKTOP W !!,"Assign user privileges for the WCM Desktop GUI components..."
  1. D HOLD^VENPCCQ7("VENZDESKTOP","U")
  1. KBP W !!,"Assign user privileges for the WCM Knowledgebase Management components..."
  1. D HOLD^VENPCCQ7("VENZKBEDIT","U")
  1. ;
  1. BROKER I MODE=3 D I OK=2!($G(ERR)) G CSCX
  1. . D BROKER^VENPCCQ8 ; CONFIGURE BMX BROKER LISTENER
  1. . I $$STOP S OK=2
  1. . Q
  1. ;
  1. DOM W ! D ACT^VENPCCQ7 ; MAKE SURE THAT THE CURRENT SET OF KB DOMAINS IS ACTIVE
  1. I $$STOP S OK=2 G CSCX
  1. ;
  1. MO ; INSTALL GUI MANAGEMENT OPTIONS
  1. S OK=0
  1. W !!,"Configuring the GUI management menu option (VEN_GUIMENU)..." ; ASSIGN GUI MANAGERS OPTION
  1. S Z=$O(^DIC(19,"B","VEN WCM_MENU",999999999),-1)
  1. I 'Z W !?5,"VEN WCM_MENU has not been installed!!" S OK=1,ERR=1 G CSCX
  1. S Y=$O(^DIC(19,"B","VEN WCM START OR STOP BROKER",999999999),-1)
  1. I Y,$D(^DIC(19,Z,10,"B",Y)) W " < Done!" G MO1 ; IT'S ALREADY CONFIGURED
  1. D MM(.OK,Z) I OK S ERR=1 W !?5,"Option configuration failed!" S ERR=1 G CSCX
  1. W !,"The WCM GUI managers menu (VEN WCM_MENU) has been configured"
  1. W !?5,"It is available to all users that hold the VENZMGUI key."
  1. W !?5,"If you have not already done so, place this option on a "
  1. W !?5,"convenient site manager's menu; e.g.,AKMOEVE"
  1. I $$STOP S OK=2 G CSCX
  1. MO1 I MODE'=1 G CSCX
  1. ;
  1. PATH ; GET THE PATH TO DLLS ON THE EHR SERVER
  1. G CSCX ; PATH INSTRUCTIONS NOT NEEDED IN PATCH 5. NO DLLS IN THIS PATCH
  1. ;
  1. W ! D PATH^VENPCCQ7(.PATH)
  1. I PATH="" G CSCX
  1. W !!,"After the KIDS installation has been successfully completed, you will"
  1. W !,"run 'ven_0260.01t_WcmEhr_Setup.exe' to load the WCM dlls on the EHR"
  1. W !,"server. During this process you will be asked to enter the PATH to the"
  1. W !,"folder where the dlls are stored. Use the following path:"
  1. W !!?10,PATH,!!
  1. I $$STOP S OK=2 G CSCX
  1. ;
  1. CSCX ; FINISH UP
  1. I $G(ERR) W !!,"The Well Child GUI validation process detected at least one problem",! S X="Please take corrective action and reinstall this patch." G EXITMSG
  1. I $G(OK)=2 W !!,"The validation process was terminated prematurely!" S X="Please complete the validation at a later time" G EXITMSG
  1. SUCCESS S X="Congratulations! The Well Child Module is CONFIGURED and ready for use"
  1. EXITMSG D BOX(X)
  1. I $$STOP
  1. D ^XBFMK
  1. Q
  1. ;
  1. MM(OK,MIEN) ; EP - WCM MANAGER'S MENU
  1. S OK=0
  1. I $G(MIEN)
  1. E Q
  1. N X,Y,Z,%,DIC,DIE,DA,DR,DLAYGO,OPT,OARR,OIEN,ORD,TAG,CNT,REF,D0
  1. S OPT="",CNT=0
  1. OARR F S OPT=$O(^XPD(9.6,BIEN,"KRN",19,"NM","B",OPT)) Q:OPT="" D ; BUILD ARRAY OF MENU ITEMS
  1. . I OPT'["VEN WCM " Q ; BYPASS PRIMARY MENU
  1. . S OIEN=$O(^DIC(19,"B",OPT,99999999),-1) I 'OIEN S OK=1 Q
  1. . S TAG=$S(OPT["ACTIVATE":"AD",OPT["CHECK UP":"CKUP",OPT["PLACE":"PB",OPT["START":"SSB",1:"")
  1. . I TAG="" W !,OPT S OK=1 Q
  1. . S CNT=CNT+1
  1. . S OARR(CNT)=OIEN_U_TAG_U_(CNT*10)
  1. . Q
  1. ARR I OK G MMX
  1. S REF=$NA(^DIC(19,MIEN,10)) K @REF ; CLEAN OUT THE MENU ITEMS, THEN REBUILD
  1. S DA(1)=MIEN,DIC="^DIC(19,"_DA(1)_",10,",(DLAYGO,DIC("P"))=19.01,DIC(0)="LO",CNT=0
  1. S DIE=DIC,DR="2////^S X=TAG;3////^S X=ORD"
  1. F S CNT=$O(OARR(CNT)) Q:'CNT D
  1. . S X="`"_(+OARR(CNT)),D0=DA(1)
  1. . D ^DIC I Y=-1 S OK=1 Q
  1. . S DA=+Y,TAG=$P(OARR(CNT),U,2),ORD=$P(OARR(CNT),U,3)
  1. . L +^DIC(19,MIEN,10):1 I D ^DIE L -^DIC(19,MIEN,10)
  1. . Q
  1. MMX D ^XBFMK
  1. Q
  1. ;
  1. STOP() W !,"<>" ; EP - WAIT
  1. R %:DTIME
  1. I %?1."^" Q 1
  1. W $C(13)," ",$C(13)
  1. Q 0
  1. ;
  1. MGRKEY ; EP - OPTION: VEN GUI VALIDATOR
  1. W !!,"Assign the key VENZMGUI to selected IT personnel and supervisors..."
  1. D HOLD^VENPCCQ7("VENZMGUI^VENZDESKTOP^VENZKBEDIT","M")
  1. I $$STOP
  1. Q
  1. ;
  1. DESKKEY ; EP - OPTION: VEN GUI KB MANAGER
  1. W !!,"Assign user privileges for the WCM Desktop GUI components..."
  1. D HOLD^VENPCCQ7("VENZDESKTOP","U")
  1. I $$STOP
  1. Q
  1. ;
  1. KBKEY ; EP - OPTION: VEN GUI DESKTOP KEY
  1. W !!,"Assign user privileges for the WCM Knowledgebase Management components..."
  1. D HOLD^VENPCCQ7("VENZKBEDIT","U")
  1. I $$STOP
  1. Q
  1. ;
  1. MSR ; EP - CHECK MEASUREMENTS
  1. ; FIX ISSUE WITH CIHA CORRUPT DEFINITION OF ASQP
  1. N %
  1. N DIC,DIE,DA,DR,X,Y,Z,DLAYGO,TYPE,IEN,CODE
  1. S (DIC,DIE,DLAYGO)=9999999.07,DIC(0)="LO",DA="",IEN=""
  1. F S DA=$O(^AUTTMSR("B","ASQP",DA)) Q:'DA D
  1. . S TYPE=$P($G(^AUTTMSR(DA,0)),U,2) I TYPE="" Q
  1. . I TYPE="ASQ - PROBLEM SOLVING" S IEN=DA Q
  1. . I TYPE="ASQ PROBLEM SOLVING" D Q ; FIX SITES THAT HAD ALPHA VERSION OF 2.6
  1. .. S TYPE="ZSQ",CODE="00"
  1. .. S DR=".01////^S X=TYPE;.02////^S X=TYPE;.03////^S X=CODE;.04////^S X=1"
  1. .. L +^AUTTMSR(DA):1 I D ^DIE L -^AUTTMSR(DA)
  1. .. Q
  1. . Q
  1. I IEN D ^XBFMK Q
  1. S X="ASQP",TYPE="ASQ - PROBLEM SOLVING",CODE=64
  1. D ^DIC I Y=-1 Q
  1. S DA=+Y,DR=".02////^S X=TYPE;.03////^S X=CODE"
  1. L +^AUTTMSR(DA):1 I D ^DIE L -^AUTTMSR(DA)
  1. D ^XBFMK
  1. Q
  1. ;
  1. PRE ; PRE INSTALL
  1. W !!,"Refreshing the VEN EHP KIDS SUPPORT file",!! ; IHS/OIT/GIS 2/6/2012
  1. N DIK,DA S DA=0,DIK="^VEN(7.26,"
  1. F S DA=$O(^VEN(7.26,DA)) Q:'DA D ^DIK ; REFRESH KIDS SUPPORT FILE
  1. ;
  1. W !!,"Refreshing the VEN EHP ASQ QUESTIONNAIRE file",!!
  1. S DIK="^VEN(7.14,",DA=0 ; IHS/OIT/GIS 2/6/2012
  1. F S DA=$O(^VEN(7.14,DA)) Q:'DA D ^DIK ; REFRESH THE VEN EHP ASQ QUESTIONNAIRE FILE TO FORCE ENTRY OF NEW CUTOFF SCORES
  1. ;
  1. ; Check if alpha site installed as version 2.65 and fix
  1. I $$VERSION^XPDUTL("VEN")=2.65 D
  1. . NEW I
  1. . S I=$O(^DIC(9.4,"C","VEN",0)) S:I'>0 I=$O(^DIC(9.4,"B","VEN",0))
  1. . S VENUPD(9.4,I_",",13)=2.6
  1. . D FILE^DIE("","VENUPD")
  1. . K VENUPD
  1. ;
  1. ; For alpha sites that might have mispellings
  1. NEW TEXT,IEN
  1. F TEXT="IHS.WCM.EHR.ASQ.ASQCOMPONENT","IHS.WCM.EHR.PATIENTED.PATIENTEDCOMPONENT" D
  1. . S IEN=$$FIND1^DIC(19930.2,"","B",TEXT,"","","ERROR")
  1. . I IEN=0 Q
  1. . S VENUPD(19930.2,IEN_",",1)="@"
  1. I $D(VENUPD) D FILE^DIE("","VENUPD")
  1. K VENUPD
  1. Q
  1. ;
  1. CSC265 ; EP - OPTION: VEN WCM MODULE CHECK UP
  1. ; VALIDATE PCC+ 2.6 PATCH 5: WCM GUI
  1. N MODE,OK,X,Y,Z,%,BUILD,ERR,BIEN,MP,MPIEN,DIC,DIE,DA,DR,DLAYGO,D0,V,KIEN,VFLAG,KEY,OPT,BOIEN
  1. S BUILD="PCC+*2.6*5",VFLAG=1
  1. S OK=0,ERR=0
  1. W !!!?10,"***** WCM VALIDATION AND CONFIGURATION PROCEDURES *****",!!
  1. G GETMODE
  1. ;
  1. BOX(X) ; EP - HIGHLIGHT TEXT INSIDE A * BOX
  1. I $G(X)="" Q
  1. I $L(X)>73 Q
  1. N Y,Z,%
  1. S %=$L(X)+1
  1. S Y="",$P(Y," ",%)="",Z="",$P(Z,"*",%+6)=""
  1. S X="* "_X_" *",Y="* "_Y_" *"
  1. W !!!,Z,!,Y,!,X,!,Y,!,Z,!!
  1. Q
  1. ;
  1. MODE(MODE) ; SELECT MODALITY AT THIS SITE
  1. N DIE,DA,X,Y,Z,%
  1. S MODE=""
  1. W !!,"At this site, how will WCM be deployed:"
  1. W !?4,"1. Using the EHR"
  1. W !?4,"2. Using traditional PCC+ paper forms"
  1. W !?4,"3. Using the freestanding, Windows desktop version of the WCM"
  1. S DIR(0)="N^1:3:0",DIR("A")="Deployment mode",DIR("B")="1" KILL DA D ^DIR K DIR
  1. S MODE=Y
  1. Q
  1. ;
  1. INTRO ; EP - MSG TO START THE VALIDATION AND CONFIG PROCESS
  1. S X="The basic content of the WCM has been installed"
  1. I '$G(VFLAG) D BOX(X)
  1. W !!,"Now we will VALIDATE the Well Child Module..."
  1. W !?2,"When you see the <> prompt, press <Enter> to continue or '^' to stop"
  1. W !?2,"Please follow this process to the end"
  1. W !?2,"If you terminate prematurely, you will need to repeat the KIDS install"
  1. W !!
  1. Q
  1. ;
  1. MP(MPIEN) ; MEASUREMENT PANEL
  1. N X,Y,Z,%,MP
  1. S ERR="",MPIEN=""
  1. S MP="ASQ DEVELOPMENT SCORES"
  1. S MPIEN=$O(^APCHSMPN("B",MP,0))
  1. Q
  1. ;
  1. WCEC(ERR) ; WELL CHILD EXAM COMPONENT
  1. S ERR=""
  1. N X,Y,Z,%,DIC,DIE,DA,DR,DLAYGO,TAG
  1. S X="WELL CHILD EXAM",DIC="^APCHSCMP(",DIC(0)="LO",DLAYGO=9001016
  1. D ^DIC I Y=-1 S ERR=1 Q
  1. S DIE=DIC,DA=+Y,DR="1////^S X=TAG;2///NO"
  1. S TAG="WCE;VENPCCQA"
  1. L +^APCHSCMP(DA):1 I D ^DIE L -^APCHSCMP(DA)
  1. Q
  1. HST(OK) ; BUILD 'WELL CHILD EXAM' HEALTH SUMMARY TYPE
  1. S OK=0
  1. N X,Y,Z,%,DIC,DA,DR,DLAYGO,CIEN,CMP,PND,STG,CDA,MO,TL,MPIEN,MDA,PCE,MP
  1. I $O(^APCHSCTL("B","WELL CHILD EXAM",0)) Q ; ITS ALREADY IN THERE
  1. S DIC="^APCHSCTL(",DIC(0)="LO",X="WELL CHILD EXAM",DLAYGO=9001015
  1. D ^DIC I Y=-1 S OK=1 Q
  1. S DA=+Y,DIE=DIC,DR="3////^S X=PND",PND="Y"
  1. L +^APCHSCTL(DA):1 I D ^DIE L -^APCHSCTL(DA)
  1. HCMP S STG="DEMOGRAPHIC DATA^MEASUREMENT PANELS (OUTPATIENT^WELL CHILD EXAM" ; ADD COMPONENTS
  1. F PCE=1,2,3 S CMP=$P(STG,U,PCE),CIEN(PCE)=$O(^APCHSCMP("B",CMP,0))
  1. S DA(1)=DA,DIC="^APCHSCTL("_DA(1)_",1,",(DLAYGO,DIC("P"))=9001015.01,DIC(0)="LO"
  1. F Z=1,2,3 I $G(CIEN(Z)) S X=Z*10 D ^DIC I Y'=-1 S CDA(+Y)=CIEN(Z)
  1. S DIE=DIC,DA=0,MO=5,TL="2Y"
  1. F S DA=$O(CDA(DA)) Q:'DA D
  1. . S CIEN=CDA(DA)
  1. . S DR="1////^S X=CIEN"
  1. . I DA=20 S DR=DR_";2////^S X=MO;3////^S X=TL"
  1. . L +^APCHSCTL(DA(1),1):1 I D ^DIE L -^APCHSCTL(DA(1),1)
  1. . Q
  1. HMP S STG="PEDIATRIC STD^ASQ DEVELOPMENT SCORES" ; ADD MEASUREMENT PANELS
  1. F PCE=1,2 S MP=$P(STG,U,PCE),MDA(PCE)=$O(^APCHSMPN("B",MP,0))
  1. S DIC="^APCHSCTL("_DA(1)_",3,",(DLAYGO,DIC("P"))=9001015.02,DIC(0)="LO"
  1. F X=1,2 I $G(MDA(X)) D ^DIC I Y=-1 K MDA(X)
  1. S DIE=DIC,DR="1////^S X=MPIEN",DA=0
  1. F S DA=$O(MDA(DA)) Q:'DA D
  1. . S MPIEN=MDA(DA) I 'MPIEN Q
  1. . L +^APCHSCTL(DA(1),3):1 I D ^DIE L -^APCHSCTL(DA(1),3)
  1. . Q
  1. D ^XBFMK
  1. Q
  1. ;