Under Discussion

Move overlapping appointments and calendar blocks

Development Project Status: Under Discussion

Due date for completion of this stage: 
05/02/2018
Release: 
Future
Project funding: 

You can donate money to this project by entering the amount above and clicking the 'Add to cart' button. In the Checkout process you can either choose to pay now (via Bank Transfer, Cheque or Pay Pal) or you can pledge the amount by choosing the 'Pledge a payment for a Development Project' method. If you make a pledge, then when we have 100% funding commitments, you will be notified by email and you can then action your payment. Note that development will not commence until all funds are received.

Project description: 

Repeating appointments and calendar blocks are scheduled to occur at the same time each day. If a repeat overlaps an existing appointment or calendar block, a message will be displayed indicating that it cannot be scheduled.

This project will:

  • provide a listing of all appointments/blocks in a series, prior to it being created
  • enable individual appointments/blocks to be:
    • moved to a different date/time
    • deleted

Display

When creating or editing a repeating appointment or calendar block, a Repeats tab will be shown that includes a table listing the:

  • date and time of the repeat
  • whether it overlaps an existing appointment or calendar block

When a repeat is selected, the schedule for that day will be displayed, allowing it to be moved or deleted

Updating repeats

If the repeats change, any appointments or blocks that have been moved will be removed

TODO - could relax this so that if no dates have changed, repeats in different time slots are kept.

 

Exclusions

Moving repeats to a different schedule will not be supported.

Consult from patient history

Development Project Status: Under Discussion

Due date for completion of this stage: 
11/12/2017
Release: 
Future
Project funding: 

You can donate money to this project by entering the amount above and clicking the 'Add to cart' button. In the Checkout process you can either choose to pay now (via Bank Transfer, Cheque or Pay Pal) or you can pledge the amount by choosing the 'Pledge a payment for a Development Project' method. If you make a pledge, then when we have 100% funding commitments, you will be notified by email and you can then action your payment. Note that development will not commence until all funds are received.

Project description: 

At present, users perform a consult by selecting an Appointment in Workflow - Scheduling,  or a Task in Workflow - Work Lists, and clicking Consult.

To limit the amount of switching between workspaces, a Consult button will be added to Patients - Medical Records - Summary.

This will locate the appointment, and use it to initiate a Consult workflow.

Locating the Appointment

To launch the Consult workflow, a valid appointment is required.

The most recent appointment for the patient that is either Checked In, In Progress, Billed, or Admitted will be used.

If there is none, but there is a Completed appointment done in the last 48? hours, it will display a confirmation:

The most recent appointment for <patient> was completed at <appointment end time>.

Continue performing consultation?
 

If Yes is selected, the Consult workflow will proceed, otherwise it will be terminated.

If no appointment matching the criteria can be found, an error dialog will be displayed:

Cannot perform consulation, as there is no current appointment for <patient>.

TODO - performing Consult for any patient that has been checked out can cause problems for Smart Flow, IDEXX and Cubex.

Patient summary extensions

Development Project Status: Under Discussion

Due date for completion of this stage: 
11/12/2017
Release: 
Future
Project funding: 

You can donate money to this project by entering the amount above and clicking the 'Add to cart' button. In the Checkout process you can either choose to pay now (via Bank Transfer, Cheque or Pay Pal) or you can pledge the amount by choosing the 'Pledge a payment for a Development Project' method. If you make a pledge, then when we have 100% funding commitments, you will be notified by email and you can then action your payment. Note that development will not commence until all funds are received.

Project description: 

This project will add the following extensions to the patient summary, displayed on the left hand side of the screen:

  • Last Vaccinated - the most recent vaccination date for the patient
  • Vaccine - the most recent vaccine for the patient
  • Last Worming - the most recent date the patient was wormed
  • Last Blood Test - the most recent date the patient had a blood test

These will be displayed by default, but may be hidden in user preferences.        

To support this:

  • vaccinations, worming products, and blood tests must each have a separate Product Type
  • the Practice needs to have the following fields:
    • Vaccine Product Type - identifies the vaccine product type
    • Worming Product Type - identifies the worming product type
    • Blood Test Product Type - identifies the blood test product type

 

User preference administration

Development Project Status: Under Discussion

Due date for completion of this stage: 
11/12/2017
Release: 
Future
Project funding: 

You can donate money to this project by entering the amount above and clicking the 'Add to cart' button. In the Checkout process you can either choose to pay now (via Bank Transfer, Cheque or Pay Pal) or you can pledge the amount by choosing the 'Pledge a payment for a Development Project' method. If you make a pledge, then when we have 100% funding commitments, you will be notified by email and you can then action your payment. Note that development will not commence until all funds are received.

Project description: 

This project will enable:

  • preferences to be copied from a source user to one or more target users
  • all preferences to be copied, replacing the target user's preferences with that of the source
  • a subset of the source preferences to be copied
  • target users to be selected by classification (e.g. Clinician, Receptionist)

To support this, a Copy Preferences button will be added to Administration - Users.

This will be enabled when a user (the source) is selected. When clicked, a Copy Preferences dialog will be displayed with:

  • the name of the user whose preferences are being copied
  • the copy option. One of:
    • All - copies all preferences
    • Selected - copies selected preferences
      A Select button will be displayed to select the preferences to copy
  • the user(s) to copy to
    Each user will be displayed in a table, with a tick box next to it, indicating if the user has been selected.
    Users may be filtered by their classification.

 

Clicking Apply or OK copies the preferences of the selected users with the source user, based on the copy option. The OK button closes the window after the copy is complete.
Clicking Cancel closes the window without making further changes.

Selecting Preferences to Copy

By default, copying preferences copies all preferences from the source user to the target users.

To limit it to a subset of user preferences, the Select button will display the source user's preferences. On the left of each preference will be a checkbox, indicating if the preference should be copied or not. It will be unticked by default.

When OK or Apply is pressed in the Copy Preferences dialog, only the selected preferences will be copied.

Summary display preferences

Development Project Status: Under Discussion

Due date for completion of this stage: 
11/12/2017
Release: 
Future
Project funding: 

You can donate money to this project by entering the amount above and clicking the 'Add to cart' button. In the Checkout process you can either choose to pay now (via Bank Transfer, Cheque or Pay Pal) or you can pledge the amount by choosing the 'Pledge a payment for a Development Project' method. If you make a pledge, then when we have 100% funding commitments, you will be notified by email and you can then action your payment. Note that development will not commence until all funds are received.

Project description: 

This project will enable:

  • the customer and patient summaries (displayed on the left hand side of the screen) to be customised
  • default summary items to be set for roles
  • individual summary items to be shown/hidden
  • the order of the summary items to be set

Role-based summaries

Summary items may be customised for user roles. This will enable clinicians to see different items to front-desk staff or nurses. It also means that items for a particular role are defined in one place, reducing duplication.

Role based summaries will be created via Administration - Lookups, using a Role Summary Preferences (lookup.summaryPreferencesRole). This:

  • has a name (e.g, "Summary preferences for clinicians")
  • lists available patient summary items
  • lists selected patient summary items
  • allows the order of the selected patient summary items to be set, using Move Up and Move Down buttons
  • lists available customer summary items
  • lists selected customer summary items
  • allows the order of the selected customer summary items to be set, using Move Up and Move Down buttons

A Role Summary Preferences can then be assigned to one or more Security Roles.

Preferences

The Summary preferences tab will be changed to provide an option to either select  summary items from a role, or customise those displayed.

Selecting role-based summary items means that the user inherits a pre-defined set of items that cannot be changed.

If customisation is selected, it will:

  • list available patient summary items
  • list selected patient summary items
  • allow the order of the selected patient summary items to be set, using Move Up and Move Down buttons
  • list available customer summary items
  • list selected customer summary items
  • allow the order of the selected customer summary items to be set, using Move Up and Move Down buttons 

