CloudVISTA (nodeVISTA)
nodeVISTA is a pure web-based, cloud-native, Node.js-driven version of VISTA (no MUMPS) and runs on a Node.js web server in the cloud. The following describes how to install and run the nodeVISTA demo to exercise the Master VISTA Data Model (MVDM).
This demonstration focuses on how MVDM audits, secures, and emulates current production VISTA clients such as CPRS using the RPC Emulator:
Installation
nodeVISTA (cloudVISTA)
The nodeVISTA system provides the core MVDM Emulation services required for this demo. nodeVISTA typically runs within the context of a virtual host, managed by Vagrant.
The following describes how to install nodeVISTA server in a VirtualBox virtual machine.
Prerequisites
- Terminal emulator: This varies depending on your operating system:
- MacOS: Use the default Terminal or download iTerm
- Linux: Use the default Terminal or download Terminator
- Windows: Use the default Command Prompt or download ConEmu
- Git
- Virtualbox and Extension Pack.
- Verify that Git, Virtualbox, and Vagrant are installed properly and are the latest version:
$ git --version $ VBoxManage --version $ vagrant --version
Installation
- Install the
vagrant-timezone
Vagrant plugin by running the following command from a terminal or command prompt:$ vagrant plugin install vagrant-timezone
- Clone the nodeVISTA repository: https://github.com/vistadataproject/nodeVISTA by running the following command from a terminal or command prompt:
$ git clone https://github.com/vistadataproject/nodeVISTA
-
cd
to thenodeVISTA/setup/
directory in a terminal or command prompt: - If you have installed a nodeVISTA VM beforehand, clear out your current VM and setup by running the following command from a terminal or command prompt:
$ vagrant destroy --force
- Create and configure the nodeVISTA VM by running the following command from a terminal or command prompt:
$ vagrant up
- The initial
vagrant up
process will download a pre-built nodeVISTA Vagrant VM. The VM is ~2.6 GB in size and may take awhile to initially download, depending on your network connection speed. If during this initial download the connection is interrupted,the directory will need to be deleted and the process started again. The process caches the pre-built VM, and subsequent deployments will not take as long. Note: On MacOS, VirtualBox VMs are stored under/Users/{user}/VirtualBox VMs/
.
Verify Installation
- Start the nodeVISTA VM by running the following command from a terminal or command prompt:
$ vagrant reload
- Open the VISTA Data Model Browser (Fileman Schema Browser) by navigating your browser to http://10.2.2.100:9000/schema. One should be able to browse the entire VA VISTA Data Model:
CPRS
The Computerized Patient Record System (CPRS) is the graphical user interface (Client) through which physicians interact with VISTA (Server). Because end-users don’t ever “see” VISTA, most users think that CPRS is the EHR (i.e. “CPRS is VISTA”). In this regard, according to the most recent national survey of over 15,000 physician end-users of EHRs ( Medscape 2016 National EHR Survey ), CPRS remains one of the highest regarded integrated EHR in the U.S.
Prerequisites
CPRS runs on all currently supported versions of Microsoft Windows. If one wishes to run CPRS on MacOS or LinuxOS, one first needs to create a virtual Windows environment by downloading the free open-source Virtualbox or commercial VMWare hypervisor, and then install the free Windows 10 image within this hypervisor. Alternately, Microsoft offers free pre-built, virtualized versions of Windows prepackaged for several different hypervisors, which one can download here. Note all the free versions of Windows above have some restrictions, but nothing that affects the installation or execution of CPRS.
Installation
-
From your Windows-based workstation (physical or virtual), download, unzip, and run the OSEHRA CPRS installer: CPRS_Demo_0613.zip
-
Download the latest version of VA’s CPRS binary: CPRSChart30v75.zip (v1.0.30.75).
-
Unzip
CPRSChart30v75.zip
and rename theCPRSChart30v75.exe
uncompressed binary file toCPRSChart.exe
. -
Overwrite
C:\Program Files (x86)\VistA\CPRS\CPRSChart.exe
with the latest binary (v1.0.30.75). -
Download the latest CommonFiles DLLs: CPRS30v72_dll.zip.
-
Unzip
CPRS30v72_dll.zip
and copy/overwrite the contents of theCPRS30v72_dll/
folder toC:\Program Files (x86)\VistA\Common Files
. -
Copy the OSEHRA VistA shortcut to the Windows desktop and rename it to something like “RPC Server”, etc.
-
Right click on the new desktop shortcut (“RPC Server”) and select “Properties”.
- Modify the shortcut
Target
field with the following line:"C:\Program Files (x86)\VistA\CPRS\CPRSChart.exe" CCOW=disable s=10.2.2.100 p=9010 showrpcs
- Start CPRS by double-clicking the “RPC Server” desktop shortcut.
Orientation
Open the nodeVISTA Manager
- If nodeVISTA VM is not already running, start it by entering the following command:
$ vagrant reload
- Enter the nodeVISTA Manager URL into your web browser: http://10.2.2.100:9020/#rpcCounts.
CPRS Sign-on / RPC Emulation
To watch the RPC events, select the RPC Events tab in the nodeVISTA Manager (http://10.2.2.100:9020/#rpcEvents)
Start CPRS…
Before logging in, notice that the nodeVISTA Manager RPC Events tab shows the first RPC traffic coming from CPRS.
Login into VISTA as ALEXANDER,ROBERT using the following credentials:
Access Code: fakedoc1
Verify Code: 1doc!@#$
After login, you will be brought to the patient selection dialog…
Before choosing patient Carter,David, look in the nodeVISTA Manager and see just how chatty CPRS is. Before any patient is
selected, over 80 RPCs have been sent…
Back at CPRS, select ‘OK’ and you will be brought to the (empty) patient chart
and the nodeVISTA Manager shows the extra RPCs invoked - the total is now at 133…
and the MVDM Events tab shows MVDM model events for emulated RPCs…