我有一个自定义向导,其中包含以下字段:“file_name”(Char)、“model_id”(活动模型)、“content_report”(html)。 我在此向导中添加了一个打印按钮。 当我单击此按钮时,我想生成名称 = "file_name" 和报告内容 = "content_report" 的报告,而不使用报告模板。只用Python代码?
我该怎么做? 请问有什么帮助吗?
谢谢。
您可以使用 _prepare_html 和 _run_wkhtmltopdf 函数来打印 qweb 报告。
示例:
def render_html(self):
self.ensure_one()
action_report = self.env['ir.actions.report']
bodies, html_ids, header, footer, specific_paperformat_args = action_report._prepare_html(self.content_report)
pdf_content = action_report._run_wkhtmltopdf(
bodies,
report_ref=None,
header=header,
footer=footer,
landscape=False,
specific_paperformat_args=specific_paperformat_args,
set_viewport_size=False,
)
self.update({'file_content': base64.b64encode(pdf_content)})
您的 HTML 应包含在
main
标签中