From 9d0569a69090803fade5e1c2496018dfa07a857f Mon Sep 17 00:00:00 2001 From: Rushabh Mehta Date: Tue, 13 Nov 2012 11:42:42 +0530 Subject: [PATCH] general_ledger: show against account, set title, and show is_opening as opening --- .../page/accounts_browser/accounts_browser.js | 3 +- .../page/general_ledger/general_ledger.js | 43 +++++++++++++++++-- public/js/toolbar.js | 6 +-- 3 files changed, 42 insertions(+), 10 deletions(-) diff --git a/accounts/page/accounts_browser/accounts_browser.js b/accounts/page/accounts_browser/accounts_browser.js index e5a30b0bcc..fb011ca624 100644 --- a/accounts/page/accounts_browser/accounts_browser.js +++ b/accounts/page/accounts_browser/accounts_browser.js @@ -135,8 +135,7 @@ erpnext.AccountsChart = Class.extend({ show_ledger: function() { var me = this; var node = me.selected_node(); - wn.set_route('Report', 'GL Entry', 'General Ledger', - this.ctype + '=' + node.data('label')); + wn.set_route("general-ledger", "account=" + node.data('label')); }, new_node: function() { if(this.ctype=='Account') { diff --git a/accounts/page/general_ledger/general_ledger.js b/accounts/page/general_ledger/general_ledger.js index 8e7061901c..ecc8626a8b 100644 --- a/accounts/page/general_ledger/general_ledger.js +++ b/accounts/page/general_ledger/general_ledger.js @@ -45,6 +45,9 @@ erpnext.GeneralLedger = wn.views.GridReport.extend({ open_btn: true, doctype: "'Account'" }}, + {id: "against_accont", name: "Against Account", field: "against_account", + width: 240, hidden: this.is_default("account")}, + {id: "debit", name: "Debit", field: "debit", width: 100, formatter: this.currency_formatter}, {id: "credit", name: "Credit", field: "credit", width: 100, @@ -139,9 +142,11 @@ erpnext.GeneralLedger = wn.views.GridReport.extend({ var data = wn.report_dump.data["GL Entry"]; var out = []; - if(!this.account_by_name) + if(!this.account_by_name) { this.account_by_name = this.make_name_map(wn.report_dump.data["Account"]); - + this.make_voucher_acconuts_map(); + } + var me = this; var from_date = dateutil.str_to_obj(this.from_date); @@ -167,7 +172,7 @@ erpnext.GeneralLedger = wn.views.GridReport.extend({ : true) && (me.voucher_no ? item.voucher_no==me.voucher_no : true)) { var date = dateutil.str_to_obj(item.posting_date); - if(date < from_date) { + if(date < from_date || item.is_opening=="Yes") { opening.debit += item.debit; opening.credit += item.credit; } else if(date <= to_date) { @@ -175,7 +180,12 @@ erpnext.GeneralLedger = wn.views.GridReport.extend({ totals.credit += item.credit; } - if(me.apply_filters(item)) { + if(me.account) { + item.against_account = me.voucher_accounts[item.voucher_type + ":" + + item.voucher_no][(item.debit > 0 ? "credits" : "debits")].join(", "); + } + + if(me.apply_filters(item) && item.is_opening=="No") { out.push(item); } } @@ -189,6 +199,8 @@ erpnext.GeneralLedger = wn.views.GridReport.extend({ if(!me.is_default("account")) { + me.appframe.set_title("General Ledger: " + me.account); + if(me.account_by_name[me.account].debit_or_credit == "Debit") { opening.debit -= opening.credit; opening.credit = 0; closing.debit -= closing.credit; closing.credit = 0; @@ -198,11 +210,34 @@ erpnext.GeneralLedger = wn.views.GridReport.extend({ } var out = [opening].concat(out).concat([totals, closing]); } else { + me.appframe.set_title("General Ledger"); var out = out.concat([totals]); } this.data = out; }, + + make_voucher_acconuts_map: function() { + this.voucher_accounts = {}; + var data = wn.report_dump.data["GL Entry"]; + for(var i=0, j=data.length; i 0) { + va.debits.push(gl.account); + } else { + va.credits.push(gl.account); + } + } + }, + get_plot_data: function() { var data = []; var me = this; diff --git a/public/js/toolbar.js b/public/js/toolbar.js index 6b2ef9a53a..17f79dc589 100644 --- a/public/js/toolbar.js +++ b/public/js/toolbar.js @@ -87,11 +87,9 @@ erpnext.toolbar.add_modules = function() { erpnext.toolbar.set_new_comments = function(new_comments) { var navbar_nc = $('.navbar-new-comments'); - if(wn.container.page && wn.container.page.page_name=="messages") - return; - if(new_comments) { - navbar_nc.text(new_comments); + if(cint(new_comments)) { navbar_nc.addClass('navbar-new-comments-true') + navbar_nc.text(new_comments); } else { navbar_nc.removeClass('navbar-new-comments-true'); navbar_nc.text(0);