diff --git a/sale_triple_discount/models/sale_order_line.py b/sale_triple_discount/models/sale_order_line.py index 53edeea3e792..fce17a792986 100644 --- a/sale_triple_discount/models/sale_order_line.py +++ b/sale_triple_discount/models/sale_order_line.py @@ -97,6 +97,9 @@ def triple_discount_preprocess(self): this method is called multiple times.""" prev_values = dict() + digits = self._fields["discount"]._digits + self.env["sale.order.line"]._fields["discount"]._digits = (16, 16) + prev_values["discount_digits"] = digits for line in self: prev_values[line] = dict( discount=line.discount, @@ -115,6 +118,8 @@ def triple_discount_preprocess(self): @api.model def triple_discount_postprocess(self, prev_values): """Restore the discounts of the lines in the dictionary prev_values.""" + digits = prev_values.pop("discount_digits") + self.env["sale.order.line"]._fields["discount"]._digits = digits for line, prev_vals_dict in list(prev_values.items()): line.update(prev_vals_dict)