[IMP] improved the code to get the name of currency instead of id

bzr revid: bde@tinyerp.com-20140212114611-et0fw2dlwwjuq39p
This commit is contained in:
Bharat R. Devnani (OpenERP)
2014-02-12 17:16:11 +05:30
parent 7a672f0bb5
commit b0c17397df
+5 -5
View File
@@ -46,19 +46,19 @@ class res_currency(osv.osv):
currency_rate_type = context.get('currency_rate_type_id') or None
# ... and use 'is NULL' instead of '= some-id'.
operator = '=' if currency_rate_type else 'is'
for id in ids:
for currency in self.browse(cr, uid, ids, context=context):
cr.execute('SELECT rate FROM res_currency_rate '
'WHERE currency_id = %s '
'AND name <= %s '
'AND currency_rate_type_id ' + operator + ' %s '
'ORDER BY name desc LIMIT 1',
(id, date, currency_rate_type))
(currency.id, date, currency_rate_type))
if cr.rowcount:
res[id] = cr.fetchone()[0]
res[currency.id] = cr.fetchone()[0]
elif not raise_on_no_rate:
res[id] = 0
res[currency.id] = 0
else:
raise osv.except_osv(_('Error!'),_("No currency rate associated for currency %d for the given period" % (id)))
raise osv.except_osv(_('Error!'),_("No currency rate associated for currency '%s' for the given period" % (currency.name)))
return res
_name = "res.currency"