Archetypes

New archetypes will be required to support the new preferences.

  • lookup.summaryPreferenceCustomer
    This will have the following pre-defined instances:
    • Id - customer identifier
    • Phone - preferred telephone
    • Email - preferred email
    • Balance
    • Overdue
    • Current Amount
    • Unbilled
    • Projected Amount
    • SMS - button to send SMSes
  • lookup.summaryPreferencePatient
    This will have the following pre-defined instances:
    • ID - patient identifier
    • Species - patient species
    • Breed - patient breed
    • Species & Breed - species and breed on one row
    • Reminders - patient reminders
    • Age - patient age
    • Birth Date - patient birth date
    • Weight - most recent patient weight
    • Microchip - patient microchip
    • Insurance - current patient insurance
    • Referrals - shows referrals
    • Active Referrals - show active referrals, or nothing if there is no active referral
  • lookup.summaryPreferencesUser
    Groups all of the preferences assigned for a particular user
     
  • lookup.summaryPreferencesRole
    Groups all of the preferences for a user role

The existing security.role archetype needs to include a lookup.summaryPreferencesRole.

The existing entity.preferenceGroupSummary will need to be migrated to:

  • remove the showCustomerAccount node
    If the showCustomerAccount node was true, preferences will be added for
    • Balance
    • Overdue
    • Current Amount
    • Unbilled
    • Projected Amount
  • remove the showReferral node
    If the showReferral node was ALWAYS, a Referrals preference will be added.
    If the showReferral node was ACTIVE, an Active Referrals preference will be added

Administrator copy options

Development Project Status: Under Discussion

Due date for completion of this stage: 
11/12/2017
Release: 
Future
Project funding: 

You can donate money to this project by entering the amount above and clicking the 'Add to cart' button. In the Checkout process you can either choose to pay now (via Bank Transfer, Cheque or Pay Pal) or you can pledge the amount by choosing the 'Pledge a payment for a Development Project' method. If you make a pledge, then when we have 100% funding commitments, you will be notified by email and you can then action your payment. Note that development will not commence until all funds are received.

Project description: 

This project will provide administrators the ability to copy the following objects in the Administration workspaces:

  • Administration - Organisation:
    • Schedules
    • Work Lists
  • Administration - Types:
    • Appointment Types
    • Cage Types
    • Calendar Block Types
    • Discount Group Types
    • Discount Types
    • Investigation Types
    • Patient Alert Types
    • Product Types
    • Reminder Types
    • Task Types
  • Administration - Document Templates
    • Appointment Reminder SMS Templates
    • Document Templates
    • Email Templates
    • Patient Reminder SMS Templates
    • System Email Templates
  • Administration - Users
  • Administration - Roles

In each case, a Copy button will be displayed when a copyable object is selected.

Clicking Copy will:

  1. copy the object, assigning it a new name Copy of <original object name>
  2. save it
  3. display the copy in an editor

NOTE: the save step could be skipped, so that the copy is only saved after the user has edited/reviewed it. This would also allow the copy to be cancelled, without requiring a deletion step. It is more complex to implement.

 

Script Scheduler

Development Project Status: Under Discussion

Due date for completion of this stage: 
10/12/2017
Release: 
Future
Project funding: 

You can donate money to this project by entering the amount above and clicking the 'Add to cart' button. In the Checkout process you can either choose to pay now (via Bank Transfer, Cheque or Pay Pal) or you can pledge the amount by choosing the 'Pledge a payment for a Development Project' method. If you make a pledge, then when we have 100% funding commitments, you will be notified by email and you can then action your payment. Note that development will not commence until all funds are received.

Project description: 

Background: A number of sites use either the Windows task scheduler, or the linux crontab system to run mysql and other scripts to do various housekeeping jobs (such as updating customer rankings, cleaning out $0 invoices, purging old document loader system messages, etc).

The problem is that since database updates are being done outside the OpenVPMS web application, the data that OpenVPMS holds in its caches (to optimise performance) may now be invalid. The only sure way to fix this is to restart Tomcat after having run the various scripts. However, in a 24/7 operational environment, this is not a good solution.

Note that clearing the caches is not always necessary - for example after running a non-MySQL script, or after running all but the last of the night's MySQL scripts.

Proposed Solution:

This project will enable scripts  to be scheduled to run automatically using the Quartz scheduling support.

This will be configured via the Administration|Organisation workspace, using a "Job Configuration: Script" configuration archetype.

This will use cron-like syntax to specify the day/time when the job should be run.

It will also include fields to specify the script to be executed, an option as to whether or not to clear the caches, and an option as to whether to log a system message on the successful dispatch of the script. Failures to dispatch the script will always be logged. In both cases the logging is via a system message to the Run As user.

Note that the user creating the script to be executed is responsible for generating any required/desired log files recording the outcome of the script. No support will be provided for injecting the contents of such log files into the OpenVPMS system message system.

 

Stock Control

Development Project Status: Under Discussion

Due date for completion of this stage: 
04/12/2017
Release: 
Future
Project funding: 

You can donate money to this project by entering the amount above and clicking the 'Add to cart' button. In the Checkout process you can either choose to pay now (via Bank Transfer, Cheque or Pay Pal) or you can pledge the amount by choosing the 'Pledge a payment for a Development Project' method. If you make a pledge, then when we have 100% funding commitments, you will be notified by email and you can then action your payment. Note that development will not commence until all funds are received.

Project description: 

Medication and Merchandise products may be linked to Stock Locations to manage stock, and stock ordering.

Each product-stock location relationship may have an:

  • Ideal Qty - the ideal stock level - the ordering system can reorder stock to get back to this level
  • Critical Qty - the critical stock level - the ordering system can reorder if the in-stock quantity drops below this level

At present, the Ideal Qty and Critical Qty can only be edited per-product. To simplify this, a new 'Stock Control' workspace will be added to Products

This will:

  • provide filters to restrict the products to display
  • display a table displaying the matching products with their ideal and critical quantities
  • provide support to batch edit ideal and critical quantities
  • copy ideal and critical quantities from one location to another

Editing, and copying support will be restricted to users with a new Stock Control classification.

Product Filters

Filters will be provided for:

  • Stock Location - defaults to the current stock location
  • Type - Medication, Merchandise, or All. Defaults to All
  • Product Type - defaults to All
  • Name - product name

Product Table

The product table will display:

  • Name - the product name
  • Type - one of Medication or Merchandise
  • Ideal Qty - the ideal quantity at the stock location
  • Critical Qty - the critical quantity at the stock location

Editing

An Edit button will be provided for users with Stock Control classification. This will display a window with a table containing the products as above.
The Ideal Qty and Critical Qty columns will be editable.

An:

  • Apply button will save changes
  • OK button will save changes, and close the window
  • Cancel button will discard changes, and close the window

Update All

An Update All button will be provided for users with Stock Control classification. This will display a window to update all ideal and critical quantities for products matching the query.

It will prompt for the ideal and critical quantities, and display a confirmation before applying the update.

Copy

A Copy button will be provided for users with Stock Control classification. This will display a window to copy the current ideal and critical quantities to one or more other stock locations.

If a selected stock location doesn't have a stock relationship with that being copied, it will be skipped.

Archetype changes

The existing entityLink.productStockLocation archetype allows editing of the idealQty, criticalQty and quantity nodes.

These will be made read-only. The idealQty and criticalQty will only be able to be modified via the Stock Control workspace, by users with Stock Control classification.

The quantity will only be able to be modified by creating a Stock Adjustment or Stock Transfer.

 

Enhance Customer Orders to better support in-house pharmacy

Development Project Status: Under Discussion

Due date for completion of this stage: 
23/11/2017
Release: 
Future
Project funding: 

