OpenVPMS 1.9

The OpenVPMS development team is pleased to announce the release of OpenVPMS 1.9.

See New in 1.9 for a summary of new features.

The release can be downloaded from the Download page.

See Installing OpenVPMS for installation instructions.

See Known Issues for any known issues with this release.

 

OpenVPMS is a community sponsored project. This release would not have been possible without:

  • Tim Gething
  • Tony De Keizer
  • Dr Benjamin Charlton
  • Dr Adrian Simon
  • Dr Peter Gooey
  • Dr Matt Young
  • Tim Anderson
  • Advanced Vetcare
  • Ascot Veterinary Surgery
  • Australian Animal Hospitals
  • Companion Animal Veterinary Hospital
  • East Island Animal Hospital
  • Eastside Veterinary Emergency & Specialists

Many thanks to the following organisations that funded new features:

  • ActiVet
  • Advanced Vetcare
  • Australian Animal Hospitals
  • Bellerine Vet Group
  • Companion Animal Veterinary Hospital
  • Downe Veterinary Clinic
  • East Island Veterinary Hospital
  • Eastside Veterinary Emergency & Specialists
  • IDEXX Laboratories
  • OpenVPMS Pty Ltd
  • North Croydon Veterinary Clinic
  • Sunshine Veterinary Clinic
  • The Crags Veterinary Clinic
  • Veterinarium Corp
  • VitalPet
  • Wembley Veterinary Hospital

 

Requirements: 

See Requirements for the pre-requisites for this release.

New features: 
Improvements: 
  • [OVPMS-924] - Change Preview button to Print button
  • [OVPMS-975] - Follow-up work lists
  • [OVPMS-1451] - Preserve selection switching from edit to view
  • [OVPMS-1567] - Replace entity relationship between products and product types with an entity link
  • [OVPMS-1569] - Replace entity relationships between products and suppliers with an entity link
  • [OVPMS-1570] - Replace entity relationships between products and stock locations with an entity link
  • [OVPMS-1572] - Integrated docloader has shortcomings
  • [OVPMS-1583] - Invoiceitem cascade deletes investigation that may already be reported.
  • [OVPMS-1599] - Extend document file name support to SQL reports
  • [OVPMS-1607] - Provide tool to generate A5, Letter format JasperReports from A4 templates
  • [OVPMS-1625] - Keep desex/deceased status when merging patients
  • [OVPMS-1631] - openvpms.org being down for maintenance is not handled gracefully
  • [OVPMS-1638] - Document Loader Job: Move invalid documents to error directory
  • [OVPMS-1639] - Strikethrough for completed and cancelled appointments
  • [OVPMS-1642] - Add reporting datasource for SQL reports to allow SQL reports to run against slave db
  • [OVPMS-1643] - Change Medication layout, to reduce overall width
  • [OVPMS-1647] - Change report parameter text areas to display a single line
  • [OVPMS-1648] - Sort charge and estimate items by template or product type
  • [OVPMS-1649] - Product price rounding
  • [OVPMS-1651] - Add support to show/hide the batch column during charging
  • [OVPMS-1659] - Improved Till Balance and Bank Deposit templates
  • [OVPMS-1660] - Key Performance Indicators Report
  • [OVPMS-1661] - JXPath function required for date addition
  • [OVPMS-1665] - Product 'use only in templates' flag
  • [OVPMS-1674] - Add VeNom 'Reason for visit' codes
  • [OVPMS-1675] - Default email contact
  • [OVPMS-1677] - Add dose number to product dosing
  • [OVPMS-1681] - Add duplicate checking and overwrite support to docload -n
  • [OVPMS-1691] - Invoice auto save
  • [OVPMS-1700] - Change order of patient identity archetypes
  • [OVPMS-1705] - Add option to ignore decreases in List Prices
  • [OVPMS-1706] - Add support for $nl variable in macros
  • [OVPMS-1720] - Smart Flow Sheet Improvement Stage 1
  • [OVPMS-1738] - Add a website contact
  • [OVPMS-1739] - Add Preferred, Allow SMS columns to Contacts table
  • [OVPMS-1742] - Allow expression in report's sub-report expression
  • [OVPMS-1743] - System document renovation
  • [OVPMS-1747] - Add support to External Edit patient letters created during invoicing
  • [OVPMS-1749] - Add reminder functions to get all reminders for a patient on a date/date range
  • [OVPMS-1750] - Add reminder functions to get all reminders for a patient by date/date range and product type
  • [OVPMS-1752] - Add history:medication(patient, productTypeName, date)
  • [OVPMS-1754] - Prompt for parameters when selecting email templates
  • [OVPMS-1755] - Add support for grouped reminder email templates
  • [OVPMS-1757] - Add optional product node to act.patientDocumentLetter
  • [OVPMS-1758] - Wildcard searches
  • [OVPMS-1759] - Separate mail templates from pre-fill templates
  • [OVPMS-1760] - Add party:getAppointments(customer, interval, units)
  • [OVPMS-1762] - Provide history functions to return charges
  • [OVPMS-1765] - Include batch number in Medical Records.jrxml
  • [OVPMS-1767] - Support macro expansion in SMS reminders
  • [OVPMS-1768] - Charge and estimate minimum quantities
  • [OVPMS-1769] - Distinguish between SMS appointment reminders and general SMSes in communications log
  • [OVPMS-1770] - Tax-exclusive product prices
  • [OVPMS-1771] - Add barbecue support
  • [OVPMS-1772] - Add support to time out mail server connections
  • [OVPMS-1773] - Add support to disable appointment reminders by appointment type
  • [OVPMS-1784] - Date reporting functions to support now, today, yesterday, tomorrow and hour additions
  • [OVPMS-1785] - Add support to customise visit display in patient, problem history
  • [OVPMS-1788] - Preselect documents for printing on check-in and transfer
  • [OVPMS-1789] - Standardise security.user name attributes, and provide reporting support
  • [OVPMS-1791] - Add support to invoke the EVALUATE() function in all JasperReports
  • [OVPMS-1792] - Add user preference to display batch numbers in patient history
  • [OVPMS-1795] - Add optional Printed Name attribute to lookup.uom
  • [OVPMS-1807] - Catch JRRuntimeException to improve reporting error reports
  • [OVPMS-1809] - Use namespace in HL7 Placer Order Number to differentiate between OpenVPMS and SFS orders
  • [OVPMS-1823] - Include clinical notes from templates when invoicing estimates
  • [OVPMS-1825] - Minimum quantity overrides
  • [OVPMS-1827] - Include clinical notes from templates when invoicing estimates in Customers - Estimates
