Merge branch 'master' of github.com:webnotes/erpnext
diff --git a/accounts/doctype/sales_invoice/sales_invoice.js b/accounts/doctype/sales_invoice/sales_invoice.js
index 8df91a5..a24e256 100644
--- a/accounts/doctype/sales_invoice/sales_invoice.js
+++ b/accounts/doctype/sales_invoice/sales_invoice.js
@@ -29,6 +29,7 @@
// On Load
// -------
cur_frm.cscript.onload = function(doc,dt,dn) {
+ cur_frm.cscript.manage_rounded_total();
if(!doc.customer && doc.debit_to) wn.meta.get_docfield(dt, 'debit_to', dn).print_hide = 0;
if (doc.__islocal) {
if(!doc.due_date) set_multiple(dt,dn,{due_date:get_today()});
diff --git a/controllers/selling_controller.py b/controllers/selling_controller.py
index 5ff5637..94a56e3 100644
--- a/controllers/selling_controller.py
+++ b/controllers/selling_controller.py
@@ -16,6 +16,7 @@
from __future__ import unicode_literals
import webnotes
+from webnotes.utils import cint
from setup.utils import get_company_currency
from controllers.accounts_controller import AccountsController
@@ -27,8 +28,13 @@
def set_total_in_words(self):
from webnotes.utils import money_in_words
company_currency = get_company_currency(self.doc.company)
+
+ disable_rounded_total = cint(webnotes.conn.get_value("Global Defaults", None,
+ "disable_rounded_total"))
+
if self.meta.get_field("in_words"):
- self.doc.in_words = money_in_words(self.doc.rounded_total, company_currency)
+ self.doc.in_words = money_in_words(disable_rounded_total and
+ self.doc.grand_total or self.doc.rounded_total, company_currency)
if self.meta.get_field("in_words_export"):
- self.doc.in_words_export = money_in_words(self.doc.rounded_total_export,
- self.doc.currency)
\ No newline at end of file
+ self.doc.in_words_export = money_in_words(disable_rounded_total and
+ self.doc.grand_total_export or self.doc.rounded_total_export, self.doc.currency)
\ No newline at end of file
diff --git a/selling/doctype/quotation/quotation.js b/selling/doctype/quotation/quotation.js
index a4d8ee6..cf7b515 100644
--- a/selling/doctype/quotation/quotation.js
+++ b/selling/doctype/quotation/quotation.js
@@ -28,6 +28,7 @@
// ONLOAD
// ===================================================================================
cur_frm.cscript.onload = function(doc, cdt, cdn) {
+ cur_frm.cscript.manage_rounded_total();
if(!doc.quotation_to) hide_field(['customer','customer_address','contact_person','customer_name','lead', 'lead_name', 'address_display', 'contact_display', 'contact_mobile', 'contact_email', 'territory', 'customer_group']);
if(!doc.price_list_name) set_multiple(cdt,cdn,{price_list_name:sys_defaults.price_list_name});
if(!doc.status) set_multiple(cdt,cdn,{status:'Draft'});
diff --git a/selling/doctype/sales_common/sales_common.js b/selling/doctype/sales_common/sales_common.js
index 6a618c9..867a711 100644
--- a/selling/doctype/sales_common/sales_common.js
+++ b/selling/doctype/sales_common/sales_common.js
@@ -182,27 +182,37 @@
if (doc.plc_conversion_rate != 1)
set_multiple(cdt, cdn, {plc_conversion_rate:1})
hide_field(['price_list_currency', 'plc_conversion_rate']);
- }
+ }
}
if (r.message[1] == doc.currency) {
if (doc.conversion_rate != 1)
set_multiple(cdt, cdn, {conversion_rate:1});
hide_field(['conversion_rate', 'grand_total_export', 'in_words_export', 'rounded_total_export']);
- } else unhide_field(['conversion_rate', 'grand_total_export', 'in_words_export', 'rounded_total_export']);
-
+ } else {
+ unhide_field(['conversion_rate', 'grand_total_export', 'in_words_export']);
+ if(!cint(sys_defaults.disable_rounded_total))
+ unhide_field("rounded_total_export");
+ }
if (r.message[1] == doc.price_list_currency) {
if (doc.plc_conversion_rate != 1)
set_multiple(cdt, cdn, {plc_conversion_rate:1});
hide_field('plc_conversion_rate');
} else unhide_field('plc_conversion_rate');
-
cur_frm.cscript.dynamic_label(doc, cdt, cdn, r.message[1], callback1);
}
})
}
}
+cur_frm.cscript.manage_rounded_total = function() {
+ if(cint(sys_defaults.disable_rounded_total)) {
+ cur_frm.set_df_property("rounded_total", "print_hide", 1);
+ cur_frm.set_df_property("rounded_total_export", "print_hide", 1);
+ hide_field(["rounded_total", "rounded_total_export"]);
+ }
+}
+
// TRIGGERS FOR CALCULATIONS
// =====================================================================================================
diff --git a/selling/doctype/sales_order/sales_order.js b/selling/doctype/sales_order/sales_order.js
index 55854b5..9b1df88 100644
--- a/selling/doctype/sales_order/sales_order.js
+++ b/selling/doctype/sales_order/sales_order.js
@@ -28,6 +28,8 @@
cur_frm.cscript.onload = function(doc, cdt, cdn) {
+ cur_frm.cscript.manage_rounded_total();
+
if(!doc.status) set_multiple(cdt,cdn,{status:'Draft'});
if(!doc.transaction_date) set_multiple(cdt,cdn,{transaction_date:get_today()});
if(!doc.price_list_currency) set_multiple(cdt, cdn, {price_list_currency: doc.currency, plc_conversion_rate: 1});
diff --git a/setup/doctype/global_defaults/global_defaults.py b/setup/doctype/global_defaults/global_defaults.py
index 1b93e7e..69961e8 100644
--- a/setup/doctype/global_defaults/global_defaults.py
+++ b/setup/doctype/global_defaults/global_defaults.py
@@ -40,7 +40,8 @@
'account_url':'account_url',
'allow_negative_stock' : 'allow_negative_stock',
'maintain_same_rate' : 'maintain_same_rate',
- 'session_expiry': 'session_expiry'
+ 'session_expiry': 'session_expiry',
+ 'disable_rounded_total': 'disable_rounded_total',
}
class DocType:
diff --git a/setup/doctype/global_defaults/global_defaults.txt b/setup/doctype/global_defaults/global_defaults.txt
index 3344a87..68f6459 100644
--- a/setup/doctype/global_defaults/global_defaults.txt
+++ b/setup/doctype/global_defaults/global_defaults.txt
@@ -1,8 +1,8 @@
[
{
- "creation": "2013-01-29 19:25:56",
+ "creation": "2013-02-19 12:28:27",
"docstatus": 0,
- "modified": "2013-02-13 09:56:28",
+ "modified": "2013-02-20 14:08:59",
"modified_by": "Administrator",
"owner": "Administrator"
},
@@ -27,6 +27,8 @@
"permlevel": 0
},
{
+ "amend": 0,
+ "cancel": 0,
"create": 1,
"doctype": "DocPerm",
"name": "__common__",
@@ -333,6 +335,13 @@
"options": "No\nYes"
},
{
+ "description": "If disable, 'Rounded Total' field will not be visible in any transaction",
+ "doctype": "DocField",
+ "fieldname": "disable_rounded_total",
+ "fieldtype": "Check",
+ "label": "Disable Rounded Total"
+ },
+ {
"doctype": "DocField",
"fieldname": "buying",
"fieldtype": "Section Break",
@@ -409,11 +418,6 @@
"label": "SMS Sender Name"
},
{
- "amend": 0,
- "cancel": 0,
- "doctype": "DocPerm"
- },
- {
"doctype": "DocPerm"
}
]
\ No newline at end of file
diff --git a/stock/doctype/delivery_note/delivery_note.js b/stock/doctype/delivery_note/delivery_note.js
index 09a7de2..a8af107 100644
--- a/stock/doctype/delivery_note/delivery_note.js
+++ b/stock/doctype/delivery_note/delivery_note.js
@@ -27,6 +27,7 @@
// ONLOAD
// ================================================================================================
cur_frm.cscript.onload = function(doc, dt, dn) {
+ cur_frm.cscript.manage_rounded_total();
if(!doc.status) set_multiple(dt,dn,{status:'Draft'});
if(!doc.transaction_date) set_multiple(dt,dn,{transaction_date:get_today()});
if(!doc.posting_date) set_multiple(dt,dn,{posting_date:get_today()});