Reviewers: bch,
Please review this at http://codereview.appspot.com/124089 Affected files: M tryton/gui/window/view_form/model/field.py M tryton/gui/window/view_tree/view_tree.py Index: tryton/gui/window/view_form/model/field.py =================================================================== --- a/tryton/gui/window/view_form/model/field.py +++ b/tryton/gui/window/view_form/model/field.py @@ -218,6 +218,14 @@ class FloatField(CharField): + def set(self, model, value, modified=False): + if isinstance(self.attrs.get('digits'), str): + digits = model.expr_eval(self.attrs['digits']) + else: + digits = self.attrs.get('digits', (12, 2)) + value = round(value, digits[1]) + return super(FloatField, self).set(model, value, modified=modified) + def set_client(self, model, value, force_change=False): internal = model.value[self.name] prev_modified = model.modified Index: tryton/gui/window/view_tree/view_tree.py =================================================================== --- a/tryton/gui/window/view_tree/view_tree.py +++ b/tryton/gui/window/view_tree/view_tree.py @@ -128,7 +128,7 @@ if isinstance(digits, str): digits = eval(digits, obj) obj[field] = locale.format('%.' + str(digits[1]) + 'f', - obj[field] or 0.0, True) + round(obj[field] or 0.0, digits[1]), True) elif field_type in ('integer',): for obj in res_ids: obj[field] = locale.format('%d', obj[field] or 0, True) --~--~---------~--~----~------------~-------~--~----~ [email protected] mailing list -~----------~----~----~----~------~----~------~--~---
