如何在.xml中定义显示数据在一个页面中(一个在另一个下面)。在我的示例中生成qweb后,数据显示在4 pdf页面上!
示例:
datas = {
'ids': ids,
'model': 'my.model',
'form': data
}
return {
'type': 'ir.actions.report.xml',
'report_name': "my_module.my_report",
'datas': datas,
}
返回:[1,2,3,4]
.XML
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<template id="report_my_document">
<t t-call="report.html_container">
<t t-call="report.external_layout">
<div class="page">
<table class="table table-condensed">
<thead>
<tr>
<th>Name</th>
<th>State</th>
</tr>
</thead>
<tbody>
<tr>
<td><t t-esc="o.name"/></td>
<td><t t-esc="o.state"/></td>
</tr>
</tbody>
</table>
</div>
</t>
</t>
</template>
<template id="report_my">
<t t-call="report.html_container">
<t t-foreach="docs" t-as="o">
<t t-call="my_module.report_my_document"/>
</t>
</t>
</template>
</data>
</openerp>
如何定义foreach以在一个pdf文档中显示数据(thead + 4行)?
答案 0 :(得分:1)
如果每条记录都是表格中的一行,您可能想要更像这样的内容。
<template id="report_my_document">
<t t-call="report.html_container">
<t t-call="report.external_layout">
<div class="page">
<table class="table table-condensed">
<thead>
<tr>
<th>Name</th>
<th>State</th>
</tr>
</thead>
<tbody>
<t t-foreach="docs" t-as="o">
<tr>
<td><t t-esc="o.name"/></td>
<td><t t-esc="o.state"/></td>
</tr>
</t>
</tbody>
</table>
</div>
</t>
</t>
</template>
<template id="report_my">
<t t-call="report.html_container">
<t t-call="my_module.report_my_document"/>
</t>
</template>