fix: accounts receivable / payable not working if the company is not seletced in filter

This commit is contained in:
Rohit Waghchaure 2019-07-01 11:54:11 +05:30
parent 2d0fd9f519
commit 2fa6224f8f
3 changed files with 7 additions and 4 deletions

View File

@ -8,6 +8,7 @@ frappe.query_reports["Accounts Payable"] = {
"label": __("Company"),
"fieldtype": "Link",
"options": "Company",
"reqd": 1,
"default": frappe.defaults.get_user_default("Company")
},
{

View File

@ -8,6 +8,7 @@ frappe.query_reports["Accounts Receivable"] = {
"label": __("Company"),
"fieldtype": "Link",
"options": "Company",
"reqd": 1,
"default": frappe.defaults.get_user_default("Company")
},
{

View File

@ -541,10 +541,11 @@ class ReceivablePayableReport(object):
conditions.append("""cost_center in (select name from `tabCost Center` where
lft >= {0} and rgt <= {1})""".format(lft, rgt))
accounts = [d.name for d in frappe.get_all("Account",
filters={"account_type": account_type, "company": self.filters.company})]
conditions.append("account in (%s)" % ','.join(['%s'] *len(accounts)))
values += accounts
if self.filters.company:
accounts = [d.name for d in frappe.get_all("Account",
filters={"account_type": account_type, "company": self.filters.company})]
conditions.append("account in (%s)" % ','.join(['%s'] *len(accounts)))
values += accounts
return " and ".join(conditions), values