Party model patch fix
This commit is contained in:
parent
c91a9e5231
commit
72f71836d7
@ -19,15 +19,17 @@ def create_receivable_payable_account():
|
|||||||
receivable_payable_accounts = frappe._dict()
|
receivable_payable_accounts = frappe._dict()
|
||||||
|
|
||||||
def _create_account(args):
|
def _create_account(args):
|
||||||
account = frappe.new_doc("Account")
|
if not frappe.db.get_value("Account",
|
||||||
account.is_group = 0
|
{"account_name": args["account_name"], "company": args["company"]}):
|
||||||
account.update(args)
|
account = frappe.new_doc("Account")
|
||||||
account.insert()
|
account.is_group = 0
|
||||||
|
account.update(args)
|
||||||
|
account.insert()
|
||||||
|
|
||||||
frappe.db.set_value("Company", args["company"], ("default_receivable_account"
|
frappe.db.set_value("Company", args["company"], ("default_receivable_account"
|
||||||
if args["account_type"]=="Receivable" else "default_payable_account"), account.name)
|
if args["account_type"]=="Receivable" else "default_payable_account"), account.name)
|
||||||
|
|
||||||
receivable_payable_accounts.setdefault(args["company"], {}).setdefault(args["account_type"], account.name)
|
receivable_payable_accounts.setdefault(args["company"], {}).setdefault(args["account_type"], account.name)
|
||||||
|
|
||||||
for company in frappe.db.sql_list("select name from tabCompany"):
|
for company in frappe.db.sql_list("select name from tabCompany"):
|
||||||
_create_account({
|
_create_account({
|
||||||
@ -47,8 +49,11 @@ def create_receivable_payable_account():
|
|||||||
return receivable_payable_accounts
|
return receivable_payable_accounts
|
||||||
|
|
||||||
def get_parent_account(company, master_type):
|
def get_parent_account(company, master_type):
|
||||||
parent_account = frappe.db.get_value("Company", company,
|
parent_account = None
|
||||||
"receivables_group" if master_type=="Customer" else "payables_group")
|
|
||||||
|
if "receivables_group" in frappe.db.get_table_columns("Company"):
|
||||||
|
parent_account = frappe.db.get_value("Company", company,
|
||||||
|
"receivables_group" if master_type=="Customer" else "payables_group")
|
||||||
if not parent_account:
|
if not parent_account:
|
||||||
parent_account = frappe.db.get_value("Account", {"company": company,
|
parent_account = frappe.db.get_value("Account", {"company": company,
|
||||||
"account_name": "Accounts Receivable" if master_type=="Customer" else "Accounts Payable"})
|
"account_name": "Accounts Receivable" if master_type=="Customer" else "Accounts Payable"})
|
||||||
@ -73,7 +78,8 @@ def set_party_in_jv_and_gl_entry(receivable_payable_accounts):
|
|||||||
return
|
return
|
||||||
|
|
||||||
for dt in ["Journal Entry Account", "GL Entry"]:
|
for dt in ["Journal Entry Account", "GL Entry"]:
|
||||||
records = frappe.db.sql("""select name, account from `tab%s` where account in (%s)""" %
|
records = frappe.db.sql("""select name, account from `tab%s`
|
||||||
|
where account in (%s) and ifnull(party, '') != ''""" %
|
||||||
(dt, ", ".join(['%s']*len(account_map))), tuple(account_map.keys()), as_dict=1)
|
(dt, ", ".join(['%s']*len(account_map))), tuple(account_map.keys()), as_dict=1)
|
||||||
for i, d in enumerate(records):
|
for i, d in enumerate(records):
|
||||||
account_details = account_map.get(d.account, {})
|
account_details = account_map.get(d.account, {})
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user