Account common get_query

This commit is contained in:
Nabin Hait 2014-06-14 15:26:10 +05:30
parent ccf370f813
commit e1b2b3e995

View File

@ -236,13 +236,21 @@ def get_batch_no(doctype, txt, searchfield, start, page_len, filters):
'page_len': page_len})
def get_account_list(doctype, txt, searchfield, start, page_len, filters):
if isinstance(filters, dict):
if not filters.get("group_or_ledger"):
filters["group_or_ledger"] = "Ledger"
elif isinstance(filters, list):
if "group_or_ledger" not in [d[0] for d in filters]:
filters.append(["Account", "group_or_ledger", "=", "Ledger"])
filter_list = []
return frappe.widgets.reportview.execute("Account", filters = filters,
if isinstance(filters, dict):
for key, val in filters.items():
if isinstance(val, (list, tuple)):
filter_list.append([doctype, key, val[0], val[1]])
else:
filter_list.append([doctype, key, "=", val])
if "group_or_ledger" not in [d[1] for d in filter_list]:
filter_list.append(["Account", "group_or_ledger", "=", "Ledger"])
if searchfield and txt:
filter_list.append([doctype, searchfield, "like", "%%%s%%" % txt])
return frappe.widgets.reportview.execute("Account", filters = filter_list,
fields = ["name", "parent_account"],
limit_start=start, limit_page_length=page_len, as_list=True)