fix: incorrect paid amount in accounts receivable summary report
This commit is contained in:
parent
794b6b6c0d
commit
4ed7d035cb
@ -573,13 +573,17 @@ def get_party_shipping_address(doctype, name):
|
|||||||
else:
|
else:
|
||||||
return ''
|
return ''
|
||||||
|
|
||||||
def get_partywise_advanced_payment_amount(party_type="Customer"):
|
def get_partywise_advanced_payment_amount(party_type, posting_date = None):
|
||||||
|
cond = "1=1"
|
||||||
|
if posting_date:
|
||||||
|
cond = "posting_date <= '{0}'".format(posting_date)
|
||||||
|
|
||||||
data = frappe.db.sql(""" SELECT party, sum({0}) as amount
|
data = frappe.db.sql(""" SELECT party, sum({0}) as amount
|
||||||
FROM `tabGL Entry`
|
FROM `tabGL Entry`
|
||||||
WHERE
|
WHERE
|
||||||
party_type = %s and against_voucher is null
|
party_type = %s and against_voucher is null
|
||||||
GROUP BY party"""
|
and {1} GROUP BY party"""
|
||||||
.format(("credit") if party_type == "Customer" else "debit") , party_type)
|
.format(("credit") if party_type == "Customer" else "debit", cond) , party_type)
|
||||||
|
|
||||||
if data:
|
if data:
|
||||||
return frappe._dict(data)
|
return frappe._dict(data)
|
||||||
@ -136,7 +136,8 @@ class AccountsReceivableSummary(ReceivablePayableReport):
|
|||||||
|
|
||||||
partywise_total = self.get_partywise_total(party_naming_by, args)
|
partywise_total = self.get_partywise_total(party_naming_by, args)
|
||||||
|
|
||||||
partywise_advance_amount = get_partywise_advanced_payment_amount(args.get("party_type")) or {}
|
partywise_advance_amount = get_partywise_advanced_payment_amount(args.get("party_type"),
|
||||||
|
self.filters.get("report_date")) or {}
|
||||||
for party, party_dict in iteritems(partywise_total):
|
for party, party_dict in iteritems(partywise_total):
|
||||||
row = [party]
|
row = [party]
|
||||||
|
|
||||||
@ -144,6 +145,8 @@ class AccountsReceivableSummary(ReceivablePayableReport):
|
|||||||
row += [self.get_party_name(args.get("party_type"), party)]
|
row += [self.get_party_name(args.get("party_type"), party)]
|
||||||
|
|
||||||
row += [partywise_advance_amount.get(party, 0)]
|
row += [partywise_advance_amount.get(party, 0)]
|
||||||
|
|
||||||
|
if party_dict.paid_amt > 0:
|
||||||
paid_amt = flt(party_dict.paid_amt - partywise_advance_amount.get(party, 0))
|
paid_amt = flt(party_dict.paid_amt - partywise_advance_amount.get(party, 0))
|
||||||
|
|
||||||
row += [
|
row += [
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user