Tasks: 
  • [OVPMS-1301] - Prevent macros and reports invoking JXPath extension functions that update the database
  • [OVPMS-1310] - Statement accounting fee adjustment should use the lookup.customerAccountType accountFeeMessage text
  • [OVPMS-1312] - Prevent deletion of archetypes that are in use
  • [OVPMS-1477] - Add support to print supplier deliveries and returns
  • [OVPMS-1626] - Set visit status to Completed when invoice finalised
  • [OVPMS-1637] - Don't use context clinician when performing Check-In
  • [OVPMS-1650] - Allow appointment status colours to be configured in site.properties
  • [OVPMS-1662] - Send patient owner identifier in PID-18 Patient Account Number
  • [OVPMS-1663] - Include customer practice location in reminder export
  • [OVPMS-1669] - Add support for Clickatell 2 Way SMS
  • [OVPMS-1672] - Add support for multiple MLLP receivers on the one socket
  • [OVPMS-1676] - Relax product validation constraints on patient investigations
  • [OVPMS-1678] - Add validation to idealQty and criticalQty nodes of entityRelationship.productStockLocation
  • [OVPMS-1704] - Add support to enable/disable ADT messages for IDEXX
  • [OVPMS-1712] - Preserve invoice item sort order and selection when adding/deleting items
  • [OVPMS-1721] - Warn about loss of merge fields when editing .doc in OpenOffice
  • [OVPMS-1727] - Include template name when displaying report errors
  • [OVPMS-1728] - Add support to load subreports from all report bands in JasperReports
  • [OVPMS-1737] - Supplier - location account identifier
  • [OVPMS-1774] - Suppress appointment reminders for inactive customers and patients
  • [OVPMS-1775] - Add list:values(object, node) and list:distinct(object, node)
  • [OVPMS-1776] - Add Content column in Document Templates table to display the template file name
  • [OVPMS-1778] - Add support to configure referral display in patient summary
  • [OVPMS-1779] - Update Smartflow report download support
  • [OVPMS-1780] - Remove DNR from hospitalization record
  • [OVPMS-1782] - Add validation to estimate items, to ensure high qty >= low qty
  • [OVPMS-1797] - Prevent creation of Initial Balance acts, if a customer has any account acts
  • [OVPMS-1798] - Display a warning when printing hidden customer transactions
  • [OVPMS-1799] - Add support to set appointment reminder flag in appointment series
  • [OVPMS-1801] - Add support to disable user preferences on a per-user basis
  • [OVPMS-1802] - Include timeout warning in lookup replacement dialog
  • [OVPMS-1804] - Add support to administratively reset user preferences
  • [OVPMS-1811] - Include locale in Help dialog
  • [OVPMS-1815] - Practice default preferences
  • [OVPMS-1828] - Allow editing of patient record dates when locking not enabled
Bug fixes: 
  • [OVPMS-966] - Scheduling and Worklist calendar component not being initialised with current displayed date
  • [OVPMS-1273] - Invoice item Add button disabled if interactive reminders have their due dates changed
  • [OVPMS-1389] - Messages filter not functioning
  • [OVPMS-1399] - Can't sort security authorities on Archetype Name column
  • [OVPMS-1415] - Cannot edit AssertionProperty nodes in Administration|Archetypes
  • [OVPMS-1421] - Stock Location - Products don't sort
  • [OVPMS-1508] - Cannot call apply() recursively error when editing patients
  • [OVPMS-1518] - Shortcuts only available on the first tab when editing
  • [OVPMS-1576] - Data truncation: Data too long for column 'name' at row 1
  • [OVPMS-1598] - Product reminders not visible after saving invoice
  • [OVPMS-1634] - Customer and patient alerts not displayed in appointment editor
  • [OVPMS-1640] - Shut down quartz, OpenOffice threads when webapp stopped
  • [OVPMS-1641] - PatientRules.getOwnerReference() doesn't pick most recent active relationship
  • [OVPMS-1644] - Charge item batch number removed when changing clinician
  • [OVPMS-1645] - Date filter does not filter orders to include in a Return
  • [OVPMS-1654] - Users without admin rights can edit products
  • [OVPMS-1655] - Free Appointment Slot query uses wrong database index
  • [OVPMS-1656] - Amount doesn't match the sum of the Items error when invoicing estimate
  • [OVPMS-1657] - Memory leak in message monitor
  • [OVPMS-1658] - Date choosers in editors show current rather than selected month
  • [OVPMS-1664] - Product templates created prior to 1.8 display Print flag as unset
  • [OVPMS-1666] - KPI report has wrong Avg Outstanding Balance numbers
  • [OVPMS-1670] - Patient List Report shows prior owners
  • [OVPMS-1673] - OrderGenerator tries to generate orders with negative quantities if there is a fractional on hand quantity and Ideal Qty < Critical Qty
  • [OVPMS-1680] - Printing documents with no associated templates not selecting the default practice printer
  • [OVPMS-1682] - Practice Summary - Count Visits by Location - Active Patient count wrong
  • [OVPMS-1683] - The Practice Summary visits by location & visits by clinician have small errors in the counting and percentages
  • [OVPMS-1685] - Save failing when swapping charge item products with reminders
  • [OVPMS-1688] - act.supplier*Item acts missing minCardinality=1 for quantity node
  • [OVPMS-1689] - ReminderRules.calculateProductReminderDueDate() should handle missing Period Units
  • [OVPMS-1692] - Order generator handles part delivered orders with received > ordered qty incorrectly
  • [OVPMS-1693] - Inactive product batches included in Batch dropdowns
  • [OVPMS-1695] - StaleObjectStateException invoicing supplier delivery
  • [OVPMS-1696] - NullPointerException calculating product reminder due date
  • [OVPMS-1697] - NodeDescriptor doesn't support derived=true and null derivedValue expressions
  • [OVPMS-1702] - Inactive default practice location prevents location initialisation
  • [OVPMS-1703] - 24:00 no longer supported in schedules
  • [OVPMS-1707] - Appointment clinician/patient can be initialised from current context on copy or move
  • [OVPMS-1709] - Duplicate reminders not completed when multiple products charged with same reminder type
  • [OVPMS-1710] - Customer orders invoiced when the quantity is zero
  • [OVPMS-1715] - New unit prices not calculated if a product-supplier relationship has Auto Price Update selected
  • [OVPMS-1725] - Help dialog terminates session if subscription name contains an &
  • [OVPMS-1736] - Price date validation inconsistent
  • [OVPMS-1740] - Editing a single appointment in a series triggers overlap check for subsequent appointments
  • [OVPMS-1745] - OpenVPMS Editor Launcher not supported on OSX
  • [OVPMS-1748] - Patient history prevents deletion of documents linked to invoices
  • [OVPMS-1751] - Customer and patient search doesn't exclude inactive customer relationships
  • [OVPMS-1753] - 1.7 to 1.8 migration script fails to migrate templates if a template has duplicate products
  • [OVPMS-1761] - Restrict document templates to mergable content
  • [OVPMS-1794] - Investigation Print Form downloads PDF instead of printing JasperReports templates
  • [OVPMS-1800] - Template expansion includes inactive products
  • [OVPMS-1805] - Prescription creation and dispensing ignores Use Location Products flag
  • [OVPMS-1810] - OpenOffice DisposedException prevents all subsequent OpenOffice document generation
  • [OVPMS-1812] - Schedule highlight preference overrides schedule view highlight
  • [OVPMS-1814] - Schedule view doesn't update correctly when changing locations
  • [OVPMS-1816] - Calendar blocks trigger exception in Workflow - Scheduling when Smart Flow Sheet enabled
  • [OVPMS-1817] - Follow-up task editor defaults to last used work list which may not be set up for follow-up
  • [OVPMS-1818] - Appointment series repeat dropped if every day selected
  • [OVPMS-1822] - Invoice items with an initial quantity of zero don't update stock
  • [OVPMS-1824] - Patient microchip addition doesn't update patient description
  • [OVPMS-1826] - Default fixed price not selected when charging product with multiple fixed prices