Module account -> source invoice.py ->
def _amount_residual(self, cr, uid, ids, name, args, context=None): res = {} data_inv = self.browse(cr, uid, ids) cur_obj = self.pool.get('res.currency') for inv in data_inv: debit = credit = 0.0 for lines in inv.move_lines: if lines.account_id.company_currency_id.id <> inv.currency_id.id: if lines.debit: debit += cur_obj.compute(cr, uid, lines.account_id.company_currency_id.id, inv.currency_id.id, lines.debit) if lines.credit: credit += cur_obj.compute(cr, uid, lines.account_id.company_currency_id.id, inv.currency_id.id, lines.credit) else: debit += lines.debit credit += lines.credit
if not inv.amount_total: result = 0.0 elif inv.type in ('out_invoice','in_refund'): result = inv.amount_total * (1.0 - credit / (debit + inv.amount_total)) else: result = inv.amount_total * (1.0 - debit / (credit + inv.amount_total)) res[inv.id] = round(result,int(config['price_accuracy'])) return res
Module account -> source invoice.py ->
def _amount_ residual( self, cr, uid, ids, name, args, context=None): get('res. currency' ) id.company_ currency_ id.id <> inv.currency_id.id:
if lines.debit:
debit += cur_obj.compute(cr, uid, lines.account_ id.company_ currency_ id.id, inv.currency_id.id, lines.debit)
if lines.credit:
credit += cur_obj.compute(cr, uid, lines.account_ id.company_ currency_ id.id, inv.currency_id.id, lines.credit)
else:
debit += lines.debit
credit += lines.credit
res = {}
data_inv = self.browse(cr, uid, ids)
cur_obj = self.pool.
for inv in data_inv:
debit = credit = 0.0
for lines in inv.move_lines:
if lines.account_
if not inv.amount_total:
result = 0.0 ,'in_refund' ):
result = inv.amount_total * (1.0 - credit / (debit + inv.amount_total))
result = inv.amount_total * (1.0 - debit / (credit + inv.amount_total))
res[ inv.id] = round(result, int(config[ 'price_ accuracy' ]))
elif inv.type in ('out_invoice'
else:
return res