overview (1K)

What is VistaWeb?
Primarily VistaWeb is an exploration of alternatives. It explores an alternative technology to Remote Data Views (RDV) or WebTop. For a comparison of these three technologies, click here. It explores an alternative UI to Windows programs or Swing GUI applications. And it explores alternative ways to deliver graphics information such as ECG or DICOM images. That it may result in a useful application in itself is simply a happy by-product.

How Does It Work?
VistaWeb uses Medical Domain Objects (MDO) as its data abstraction layer, and it is MDO that handles all the VistA connectivity. VistaWeb uses two XML files to configure its site information. The first one determines what sites to allow the user to choose for logging in and patient selection. The second determines from which sites data will be acquired. In the case of VistaWeb, these files are identical and include all VHA sites, but other applications using MDO might configure in any other way. The first file, for example, may contain only the sites from a particular VISN, while the second is the complete list of VHA sites. This would allow users to select only VISN sites for logging in and patient selection, but the data would come from all sites. Of course a user can only log in at a site at which he/she has an account. The actual access and verify codes are used for this. VistaWeb then tries to set the OR CPRS GUI CHART context. If unsuccessful, the application proceeds no further. This behavior duplicates that of CPRS.
    At this point, the user is an authorized CPRS user at the local site. Since VistaWeb has an SQL Server database, it would now be possible to do further authorization, for example to determine if the user is an ISO and therefore allowed to see the ISO log for his/her site, or if the user is allowed to perform remote site patient lookups.
    The following is the sequence of events:

  1. User logs onto local site and sets CPRS context
  2. User selects site in which to lookup patient (defaults to login site)
  3. User selects patient
  4. List of remote sites is obtained from MPI
  5. An array of data access objects (DAO) is instantiated with the patient lookup site as the first DAO in the array
  6. The array is completed with the remote sites acquired from the MPI
  7. If necessary, a new visitor account is created in each remote site's NPF. If a user has already visited a site, or has an account at that site, MDO will use the existing account
  8. Each visitor account gets the CPRS context as a secondary menu option
  9. Each site is checked for patient sensitivity
  10. If patient is sensitive in any site, user is shown warning message
  11. If user continues, all sites are sent sensitivity bulletins
  12. If the user and the patient are the same person VistaWeb halts.
  13. Each site is checked for deceased date
  14. If there is a deceased date in any site, the user is shown this date
    Now VistaWeb is ready to deliver data. All requests are sent to the DAO array, one DAO per site, whereupon each communicates directly with its associated VistA. All requests are read-only and will be multi-threaded. MDO acquires data from VistA using the same RPCs that CPRS uses. The returned data is collated, sorted, and a three character site moniker is appended to indicate its origin. Thus the display is patient-centric instead of geo-centric.

Where to from Here?
Click here to see the VistaWeb wish list.

VISN 11 Stats
Click here to see statistics on current VISN 11 version of VistaWeb.