fix: Pass zero precision as string
This commit is contained in:
parent
57bac6fff8
commit
f46b3d89a9
3 changed files with 12 additions and 25 deletions
|
|
@ -544,17 +544,14 @@ def get_field_precision(df, doc=None, currency=None):
|
|||
"""get precision based on DocField options and fieldvalue in doc"""
|
||||
from frappe.utils import get_number_format_info
|
||||
|
||||
if cint(df.precision):
|
||||
if df.precision:
|
||||
precision = cint(df.precision)
|
||||
|
||||
elif df.fieldtype == "Currency":
|
||||
if df.precision and cint(df.precision) == 0:
|
||||
precision = 0
|
||||
else:
|
||||
precision = cint(frappe.db.get_default("currency_precision"))
|
||||
if not precision:
|
||||
number_format = frappe.db.get_default("number_format") or "#,###.##"
|
||||
decimal_str, comma_str, precision = get_number_format_info(number_format)
|
||||
precision = cint(frappe.db.get_default("currency_precision"))
|
||||
if not precision:
|
||||
number_format = frappe.db.get_default("number_format") or "#,###.##"
|
||||
decimal_str, comma_str, precision = get_number_format_info(number_format)
|
||||
else:
|
||||
precision = cint(frappe.db.get_default("float_precision")) or 3
|
||||
|
||||
|
|
|
|||
|
|
@ -61,13 +61,7 @@ frappe.form.formatters = {
|
|||
},
|
||||
Currency: function (value, docfield, options, doc) {
|
||||
var currency = frappe.meta.get_field_currency(docfield, doc);
|
||||
var precision;
|
||||
|
||||
if (docfield.precision && cint(docfield.precision) === 0) {
|
||||
precision = 0;
|
||||
} else {
|
||||
precision = docfield.precision || cint(frappe.boot.sysdefaults.currency_precision) || 2;
|
||||
}
|
||||
var precision = docfield.precision || cint(frappe.boot.sysdefaults.currency_precision) || 2;
|
||||
|
||||
// If you change anything below, it's going to hurt a company in UAE, a bit.
|
||||
if (precision > 2) {
|
||||
|
|
|
|||
|
|
@ -253,18 +253,14 @@ $.extend(frappe.meta, {
|
|||
|
||||
get_field_precision: function(df, doc) {
|
||||
var precision = null;
|
||||
if (df && cint(df.precision)) {
|
||||
if (df && df.precision) {
|
||||
precision = cint(df.precision);
|
||||
} else if(df && df.fieldtype === "Currency") {
|
||||
if (df.precision && cint(df.precision) === 0) {
|
||||
precision = 0;
|
||||
} else {
|
||||
precision = cint(frappe.defaults.get_default("currency_precision"));
|
||||
if(!precision) {
|
||||
var number_format = get_number_format();
|
||||
var number_format_info = get_number_format_info(number_format);
|
||||
precision = number_format_info.precision;
|
||||
}
|
||||
precision = cint(frappe.defaults.get_default("currency_precision"));
|
||||
if(!precision) {
|
||||
var number_format = get_number_format();
|
||||
var number_format_info = get_number_format_info(number_format);
|
||||
precision = number_format_info.precision;
|
||||
}
|
||||
} else {
|
||||
precision = cint(frappe.defaults.get_default("float_precision")) || 3;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue