From ab286a89be4fda717ae191cea2d89bb96781a9e8 Mon Sep 17 00:00:00 2001 From: Anand Doshi Date: Tue, 23 Dec 2014 14:54:35 +0530 Subject: [PATCH] [fix] Use df.precision if specified --- frappe/model/meta.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/frappe/model/meta.py b/frappe/model/meta.py index 0a65f5e4c5..3d208a8985 100644 --- a/frappe/model/meta.py +++ b/frappe/model/meta.py @@ -258,9 +258,10 @@ def get_field_precision(df, doc): """get precision based on DocField options and fieldvalue in doc""" from frappe.utils import get_number_format_info - precision = cint(df.precision) or cint(frappe.db.get_default("float_precision")) or 3 + if cint(df.precision): + precision = cint(df.precision) - if df.fieldtype == "Currency": + elif df.fieldtype == "Currency": number_format = None currency = get_field_currency(df, doc) @@ -276,6 +277,9 @@ def get_field_precision(df, doc): decimal_str, comma_str, precision = get_number_format_info(number_format) + else: + precision = cint(frappe.db.get_default("float_precision")) or 3 + return precision def clear_cache(doctype=None):