在rml报告中设置两种语言

时间:2013-09-03 11:33:04

标签: python xml report openerp rml

是否可以为每个字段指定语言?例如,报告将是多语言的,因此同一字段需要在同一报告中以两种语言翻译。报告分为两部分,第一部分是一种语言,第二部分是另一种语言。因此,两个部分中的字段是相同的,但它们需要以不同的语言翻译。

我知道有一个函数setLang(),但是使用它两次,由于某种原因,一种语言会覆盖另一种语言。有什么建议吗?

P.S。我在这里问了这个问题:http://help.openerp.com/question/29996/set-two-languages-in-rml-report/,但是没有人回答,所以想知道stackoverflow中的某个人可能会知道它..

2 个答案:

答案 0 :(得分:1)

据我所知,这将有助于以多种货币打印报告,OpenERP有选项

  • 设置 - >配置 - >调用 - >特点 - >允许多种货币

    当我们在OpenERP中打印报告时,通常rml将语言作为seted或者加载或首选,如果我们想要在rml中使用 setLang()函数。

希望这会对你有所帮助

答案 1 :(得分:0)

在rml报告中使用多语言会更容易。

无论如何,OpenERP本地化将处理纯文本/字符串。 (你必须用每种语言的这些小.po翻译文件翻译它)

您必须动态设置要在报告中使用的语言,例如:

[[ setLang(o.partner_id.lang) ]]

此处它将使用合作伙伴的语言(示例来自发票报告)

'o'必须在之前的故事中的某处定义(通常为:[[ repeatIn(objects,'o') ]]) 整个报告现在将使用这种语言。

要格式化数字(十进制标记格式是最好的示例),您必须使用formatLang()函数,如:

formatLang(o.taxed_amount, digits=2)

获取

DE - > 23,25

美国 - > 23.25

或使用货币

formatLang(o.amount_untaxed, digits=2, currency_obj=o.currency_id)

或用于格式化日期/日期时间

formatLang(o.date_invoice, date=True)

OpenERP将尝试使用您在Settings-> Translations-> Languages(v7)

上找到的语言中的语言选项

提示:不使用setLang()OpenERP将使用登录用户的语言。