Skip to content

accounting: fix validation of accounting transactions with too precise amounts

Jérome Perrin requested to merge fix/accounting_rounding_validation into master

Round the amounts line by line when validating transactions balances and showing the totals on an accounting transaction.

Even though float field configurations do not allow users to input transactions where amounts uses more digits that what makes sense for the selected currency, we had cases where some transactions generated by custom scripts were "too precise" and passed the validation because unlike in all reports where we display sum of rounded values, the check was only rounding the sum, which cause some transactions with 1.00 on one side and 0.333333 0.333333 and 0.333333 on the other side to be valid.

The scripts used to display sums on an accounting transaction had the same problem, they were also showing the rounded sum and not the sum of rounded values.

Edited by Jérome Perrin

Merge request reports