For the last months before the release, we have many improvements for the user experience.
Even if the development is not yet frozen, you can already help to translate the next release in your language.
Changes For The User
Now users are able to set a default warehouse in the preferences.
This is useful for companies with multiple warehouses. It saves time for the users as they could have the warehouse filled-in for which they work.
The web client now supports drag and drop to order list and tree rows like in the desktop client. There is one small difference to insert a row inside a non-expanded row: The user must drop it below the row while pressing the
CTRL key. Otherwise the row is dropped next to the row.
Now, you can use consumable products in an inventory if needed. There are still no requirements and the inventory is not automatically filled with products of this type.
We can show a visual context on the rows or cells. Those visual context can be
danger. Many modules have been updated to use them like the payable and receivable today on the party or when an invoice is due etc.
The constraint that prevented to use twice the same invoice sequence per fiscal year, has been relaxed. Now Tryton checks only that the sequence was not used to number an invoice with a later date.
We have reviewed all the list and tree views to expand needed columns. This was necessary to improve the user experience with the web client (because the web client does not permit to resize columns).
Modules to manage amendments
The blueprint Amendment for Sale and Purchase has been implemented.
The amendment modules allows you to change sales and purchases that are being processed and keeping track of the changes. When an amendment is validated the document is updated and given a new revision.
Changes For The Developer
Now we prevent to set a value for an unknown field in proteus scripts and in Tryton modules model definitions. For that we add
__slots__ automatically on each model. A positive side effect is that it reduces also the memory consumption of each instance.
We have already a
multiselection widget to use with a
Many2Many field. But now we have also a
MultiSelection field which stores a list of value as a JSON list in the database. This is useful when the selection has a few options. For now, the widget is also available on list views (but not editable). And the field is usable in the search bar of the client.