Technical Details

RxWorks uses the most efficient resources to build a reliable and secure system.  This provides us with an effective toolset to go on with better development.

The RxWorks Database Engine

RxWorks is built upon a native Microsoft SQL based relational database. This provides check-point recovery ability. You can restore transaction data up to the point of system failure.  SQL data management allows the merge and sharing of client and patient data between our modules. It also uses data management features that remove the entry of duplicate data.

SQL operates 24 hours per day, 7 days a week . All without the need to deny user access in order to:

  • Process end of day reports.
  • Backup the database.
  • Synchronize with mobile devices.
  • Perform regular database administration.

SQL gives the ability to run vital functions of the program on off-line mobile devices.  Client and patient data can then be merged into the master database. For example, field services. Changes can be made and visits can be added in RxWorks via a laptop. At a later time, the details can be synchronized with the master database.

RxWorks Programming Languages and Tools

Microsoft SQL Server-based relational data storage.

Application domain logic built in .NET 3.5 Database access via ADO.NET Layered application design utilises platform frameworks for greater security and productivity, and exposes development namespaces for 3rd-party and external platform development:

  • RxWorks core: low-level authentication services, session and database manipulation.
  • RxWorks model: implements a LINQ-based database gateway pattern to control entity-level access and manipulation of application data structures.
  • RxWorks domain: implements business logic to control access to and updates of application entities and processes.
  • RxWorks.Devices: exposes a provider-based integration model to interface to laboratory equipment and external devices.
  • RxWorks.Documents: exposes a provider-based model to interface to office-style word-processing and spreadsheet applications. RxWorks contains native provider implementations for Microsoft Office 2003 and Microsoft Office 2007.
  • RxWorks workflow: exposes workflow-based application processes, built on the Windows Workflow Foundation (WF) support in .NET 3.0.
  • RxWorks windows forms: exposes reusable graphical components for 3rd-party applications to enable common tasks, such as searching for client and patient data.
  • RxWorks web services: exposes lower-level APIs to web service clients using the Windows Communication Foundation (WCF) technology stack
  • RxWorks reporting: exposes reporting services for developers.

Layered, pattern-based design to facilitate parallel, atomic development.

Type of workstations

RxWorks  can be accessed from a variety of devices

  • RxWorks is a “client” component that runs on Windows-based PCs as well as thin client devices, e.g. Wyse Win Terminals.
  • Supports full user operations on keyboard-less and/or mouse-less devices such as touch-screen monitors or wireless Tablet PCs.
  • All workstations are connected using Microsoft Terminal Server licenses.
  • All workstations must have Microsoft SQL licenses.

Privacy, security and auditing

RxWorks includes all of the typical functions needed by a practice to

  • Preserve and protect electronic data from theft, destruction or unauthorized use.
  • Monitor user activity on the system.
  • Generate daily, weekly, monthly and annual reports for administrative and audit purposes.
  • RxWorks supports user authentication through passwords and provides an automatic log-off of devices after a pre-defined period of inactivity.
  • Provide the ability to control user access to individual data elements within the database.
  • Maintain a log of all user login and logout activity. Tracks changes and history.
  • Maintain an audit trail (including date, time, user, original value, etc.) of all additions, changes and deletions to client and patient data.

The program provides practice-defined roles to control user access to software features and functions, as well as confidential client and patient data.  There are nine levels of security.