From 879b3a0cbc69272dd36da4ef376f0ad82beaf621 Mon Sep 17 00:00:00 2001 From: Nabin Hait Date: Tue, 28 Jan 2014 14:58:31 +0530 Subject: [PATCH 1/2] Set expense account for perpetual inventory only non-opening invoices --- .../doctype/purchase_invoice/purchase_invoice.py | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/accounts/doctype/purchase_invoice/purchase_invoice.py b/accounts/doctype/purchase_invoice/purchase_invoice.py index fcd6846507..9b1ddb77e0 100644 --- a/accounts/doctype/purchase_invoice/purchase_invoice.py +++ b/accounts/doctype/purchase_invoice/purchase_invoice.py @@ -32,6 +32,9 @@ class DocType(BuyingController): }] def validate(self): + if not self.doc.is_opening: + self.doc.is_opening = 'No' + super(DocType, self).validate() self.po_required() @@ -45,15 +48,8 @@ class DocType(BuyingController): self.check_for_stopped_status() self.validate_with_previous_doc() self.validate_uom_is_integer("uom", "qty") - - if not self.doc.is_opening: - self.doc.is_opening = 'No' - self.set_aging_date() - - #set against account for credit to self.set_against_expense_account() - self.validate_write_off_account() self.update_raw_material_cost() self.update_valuation_rate("entries") @@ -215,7 +211,8 @@ class DocType(BuyingController): against_accounts = [] stock_items = self.get_stock_items() for item in self.doclist.get({"parentfield": "entries"}): - if auto_accounting_for_stock and item.item_code in stock_items: + if auto_accounting_for_stock and item.item_code in stock_items \ + and self.doc.is_opening == 'No': # in case of auto inventory accounting, against expense account is always # Stock Received But Not Billed for a stock item item.expense_head = stock_not_billed_account From c2a585814333dc8823120b8f4dc0b52b03add895 Mon Sep 17 00:00:00 2001 From: Nabin Hait Date: Thu, 30 Jan 2014 10:50:35 +0530 Subject: [PATCH 2/2] Minor fix in accounts receivable report --- .../report/accounts_receivable/accounts_receivable.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/accounts/report/accounts_receivable/accounts_receivable.py b/accounts/report/accounts_receivable/accounts_receivable.py index c826fcbd13..1f24c584b6 100644 --- a/accounts/report/accounts_receivable/accounts_receivable.py +++ b/accounts/report/accounts_receivable/accounts_receivable.py @@ -132,8 +132,8 @@ class AccountsReceivableReport(object): if not hasattr(self, "gl_entries"): conditions, values = self.prepare_conditions() self.gl_entries = webnotes.conn.sql("""select * from `tabGL Entry` - where docstatus < 2 {} order by posting_date, account""".format(conditions), - values, as_dict=True) + where docstatus < 2 {0} order by posting_date, account""".format(conditions), + values, as_dict=True, debug=1) return self.gl_entries @@ -153,8 +153,8 @@ class AccountsReceivableReport(object): if not account_map: webnotes.throw(_("No Customer Accounts found.")) else: - accounts_list = ['"{}"'.format(ac) for ac in account_map] - conditions.append("account in ({})".format(", ".join(accounts_list))) + accounts_list = ['"{0}"'.format(ac) for ac in account_map] + conditions.append("account in ({0})".format(", ".join(accounts_list))) return " and ".join(conditions), values