diff --git a/openerp/addons/base/res/res_currency.py b/openerp/addons/base/res/res_currency.py index 957c0fb625f..46b4dd45207 100644 --- a/openerp/addons/base/res/res_currency.py +++ b/openerp/addons/base/res/res_currency.py @@ -36,8 +36,12 @@ class res_currency(osv.osv): else: date = time.strftime('%Y-%m-%d') date = date or time.strftime('%Y-%m-%d') + currency_rate_type_id = context.get('currency_rate_type_id', 0) for id in ids: - cr.execute("SELECT currency_id, rate FROM res_currency_rate WHERE currency_id = %s AND name <= %s ORDER BY name desc LIMIT 1" ,(id, date)) + cr.execute("SELECT currency_id, rate FROM res_currency_rate "\ + "WHERE currency_id = %s AND name <= %s AND currency_rate_type_id = %s "\ + "ORDER BY name desc LIMIT 1" ,(id, date, currency_rate_type_id)) + if cr.rowcount: id, rate = cr.fetchall()[0] res[id] = rate