QWEB报告模板ODOO 10

  • 本文关键字:ODOO 报告 QWEB odoo qweb
  • 更新时间 :
  • 英文 :


如果从销售中打印发票并将其隐藏时,我该如何显示字段?有什么方法可以从QWEB模板访问活动模块?类似于以下代码的内容:

<template id="report_invoice_document" inherit_id="account.report_invoice_document">
    <xpath expr="//div[@class='page']" position="replace">
        <div t-if="o.active_module == account" class="page">
                <!-- Hide Here -->
        </div>
        <div t-else="" class="page">
                <!-- Show Here -->
        </div>
    </xpath>
</template>

您可以使用自定义报告创建自定义报告或覆盖现有报告。评估Python代码中的活动模型,并将论点传递给您的报告进行QWEB评估。您可以像建议的那样将论点传递给QWEB,然后使用建议的代码中使用的完全相同的逻辑。

import logging
_logger = logging.getLogger(__name__)
class YourReport(models.AbstractModel):
    _name = 'report.your_addon.report_template_id'
    @api.multi
    def render_html(self, data=None):
        _logger.info("RUNNING REPORT")
        report_obj = self.env['report']
        report = report_obj._get_report_from_name('your_addon.report_template_id')
        docs = self.env.context.get('active_ids')   
        docargs = {
            'doc_model': report.model,
            'active_model': self.env.context.get('active_model'),
            'docs': docs,
        }
        return report_obj.render('your_addon.report_template_id', docargs)

最新更新