跳至內容
選單
此問題已被標幟
2 回覆
4375 瀏覽次數

How can I convert the amount to text? This work should not be so difficult. Please get someone to explain in the simplest way these work.

頭像
捨棄

Didn't get exactly what you meant? You want to convert the float value to string?

最佳答案

Example from account_voucher.py:


from openerp.tools.amount_to_text_en import amount_to_text


def _amount_to_text(self, cr, uid, amount, currency_id, context=None):

# Currency complete name is not available in res.currency model

# Exceptions done here (EUR, USD, BRL) cover 75% of cases

# For other currencies, display the currency code

currency = self.pool['res.currency'].browse(cr, uid, currency_id, context=context)

if currency.name.upper() == 'EUR':

currency_name = 'Euro'

elif currency.name.upper() == 'USD':

currency_name = 'Dollars'

elif currency.name.upper() == 'BRL':

currency_name = 'reais'

else:

currency_name = currency.name

#TODO : generic amount_to_text is not ready yet, otherwise language (and country) and currency can be passed

#amount_in_word = amount_to_text(amount, context=context)

return amount_to_text(amount, currency=currency_name)

頭像
捨棄