Ir al contenido
Menú
Se marcó esta pregunta
1 Responder
12674 Vistas

I have created a custom QWeb report as invoice template. However I do not know how to specify which language the report should use.

What should be done to specify a given language/translation for the used terms and fields?

Thanks

Avatar
Descartar
Mejor respuesta

Hi E.M,

This is specified in the XML file where you've built the report.An example for the quotation report in Odoo:

<template id="report_saleorder"> 
    <t t-call="report.html_container"> 
        <t t-foreach="doc_ids" t-as="doc_id"> 
            <t t-raw="translate_doc(doc_id, doc_model, 'partner_id.lang', 'sale.report_saleorder_document')"/> 
        </t> 
    </t> 
</template>

That t-raw is telling to get the language from the partner which is filled in on the field partner_id.lang. The report will print in that language, provided it is installed and that there is a translation for the report.

If you don't have the language from some field on the form you can also get it from the 'lang' setting. An example:

<template id="my_custom_report">
<t t-call="report.html_container">
<t t-foreach="doc_ids" t-as="doc_id">
<t t-raw="translate_doc(doc_id, doc_model, 'lang', 'aa_maatwerk_wansheng.my_custom_report_document')"/>
</t>
</t>
</template>

Yenthe

Avatar
Descartar
Autor

Thanks Yenthe. The report actually had the t-raw argument specifing to use partner_id.lang which made me check configured language for the partner, which was English. I did not notice/know that report language depends on partner language (which clearly makes sense).

No problem E.M! And now you know. :) Best of luck.

Publicaciones relacionadas Respuestas Vistas Actividad
2
oct 22
28823
0
ago 23
1388
0
nov 22
6559
1
dic 23
18975
0
jun 16
4151