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