From 885f11de232078fe586ed44d782895bc3a949130 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Wed, 17 Sep 2025 16:25:56 +0200 Subject: [PATCH] Enforce the same party only for draft payments of sales Closes #14236 (grafted from cd68638b1b9ed85a76efe3a74b54cf04eb984a8e) --HG-- branch : 7.0 --- modules/sale_payment/sale.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/modules/sale_payment/sale.py b/modules/sale_payment/sale.py index b7c70c1946..861d6f571f 100644 --- a/modules/sale_payment/sale.py +++ b/modules/sale_payment/sale.py @@ -31,9 +31,12 @@ class Sale(metaclass=PoolMeta): ('kind', '=', 'receivable'), ('kind', '=', 'payable'), ), - ('party', '=', If(Bool(Eval('invoice_party')), - Eval('invoice_party'), Eval('party'))), - ('currency', '=', Eval('currency')), + ['OR', + ('party', '=', If(Bool(Eval('invoice_party')), + Eval('invoice_party', -1), Eval('party', -1))), + ('state', '!=', 'draft'), + ], + ('currency', '=', Eval('currency', -1)), ], states={ 'readonly': Eval('state') != 'quotation',