Merge pull request #3484 from rmehta/bom-search-report
[report] BOM Search
diff --git a/erpnext/accounts/report/financial_statements.py b/erpnext/accounts/report/financial_statements.py
index b4fec98..be2e968 100644
--- a/erpnext/accounts/report/financial_statements.py
+++ b/erpnext/accounts/report/financial_statements.py
@@ -210,7 +210,7 @@
if from_date:
additional_conditions.append("and posting_date >= %(from_date)s")
- gl_entries = frappe.db.sql("""select posting_date, account, debit, credit from `tabGL Entry`
+ gl_entries = frappe.db.sql("""select posting_date, account, debit, credit, is_opening from `tabGL Entry`
where company=%(company)s
{additional_conditions}
and posting_date <= %(to_date)s
diff --git a/erpnext/accounts/report/general_ledger/general_ledger.py b/erpnext/accounts/report/general_ledger/general_ledger.py
index b268156..9f1f560 100644
--- a/erpnext/accounts/report/general_ledger/general_ledger.py
+++ b/erpnext/accounts/report/general_ledger/general_ledger.py
@@ -3,7 +3,7 @@
from __future__ import unicode_literals
import frappe
-from frappe.utils import flt, getdate
+from frappe.utils import flt, getdate, cstr
from frappe import _
def execute(filters=None):
@@ -155,7 +155,7 @@
for gle in gl_entries:
amount = flt(gle.debit, 3) - flt(gle.credit, 3)
if (filters.get("account") or filters.get("party") or filters.get("group_by_account")) \
- and gle.posting_date < from_date:
+ and (gle.posting_date < from_date or cstr(gle.is_opening) == "Yes"):
gle_map[gle.account].opening += amount
if filters.get("account") or filters.get("party"):
opening += amount
diff --git a/erpnext/accounts/report/trial_balance/trial_balance.py b/erpnext/accounts/report/trial_balance/trial_balance.py
index 8187601..2571751 100644
--- a/erpnext/accounts/report/trial_balance/trial_balance.py
+++ b/erpnext/accounts/report/trial_balance/trial_balance.py
@@ -90,7 +90,7 @@
where
company=%(company)s
{additional_conditions}
- and posting_date < %(from_date)s
+ and (posting_date < %(from_date)s or ifnull(is_opening, 'No') = 'Yes')
and account in (select name from `tabAccount` where report_type=%(report_type)s)
group by account""".format(additional_conditions=additional_conditions),
{
@@ -128,16 +128,21 @@
for d in accounts:
d.update(init.copy())
+ # add opening
+ d["opening_debit"] = opening_balances.get(d.name, {}).get("opening_debit", 0)
+ d["opening_credit"] = opening_balances.get(d.name, {}).get("opening_credit", 0)
+
for entry in gl_entries_by_account.get(d.name, []):
- d["debit"] += flt(entry.debit)
- d["credit"] += flt(entry.credit)
+ if entry.is_opening == "Yes" and d.root_type in ("Asset", "Liability", "Equity"):
+ d["opening_debit"] += flt(entry.debit)
+ d["opening_credit"] += flt(entry.credit)
+ else:
+ d["debit"] += flt(entry.debit)
+ d["credit"] += flt(entry.credit)
total_row["debit"] += d["debit"]
total_row["credit"] += d["credit"]
- # add opening
- d["opening_debit"] = opening_balances.get(d.name, {}).get("opening_debit", 0)
- d["opening_credit"] = opening_balances.get(d.name, {}).get("opening_credit", 0)
return total_row
diff --git a/erpnext/setup/doctype/naming_series/naming_series.py b/erpnext/setup/doctype/naming_series/naming_series.py
index dc7a90c..81a4c4e 100644
--- a/erpnext/setup/doctype/naming_series/naming_series.py
+++ b/erpnext/setup/doctype/naming_series/naming_series.py
@@ -26,7 +26,8 @@
except frappe.DoesNotExistError:
continue
- prefixes = prefixes + "\n" + options
+ if options:
+ prefixes = prefixes + "\n" + options
prefixes.replace("\n\n", "\n")
prefixes = "\n".join(sorted(prefixes.split()))