从销售部门打印发票时如何显示字段,如果报表是从会计部门打印的,如何隐藏该字段?有没有办法从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>发布于 2017-03-08 05:29:06
您可以创建自定义报告或使用自定义报告覆盖现有报告。评估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)https://stackoverflow.com/questions/42653716
复制相似问题