diff --git a/openerp/osv/fields.py b/openerp/osv/fields.py index 0dff5ec5d88..d5c84702677 100644 --- a/openerp/osv/fields.py +++ b/openerp/osv/fields.py @@ -228,9 +228,10 @@ class char(_column): def __init__(self, string="unknown", size=None, **args): _column.__init__(self, string=string, size=size or None, **args) - self._symbol_f = _symbol_set_char + # self._symbol_set_char defined to keep the backward compatibility + self._symbol_f = self._symbol_set_char = lambda x: _symbol_set_char(self, x) # use lamda function to be able to get the field size - self._symbol_set = (self._symbol_c, lambda x: _symbol_set_char(self, x)) + self._symbol_set = (self._symbol_c, self._symbol_f) class text(_column): @@ -1089,9 +1090,8 @@ class function(_column): if type == 'char': self._symbol_c = char._symbol_c - self._symbol_f = char._symbol_f - self._symbol_set = (char._symbol_c, lambda x: _symbol_set_char(self, x)) - + self._symbol_f = lambda x: _symbol_set_char(self, x) + self._symbol_set = (self._symbol_c, self._symbol_f) def digits_change(self, cr): if self._type == 'float':