Overslaan naar inhoud
Menu
Je moet geregistreerd zijn om te kunnen communiceren met de community.
Deze vraag is gerapporteerd
7 Antwoorden
9841 Weergaven

In email templates the field ${object.amount_total} does not show the set decimal precision.

True / False
1.024,00 € = 1024.0 €

Avatar
Annuleer
Beste antwoord

 Hello Guys,

you can edit your template with following.

${"%.2f" % object.amount_total} 

Avatar
Annuleer
Beste antwoord

formatLang(object.amount_total, currency_obj=currency_object)

I believe you can get currency_object (EURO) from some field in the object, usually from company_id.

-- begin edited answer --

I'm forget to fact that object email template can't access report service. So, pass it to the template. In the model related to the email template define a method, something like this.

def parser(self, cr, uid, ids, context=None):

        report_service = 'dummy_report'

        service = netsvc.LocalService(report_service)
        parser = service.parser(cr, uid, service.name2, context)
        pool = self.pool.get('your.model')
        obj = pool.browse(cr, uid, ids, context) # relative to your model
        parser.set_context(obj, {'model': u'your.model'}, 'pdf') # whatever report type will suffice

        return parser

Then call it in your email template. Now the parser can access formatLang. Furhermore you can access all data to build that report.

I think this method is a little bit aggresive, I hope you can get the idea. I'm willing to see any improvement or new method :D

 

 

 

 

Avatar
Annuleer

It would be great to have formatLang in email templates. But how is it possible? Your example will be displayed as plain text.

Hi, I already edited my answer.

Beste antwoord

I am looking for a solution for that, too. Did anybody succeed in solving the problem by Ben Bernard's advice?

Avatar
Annuleer
Beste antwoord

Hi!

In your mail.template, replace with t-esc="'%.2f' % (object.amount)"

Avatar
Annuleer
Beste antwoord

Because I also encountered this issue, here's a easier work-around :

In your mail.template, replace ${object.amount_total} with ${"%.2f" | format(object.amount_total)}

Enjoy !

Avatar
Annuleer
Gerelateerde posts Antwoorden Weergaven Activiteit
0
dec. 24
8487
3
sep. 24
20374
5
dec. 24
51219
4
jul. 24
9555
36
apr. 23
36836