From ab0da952b3a7e6099e862425e642fe552661e6d5 Mon Sep 17 00:00:00 2001 From: Guewen Baconnier Date: Wed, 24 May 2023 14:56:49 +0200 Subject: [PATCH] Fix sale order onchange failure on False value --- connector_ecommerce/components/sale_order_onchange.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/connector_ecommerce/components/sale_order_onchange.py b/connector_ecommerce/components/sale_order_onchange.py index fbd8976d..72e16cc3 100644 --- a/connector_ecommerce/components/sale_order_onchange.py +++ b/connector_ecommerce/components/sale_order_onchange.py @@ -18,7 +18,16 @@ def get_new_values(self, record, on_change_result, model=None): if model: column = self.env[model]._fields[fieldname] if column.type == "many2one": - value = value[0] # many2one are tuple (id, name) + if value: + assert ( + isinstance(value, (tuple, list)) and len(value) == 2 + ), ( + "onchange() on model %s " + "should return a tuple with 2 elements " + "(id, name) as value for many2one field %s" + % (model, fieldname) + ) + value = value[0] new_values[fieldname] = value return new_values