From b43ba1bb1f1070b859ed06c7b5ca3126cbcb5fba Mon Sep 17 00:00:00 2001 From: "Claire Bretton (clbr)" Date: Fri, 17 Feb 2023 12:32:00 +0000 Subject: [PATCH] [FIX] account: relax repartition lines validation when tax has children If a tax is an aggregation of its sub-taxes it makes sense to have no repartition line. This PR relaxes the validation in that case. X-original-commit: a82404db4370c9b8f3ae1c58f1702abc98de0881 Part-of: odoo/odoo#121580 --- addons/account/models/account_tax.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/addons/account/models/account_tax.py b/addons/account/models/account_tax.py index ff863ec2fd4..32b7ce4d665 100644 --- a/addons/account/models/account_tax.py +++ b/addons/account/models/account_tax.py @@ -272,6 +272,12 @@ class AccountTax(models.Model): @api.constrains('invoice_repartition_line_ids', 'refund_repartition_line_ids') def _validate_repartition_lines(self): for record in self: + # if the tax is an aggregation of its sub-taxes (group) it can have no repartition lines + if record.amount_type == 'group' and \ + not record.invoice_repartition_line_ids and \ + not record.refund_repartition_line_ids: + continue + invoice_repartition_line_ids = record.invoice_repartition_line_ids.sorted(lambda l: (l.sequence, l.id)) refund_repartition_line_ids = record.refund_repartition_line_ids.sorted(lambda l: (l.sequence, l.id)) record._check_repartition_lines(invoice_repartition_line_ids)