odoo 9.のウィザードからレポートを生成するための助けが必要です。インターネット上では未完成の例が1つあります。私はすべてのユーザーがres.userを取得したいと思うcreate_date(フィールドres.users)> = date_fromと= < date_to私のウィザーズから。odooのウィザードからレポートを生成する9
マイソース:
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<record id="view_my_wiz_form" model="ir.ui.view">
<field name="name">print.report.form</field>
<field name="model">my.test.report</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Print Report">
<group colspan="4" >
<field name="date_from"/>
<field name="date_to" />
</group>
<group colspan="4" col="6">
<button name="print_report" string="Print Users" type="object"/>
</group>
</form>
</field>
</record>
<record id="action_my_wiz_form" model="ir.actions.act_window">
<field name="name">Print Report</field>
<field name="res_model">my.test.report</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="view_id" ref="view_my_wiz_form"/>
<field name="target">new</field>
</record>
<menuitem name="REPORT" id="menu_my_test_report" action="action_my_wiz_form" sequence="19"/>
</data>
</openerp>
の.pyファイルは
class my_test_report(models.Model):
_name = 'my.test.report'
_description = 'Test Report'
date_from = fields.Date(string = 'From')
date_to = fields.Date(string = 'To')
def print_report(self, cr, uid, ids, context=None):
datas = {}
if context is None:
context = {}
data = self.read(cr, uid, ids,['date_from', 'date_to'], context=context)
date_from = data[0]['date_from']
date_to = data[0]['date_to']
obj = self.pool.get('res.users')
ids = obj.search(cr, uid, [('create_date','>=',date_from),('create_date','<=',date_to)])
print(ids)
datas = {
'ids': ids,
'model': 'res.users',
'form': data
}
return {
'type': 'ir.actions.report.xml',
'report_name': "XXXXXXX,
'datas': datas,
}
HWはの.pyでREPORT_NAMEを作成し、私はres.usersからいくつかのフィールドでXXXXXXXXを入れていますか?
実行コードの後コンソールで
return {
'type': 'ir.actions.report.xml',
'report_name': "XXXXXXX,
'datas': datas,
}
なし得る[3、4]
私は、私は2つのPDFページを取得し、このXML
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<template id="report_sasa_test">
<t t-call="report.html_container">
<t t-set="data_report_margin_top" t-value="12"/>
<t t-set="data_report_header_spacing" t-value="9"/>
<t t-set="data_report_dpi" t-value="110"/>
<t t-foreach="docs" t-as="o">
<div class="page">
<table class="table table-condensed">
<thead>
<tr>
<th>Name</th>
<th>Test</th>
</tr>
</thead>
<tbody>
<tr>
<td><t t-esc="o.name"/></td>
<td><t t-esc="o.name"/></td>
</tr>
</tbody>
</table>
</div>
</t>
</t>
</template>
</odoo>
しかし、後に生成するPDFにしてみてくださいよ1つの行ですべてのデータが1ページに必要--- --- https://postimg.org/image/gbdadtrm5/
どのようにdefiこのレポートはどうですか?あなたがそうでなければ、それを定義しない限り、
など
id | login | signature
3 | 25.01.17 | ---
4 | 25.01.17 | ---
代わりに1件のデータが設定上のhttps://postimg.org/image/rdzyxs7w7/ –
チェック表示されている2種類のPDFページに再びこの例を試すが、 - レポートの>レポートかどうかを確認添付ファイル変数をtrueに設定します。これにより、レポートが再レンダリングされるのではなく、データベースからリロードされます。 –
デフォルトはunceckedです!私は2つのpdfページの両方の変形を再度報告しようとしています! –