Invoice auto save

Description

From http://www.openvpms.org/project/invoice-auto-save

OpenVPMS uses a technique called optimistic locking to ensure that multiple users editing the same object don't overwrite each other's changes. If two users edit the same object, the first user to save wins, and the second user's changes are rolled back.

This project will:

  • automatically save invoices, to limit data loss if two users edit the same invoice

  • support reloading the invoice, if another user has edited it

This functionality will be available:

  • in the Check-In, Consult, and Check-Out workflows

  • when editing an invoice in Customer - Charges

  • when invoicing an estimate

  • when invoicing customer orders and returns

Invoices will be automatically saved:

  • when adding a new invoice item

  • on completion of expanding a product template

Automatic save will be disabled if the invoice:

  • is unsaved. This is to allow users to cancel editing a new invoice without having to subsequently delete the invoice from Customer - Charges

  • status has been set to Finalised

  • is invalid

Invoicing Estimates and Customer Orders/Returns

When invoicing estimates and customer orders and returns, the automatic save will only be enabled after all of the items have been invoiced. This is to allow the user to cancel invoicing without making any changes.

Environment

None

Status

Assignee

Tim Anderson

Reporter

Tim Anderson

Labels

None

Time tracking

32h

Components

Fix versions

Priority

Minor