要创建一个简单的报告,请执行以下操作。
定义报告 xml 文件
/addons/example/views/example_report.xml
通过引用将 xml 文件加载到插件中
/addons/example/__openerp__.py
在数据部分与其他 xml 文件。
'data': ['views/example_report.xml'],
- 更新你的插件。
如果在您插件的列表视图中,您应该能够选择一条记录(选中复选框),然后在更多下拉菜单中运行报告。或者在模型的表单视图中,您还应该能够单击更多并从那里运行报告。
注意:必须正确安装 wkhtmltopdf 才能使其正常工作。wkhtmltopdf.org 上有说明(确保版本至少为 0.12.1)
这是一个简单的 xml 报告定义。假设您有一个虚构模型 example.model_name,其中包含名称 (char) 和子记录 (one2many),并且子记录模型具有 id、name 和 date 字段。
<openerp>
<data>
<report
id="report_example_model_name"
model="example.model_name"
string="Example Report"
name="example.report_example_report_view"
file="example.report_model_name"
report_type="qweb-pdf"/>
<template id="report_example_report_view">
<t t-call="report.html_container">
<!-- REMEMBER, docs is the selected records either in form view or checked in list view (usually). So the line below says use the following template for each record that has been selected. -->
<t t-foreach="docs" t-as="doc">
<t>
<div class="page">
<h1>Report For <t t-esc="doc.name"/></h1>
<table>
<tr>
<th>ID</th>
<th>Name</th>
<th>Date</th>
</tr>
<t t-foreach="doc.subrecord" t-as="o">
<tr>
<td><t t-esc="o.id"/></td>
<td><t t-esc="o.name"/></td>
<td><t t-esc="o.date"/></td>
</tr>
</t>
</table>
</div>
</t>
</t>
</t>
</template>
</data>
</openerp>