Yardım

0

How do you specify which language is used in a custom qweb invoice template/report?

Avatar
E.M.

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
Vazgeç
1Cevap
1

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

2Yorumlar
Avatar
Vazgeç
Avatar
E.M.
-

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.