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.

Software developers kit (SDK)


The Software Developers Kit gives your programmers pre-defined and proven links to database tables used in RxWorks. Any additional building blocks can be added by creating new tables that link to existing RxWorks tables.

The basis for this approach is to ensure all new features in RxWorks will be available within the practice’s system. Using the SDK ensures that the base system does not change. It also makes sure that upwards compatibility to newer versions does not require further corrections to any modules.

It also ensures that programs required for additional functions do not have any impact on the core RxWorks system. Development efforts are then concentrated on new modules, not on ensuring that the existing capability is still intact.

This approach is equally as important for continued and reliable support. As the boundary between the RxWorks base system and the custom-designed modules is clearly defined, the causes of support requests resulting from either are better identified and hence resolved.

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.