From 4f62a65b1d178f1a78b1511b1bfba8b4e564b7ad Mon Sep 17 00:00:00 2001 From: Raphael Collet Date: Mon, 16 Jan 2017 17:21:40 +0100 Subject: [PATCH] [FIX] fields: on monetary fields, allow `x_currency_id` as currency field OPW 704684 --- openerp/fields.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/openerp/fields.py b/openerp/fields.py index 635d5db10ad..464c951a757 100644 --- a/openerp/fields.py +++ b/openerp/fields.py @@ -1157,13 +1157,14 @@ class Monetary(Field): _column_currency_field = property(attrgetter('currency_field')) _column_group_operator = property(attrgetter('group_operator')) - def _setup_regular_base(self, model): - super(Monetary, self)._setup_regular_base(model) - if not self.currency_field: - self.currency_field = 'currency_id' - def _setup_regular_full(self, model): super(Monetary, self)._setup_regular_full(model) + if not self.currency_field: + # pick a default, trying in order: 'currency_id', 'x_currency_id' + if 'currency_id' in model._fields: + self.currency_field = 'currency_id' + elif 'x_currency_id' in model._fields: + self.currency_field = 'x_currency_id' assert self.currency_field in model._fields, \ "Field %s with unknown currency_field %r" % (self, self.currency_field)