From 63d27363f7593c4bc8aed268a3b51b00018817df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adri=C3=A1n=20Bernardi?= Date: Thu, 25 Nov 2021 12:50:32 -0300 Subject: [PATCH] lims_account_invoice: avoid changing the product when the invoice line belongs to a service --- lims_account_invoice/invoice.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lims_account_invoice/invoice.py b/lims_account_invoice/invoice.py index 0606b8c..5dad2af 100644 --- a/lims_account_invoice/invoice.py +++ b/lims_account_invoice/invoice.py @@ -274,6 +274,10 @@ class InvoiceLine(metaclass=PoolMeta): ('id', 'in', Eval('party_domain')), ('id', '!=', -1))] if 'party_domain' not in cls.party.depends: cls.party.depends.append('party_domain') + cls.product.states['readonly'] = Or( + Eval('invoice_state') != 'draft', + Bool(Eval('lims_service_sample'))) + cls.product.depends.append('lims_service_sample') @classmethod def delete(cls, lines):