We are proud to announce the 6.2 release of Tryton .
This release provides many bug fixes, fine tuning and many performance improvements. But it is also remarkable by the addition of not less than 13 new modules from which we can highlight the basis for a point of sale and an integration with Shopify.
You can give it a try on the demo server, use the docker image or download it here.
As usual migration from previous series is fully supported. No manual operations are required.
Here is a list of the most noticeable changes:
Changes for the User
It is now possible to import and export data from binary fields using CSV. The data is encoded into base64 in the file.
You can now customize the name of the records used in the report to construct the filename.
The code of the language must now be unique in the system. This remove possible ambiguity with the translations.
Web Client
The web client has now on each tree view, a button to fold/unfold the selected rows.
Keyboard shortcuts (aka accesskey) has been added to every widgets and buttons of the web client. By pressing CTRL+F1
, the keys are shown next to each widget and button.
Accounting
It is now possible to configure rules to automatically debit the customer with a direct debit payment. This rules are compatible with all the payment modules like SEPA, Stripe or Braintree. The payments are created by launching a wizard from the payment menu.
The invoice and dunning form have now an action to launch a wizard to reschedule the payment terms. The wizard allow defining new terms by dividing the existing line.
When updating an asset now, we store a revision which stores the updated data, a document as origin and a description.
It is also possible to reset to draft an asset that have not yet any posted lines. This gives a grace time to correct mistakes. But it is also possible to force the re-computation of the pending lines.
Commission
We have now reporting of commission per agent and period. The amount can be grouped per year, month or day and it is possible to filter only the invoiced commissions.
When creating commissions, it is not possible to select only some agents.
Customs
A country of origin can be defined for each product.
Party
It is now possible to define one contact mechanism of each type at the creation of a party. The main usage is to ease importing via CSV parties with their email, phone etc.
When a party is replaced by another, the identifiers of the former one are transferred to the new one but deactivated.
More (click for more details)Product
We added a computed field on the variants that compute a name based on their attribute values. This avoid the need to define different suffix for each variant if the attributes are enough to distinct them.
The service and kit products can have now only a fixed cost price. The other methods are all based on stock move which practically does nothing for service nor kit.
More (click for more details)Production
To allocate the production cost between the output products, Tryton use the list price. Now if one of the output product has not list price, the production will raise a warning before ignoring it.
Purchase
We compute the purchase date for the request created from a requisition. The computation is using the lead time of the defined supplier or the best one found.
Sale
The default invoice, shipment and shipment cost methods can now be defined by customer. If they are empty then the general default method is used.
We extended the existing sale reports to have one general without any grouping (useful to have grant total) and another grouped in a tree per customer category.
There is now a wizard to test the setup of a recurrence rule (used for subscription). As rules can be complex it is useful to be able to see the result based on a tested date.
More (click for more details)Stock
We added a wizard on the customer shipment (and supplier return) to print all the package labels at once. And also reprint the label just for one package. The client can sent them directly to the default printer of the host machine. (This replace the dummy label report.)
It is again possible to group different warehouses under a view location.
Web Shop
The product images are now used for the web shops. There is a check box to mark the image as to be published on the web shops.
New Modules
Account Budget
The Account Budget Module provides the ability to set budgets for accounts over a defined period of time. These budgets can then be used to track the total amount from relevant transactions against the budgeted amount.
Account Move Line Grouping
The Account Move Line Grouping Module adds a view that displays move lines grouped.
Account Rule
The Account Rule Module allows rules which substitute default accounts with other accounts.
Account Stock Shipment Cost
The Account Stock Shipment Cost Module allocates shipment cost based on invoice.
Analytic Budget
The Analytic Budget Module provides the ability to set budgets for analytic accounts over a defined period of time. These budgets can then be used to track the total amount from relevant transactions against the budgeted amount.
Currency Romanian
The Currency RO Module adds the Romanian National Bank as a source for currency exchange rates.
Currency Serbian
The Currency RS Module adds the Serbian National Bank as a source for currency exchange rates.
Product Image
The Product Image Module adds images to each product and variant.
Product Image Attribute
The Product Image Attribute Module adds attributes to product images.
Sale Point
The Sale Point Module allows retail sales to be handled and recorded.
Stock Package Shipping MyGLS
The Stock Package Shipping MyGLS Module allows package labels to be generated for shipments using MyGLS webservices.
Stock Package Shipping Sendcloud
The Stock Package Shipping Sendcloud Module allows package labels to be generated for shipments made by any of Sendcloud’s supported carriers.
Web Shop Shopify
The Web Shop Shopify Module provides a way to manage Shopify stores. It uploads products, variants and collections to Shopify, and downloads orders, transactions and creates fulfillments.
Changes for the System Administrator
The non-interactive operations (like the scheduled or queued tasks) report now their possible errors in the entry “Administration → Scheduler → Errors”. When the problem has been solved, the administrator can mark it and it will be relaunch automatically.
The configuration wizard on the first login present now an easier step to activate easily new modules.
The trytond-stat
command display the ID of the node in addition to the process ID. This allow to know from which node the request come.
Accounting
We added two groups which give access rights to edit the accounting fields on parties and products. This gives more flexibility to privilege separation.
Changes for the Developer
In addition to MPTT we support now another method which is based on stored path. This is a method that is faster when the tree is modified but it takes more space.
To simplify the choice, you must use MPTT for tree that are mainly static (like the chart of account) and Path for tree that are modified often (like the project tree).
We improved the management of the digits for numeric field. Now we can set the digits attribute as the name of a field that point to a DigitsMixin
model (like the unit of measure).
Also the numeric widgets have now a grouping
attribute which specify if the client must group digits or not.
We added also the SymbolMixin
which define how to format a number with a symbol (like the unit of measure). The language and report has formatting methods that support the symbols but also empty digits.
We added on the user warning model a class method that standardize the format of warning name based on records.
We enforced even more data structure as immutable. The dictionary of the transaction context can only be changed thanks to the set_context
context manager. The value of Dict
field uses now tuple instead of list.
The ModelSQL.lock
method locks the table when called without records.
When copying records, we do not copy the values of the record that still have the default value. This permits a user to copy record for which he does not have access right on some field if their values are still the default.
Tryton can now store in the global cache of the transaction the result of Function
field if it is a read-only transaction. This improves the performance if we have Function
fields that are using other Function
fields to compute their values.
Scripting Client
Tryton is using slow hashing algorithm to prevent brute-force attack but so the scripting client was slow when used remotely because each call were authenticated by hashing the password. Now it is possible to configure the script to create a session and use it for further calls.
More (click for more details)Accounting
We store the value of the keywords extracted from the statement origin. They can now be used by the rules to find a party for a similar statement origin.
We compute now the warehouse of each invoice line.
More (click for more details)Currency
The currency module define a new Monetary
field which can be used to store a numeric value linked to a currency field. Such field will have the proper symbol and monetary formatting set automatically.
The currency is now inheriting from DigitsMixin
which permit to use it as digits attribute.
Party
The “Replace Party” wizard can now also update reference field to point to the new party.
Product
The unit of measure is now inheriting from DigitsMixin
which permit to use it as digit attribute.
Production
The BoM can now have many inputs or outputs with the same product. We removed the unique constraint on the product of the lists.
Project
The projects and tasks are using now the path mechanism instead of MPTT to speed up searching on their tree structure.
Purchase
The process method have been refactored into different methods. This allowed a design which can process multiple purchases at once and improve the speed.
Sale
The process method have been refactored into different methods. This allowed a design which can process multiple sales at once and improve the speed.
In order to group inside the same shipment only moves with the same cost method, the cost method from the sale is now stored on the shipment.
Stock
We provide now a unique method that is used to sort the quantities to pick for assignation. This method can be extended to implement custom strategy like FIFO, LIFO or FEFO.
The move has now a property which returns the warehouse to which the move is linked. This property replace the previous cost warehouse.
1 post - 1 participant
from Planet Python
via read more
No comments:
Post a Comment