İçereği Atla
Menü
Bu soru işaretlendi
7 Cevaplar
12581 Görünümler

I have created html field in the form view. Then user will add content in that field. The content will have some field variables of form view same as we declare in email template. Then user will print pdf report and that report should display values instead of the variables.


-Example Html field content :


Hello ${object.employee_id.name},

Your amount ${object.employee_id.amount}


____________________


- PDF Report should contain:


Hello Marks,

Your amount 500



How can I achieve this? Thanks in advance.

Avatar
Vazgeç
Üretici

the problem is not to print the Html field

it is to display the variables that is in this field Html

as the example

En İyi Yanıt

hello Bouabaker, try this (odoo 11):


from odoo.addons.mail.models import mail_template

def method_name(self):

        converted_content = mail_template.mako_template_env.from_string(<your_html_content>).render({'object': object_value,})

        return converted_content

Avatar
Vazgeç
Üretici

Hi Farhat, Thanks ,

but in XML What I put ?

In your report xml file, call the method with:

<t t-raw="method_name()"/>

Hi Farhat, Newbie here

What should i put in object_value ? Thanks

En İyi Yanıt

hello, your code is perfect but while you print the HTML field value into pdf report, print like below code.

<span t-raw="doc.your_html_field"/>


Avatar
Vazgeç
Üretici

thanks Mitul , the problem is to print variable that are in this field HTML ,as the example as in the question

En İyi Yanıt

Hello Bouabaker,

If you want to print your HTML filed in Your PDF report you can add below code :

<span t-field="doc.yourhtmlfiled"/>

i think it's help you.

Avatar
Vazgeç
Üretici

Hi Manish , the problem is not to print the Html field

it is to display the variables that is in this field Html

İlgili Gönderiler Cevaplar Görünümler Aktivite
2
Kas 22
3161
2
May 21
5293
1
Eyl 24
4345
0
Oca 24
1556
0
Oca 24
1249