openerp-india team mailing list archive
-
openerp-india team
-
Mailing list archive
-
Message #17371
[Bug 980967] Re: [6.1] [account_voucher] exchange rate calculation is not working if company currency isn't rate 1
@ Jay Maniar (z3m-jay): Please don't set the status to "Fix Released" the related MP is still Needs review and is not merged in 6.1
Setting the status to fix released means exactly the opposite.
Thanks,
Naresh Soni
** Changed in: openobject-addons
Status: Fix Released => Fix Committed
--
You received this bug notification because you are a member of OpenERP
Indian Team, which is subscribed to OpenERP Addons.
https://bugs.launchpad.net/bugs/980967
Title:
[6.1] [account_voucher] exchange rate calculation is not working if
company currency isn't rate 1
Status in OpenERP Addons (modules):
Fix Committed
Bug description:
In the account_voucher module, the currency rate is not well
calculated. The method that write the account move line is not
correct. It starts at line 227 in account_voucher.py:
def _paid_amount_in_company_currency(self, cr, uid, ids, name, args, context=None):
if not ids: return {}
res = {}
rate = 1.0
for voucher in self.browse(cr, uid, ids, context=context):
if voucher.currency_id:
if voucher.company_id.currency_id.id == voucher.payment_rate_currency_id.id:
rate = 1 / voucher.payment_rate
else:
ctx = context.copy()
ctx.update({'date': voucher.date})
voucher_rate = self.browse(cr, uid, voucher.id, context=ctx).currency_id.rate
company_currency_rate = voucher.company_id.currency_id.rate
rate = voucher_rate * company_currency_rate
res[voucher.id] = voucher.amount / rate
return res
This should be (diff output):
for voucher in self.browse(cr, uid, ids, context=context):
if voucher.currency_id:
if voucher.company_id.currency_id.id == voucher.payment_rate_currency_id.id:
- rate = 1 / voucher.payment_rate
+ rate = voucher.payment_rate
else:
ctx = context.copy()
ctx.update({'date': voucher.date})
voucher_rate = self.browse(cr, uid, voucher.id, context=ctx).currency_id.rate
company_currency_rate = voucher.company_id.currency_id.rate
- rate = voucher_rate * company_currency_rate
- res[voucher.id] = voucher.amount / rate
+ rate = company_currency_rate / voucher_rate
+ res[voucher.id] = voucher.amount * rate
return res
I am posting a merge proposal with this change in a couple of minutes.
There is also a wrong currency_amount value calculation even if you
apply the previous patch. This wrong calculation apply to only some
lines of the move. I will get back on this bug about this later.
To manage notifications about this bug go to:
https://bugs.launchpad.net/openobject-addons/+bug/980967/+subscriptions
References