Weight-based product templates

Donate to this project

Development Project Status: Completed

Total cost estimate (ex-Tax): 
Due date for completion of this stage: 
Current Percentage Funded: 
Project funding: 

You can either donate money to this project by entering the amount above and clicking the 'Add to cart' button, or you can pledge an amount by clicking here to email your commitment. If you make a pledge, then when we have 100% funding commitments, you will be notified by email and you can then make your actual donation. Note that development will not commence until all funds are received.

Project description: 


Product Templates bundle products together, to simplify invoicing.

When a Product Template is used in an estimate or invoice, it is expanded so that each included product appears as a separate line item, with the quantity defined by the template.

This project will extend product templates to support:

  • weight based product inclusion
  • low and high quantities
  • zero pricing

Weight-based Product Inclusion

Three new attributes will be added to included products, to allow products to be selectively included based on the patient's current weight:

  • Minimum Weight - include the product if the patient's weight is >= the specified value, otherwise exclude it
  • Maximum Weight - include the product if the patient's weight is < the specified value, otherwise exclude it
  • Weight Units - the weight units. Defaults to kg

This can be used to:

  • substitute products based on a patient's weight
  • vary quantities based on a patient's weight

Both Minimum and Maximum Weight default to zero. If both are zero, weight is not used to determine if a product should be included.

Low and High Quantities

A single quantity is currently used for included products. For Estimates, this is copied to both the Low and High Qty fields.

To better support Estimates, the existing quantity field will be renamed to Low Qty, and a new High Qty field added.

The High Qty will default to the Low Qty value.

When a product template is used in an:

  • Estimate: the Low Qty and High Qty will be copied to the respective fields in the line item
  • Invoice: the High Qty will be copied to the line item Quantity

Zero Pricing

Templates are useful for bundling products together relating to particular treatments.

Sometimes it is desirable for an included product to be not charged for. This might be done for stock control or reporting purposes. Outside of a template, the product should be charged at the normal rate.

Currently the only way to do this is to:

  • have 2 copies of the product, one for use in templates, with a zero price, the other for use outside templates, with the normal price; or
  • manually edit the price after the template has expanded

To avoid this, a new Zero Price field will be added to included products. When selected, the fixed and unit price will be set to zero when the template expands.


Existing product templates will need to be migrated, to copy the existing quantity to the new High Qty field.




Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Re: Weight-based product templates

Can we consider making the suggested change to Line item calculation transpose into estimate line item calculations as well .

OpenVPMS Installer and Helper 
Ph: +61423044823 
Email: info[at]charltonit.com[dot]au

Re: Weight-based product templates

If you're referring to OVPMS-1521 , just add it to the JIRA.

Re: Weight-based product templates

- We have no personal requirement for weight based templates.

- We are very interested in the low/high quantitites. This would allow better estimates to be constructed (e.g. we can specify a template that has 2-5 days of hospitalisation).

- Would be nice to be able to select what items get invoiced when converting a estimate to an invoice. (i.e. all or pick individual products).

- Zero pricing would be good for stock control however would be extra good if it were possible to suppress certain items printing on invoices.

Re: Weight-based product templates

There is a project that could help suppressing items on invoices: http://www.openvpms.org/project/printing-invoices-and-estimates-grouped-...

This gives you access to the product template that a line item was generated from. Using this, it would be possible to come up with a JasperReport that displays just the template name and total of all included items, rather than enumerating them line by line.

Re: Weight-based product templates

Need an additional true/false (default = true) field called "Invoice" or something like that that specifies which line items get printed on estimates/invoice.

For instance, if we have an anesthesia template:

General Anesthesia (Zero Price = False, Invoice = True)

Inventory Item 1 (Zero Price = True, Invoice = False)

Inventory Item 2 (Zero Price = True, Invoice = False)

Inventory Item 3 (Zero Price = True, Invoice = False)

The above template would display only the General Anesthesia package price on the invoice, and leave out the details of which injection was used, as there might be 10-12 potential injections possible and while we want to track these for inventory purposes, we don't want them cluttering the invoice.

Re: Weight-based product templates

See the updated Printing invoices and estimates grouped by product template project.

For each item in the anaesthesia template that you want to suppress from the printed invoice/estimate, set the Print flag = false.

Re: Weight-based product templates

ok, silly question, but for the weight based products, why restrict these changes to Product Templates? For example, some services and medications are also weight based charges. Examples for us include general cremation, and for the general practice might include Proheart Injection.... These are products that would benefit from weight based charging but are not and do not lend themselves to product templates...

Would it be that much harder to be able to give all products a weight based charge option?

Re: Weight-based product templates

Both the situations you describe can be done using weight based templates:

  • Cremation template includes service products Cremation - Small, Cremation - Medium, Cremation - Large
  • Proheart template includes Proheart injection with a different quantity for each weight range

An alernative would be to add a weight range to products. The product would be excluded from queries if the patient is not in the range. So a large pet would exclude Creation - Small for example.

This wouldn't work for Proheart injections, as you want to vary the quantity based on weight. In this instance, we could add support for weight based quantities.

Here, the product itself would list the quantities to use based on the patient weight.



Re: Weight-based product templates

This project has been fully funded by a member of our user community. Thanks very much for your support!

Syndicate content