You can donate money to this project by entering the amount above and clicking the 'Add to cart' button. In the Checkout process you can either choose to pay now (via Bank Transfer, Cheque or Pay Pal) or you can pledge the amount by choosing the 'Pledge a payment for a Development Project' method. If you make a pledge, then when we have 100% funding commitments, you will be notified by email and you can then action your payment. Note that development will not commence until all funds are received.

Project description: 

My son David (who is the main house house call for his Hong Kong practice) has discovered that The Customer Orders facility can be used without having an HL7 Pharmacy or Cubex machine.  That is, a mobile vet can create customer orders that will be fulfilled by in-house staff from the in-house pharmacy.

Since this is at the Discussion stage, rather than provide a dry specification here, I have chosen to quote his reply to my email asking for clarification of what tweaks he wanted. It is as follows:

I've spent a day or two using the system and thinking about what it needs - and it's so close to being perfect I think it would only take a couple of tweaks and be ready to roll out. This might also have much more widespread application than the external ordering. It's common in a lot of clinics for clients to order stuff to pickup with the vet then the staff need to prepare.
 
These are the alterations I would make:
1. Don't automatically invoice.
At the moment if there is a pending customer order for a client, the moment I make a new invoice for the client the system will automatically try to invoice that customer order.
This doesn't work if I'm in consult, make up a customer order, then invoice the bill for the consult.
Maybe instead the system could flash up a question" "Do you want to invoice the outstanding Customer Order Y/N"
This way we could process invoices without being forced to do the customer order.
It's also a problem if I've placed an order that isn't in stock - as we can't bill the client for anything else until we process that Customer order (or delete it and put it in again after we invoice for other stuff).
 
2. Allow Drug Label creation
Allow a label to be made for the dispensed drugs on the order
 
3. Allow prescription creation
Follows on from 2, ie allow the new prescription button
 
4. Let the staff know the order is there.
- maybe somehow send an alert to certain staff - like a little icon in the corner similar to messaging showing there's an order awaiting processing?
- or alternately just populate a to-do list on a worklist with "Outstanding orders"
 
I think with these additions it would be perfect, but even at the moment it's very workable and since we've started using it it's been much better than our old email system, it avoids constantly bombarding the office with orders, and it keeps a track of which orders have been placed.
 
It's really working well.

Regards, Tim G

 

Duplicates in product templates

Development Project Status: Under Discussion

Total cost estimate (ex-Tax): 
$790
Due date for completion of this stage: 
17/08/2016
Release: 
Future
Project funding: 

You can donate money to this project by entering the amount above and clicking the 'Add to cart' button. In the Checkout process you can either choose to pay now (via Bank Transfer, Cheque or Pay Pal) or you can pledge the amount by choosing the 'Pledge a payment for a Development Project' method. If you make a pledge, then when we have 100% funding commitments, you will be notified by email and you can then action your payment. Note that development will not commence until all funds are received.

Project description: 

When product templates in OpenVPMS are expanded, duplicate products are merged so that only a single line item appears with the cumulative quantity.

This is useful for nested templates that include common products, but means that a fixed price is only charged once. This doesn't support the case where pain relief may be administered several times, and a fixed price is charged each time.

To support duplicates in templates, a new Merge Duplicates flag will be added, to indicate how duplicates should be handled.
When selected, all duplicates included by the template will be merged. This is the current behaviour, and will be the default.
When deselected, any duplicates included by the template won't be merged.

Nested Templates

When a template includes nested templates, the Merge Duplicates flag applies to the immediate template. e.g given:

  • template A, Merge Duplicates = false
    • tempate B, Merge Duplicates = true
      • product 1, quantity = 1
      • product 1, quantity = 1
    • template C, Merge Duplicates = true
      • product 1, quantiy = 1

The invoice or estimate will contain the lines:

  • product 1, quantity = 2
  • product 1, quantity = 1

Supplier Orders

If a template is expanded in a supplier order, the Merge Duplicates flag will be ignored, and duplicates will always be merged.

 

 

Syndicate content