Monday, November 1, 2021

Tryton News: Tryton Release 6.2

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.

Web Client Fold/Unfold button

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.

Reschedule Invoice

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.

More (click for more details)

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.

More (click for more details)

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.

More (click for more details)

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

Read full topic



from Planet Python
via read more

No comments:

Post a Comment

TestDriven.io: Working with Static and Media Files in Django

This article looks at how to work with static and media files in a Django project, locally and in production. from Planet Python via read...