payment entry fixes

This commit is contained in:
Nabin Hait 2016-07-20 11:26:45 +05:30
parent b1234fa5e8
commit 85648d9bd6
3 changed files with 13 additions and 8 deletions

View File

@ -519,7 +519,7 @@ class JournalEntry(AccountsController):
if (d.party_type, d.party) not in party_balance:
party_balance[(d.party_type, d.party)] = get_balance_on(party_type=d.party_type,
party=d.party, date=self.posting_date)
party=d.party, date=self.posting_date, company=self.company)
d.account_balance = account_balance[d.account]
d.party_balance = party_balance[(d.party_type, d.party)]
@ -553,6 +553,7 @@ def get_default_bank_cash_account(company, account_type=None, mode_of_payment=No
"account_currency": account_details.account_currency,
"account_type": account_details.account_type
})
else: return frappe._dict()
@frappe.whitelist()
def get_payment_entry_against_order(dt, dn, amount=None, debit_in_account_currency=None, journal_entry=False, bank_account=None):
@ -754,7 +755,7 @@ def get_party_account_and_balance(company, party_type, party):
account = get_party_account(party_type, party, company)
account_balance = get_balance_on(account=account)
party_balance = get_balance_on(party_type=party_type, party=party)
party_balance = get_balance_on(party_type=party_type, party=party, company=company)
return {
"account": account,

View File

@ -77,7 +77,7 @@ class PaymentEntry(AccountsController):
if self.party:
if not self.party_balance:
self.party_balance = get_balance_on(party_type=self.party_type,
party=self.party, date=self.posting_date)
party=self.party, date=self.posting_date, company=self.company)
if not self.party_account:
party_account = get_party_account(self.party_type, self.party, self.company)
@ -251,7 +251,7 @@ class PaymentEntry(AccountsController):
self.unallocated_amount = party_amount - self.total_allocated_amount
def set_difference_amount(self):
base_unallocated_amount = self.unallocated_amount * \
base_unallocated_amount = flt(self.unallocated_amount) * \
(self.source_exchange_rate if self.payment_type=="Receive" else self.target_exchange_rate)
base_party_amount = flt(self.base_total_allocated_amount) + flt(base_unallocated_amount)
@ -669,9 +669,10 @@ def get_payment_entry(dt, dn, party_amount=None, bank_account=None, bank_amount=
"outstanding_amount": outstanding_amount,
"allocated_amount": outstanding_amount
})
pe.setup_party_account_field()
pe.set_missing_values()
pe.set_exchange_rate()
pe.set_amounts()
if bank:
pe.set_exchange_rate()
pe.set_amounts()
return pe

View File

@ -53,7 +53,7 @@ def validate_fiscal_year(date, fiscal_year, label=_("Date"), doc=None):
throw(_("{0} '{1}' not in Fiscal Year {2}").format(label, formatdate(date), fiscal_year))
@frappe.whitelist()
def get_balance_on(account=None, date=None, party_type=None, party=None, in_account_currency=True):
def get_balance_on(account=None, date=None, party_type=None, party=None, company=None, in_account_currency=True):
if not account and frappe.form_dict.get("account"):
account = frappe.form_dict.get("account")
if not date and frappe.form_dict.get("date"):
@ -110,6 +110,9 @@ def get_balance_on(account=None, date=None, party_type=None, party=None, in_acco
if party_type and party:
cond.append("""gle.party_type = "%s" and gle.party = "%s" """ %
(frappe.db.escape(party_type), frappe.db.escape(party, percent=False)))
if company:
cond.append("""gle.company = "%s" """ % (frappe.db.escape(company, percent=False)))
if account or (party_type and party):
if in_account_currency: