繁体   English   中英

"为什么我在尝试生成报告时得到 AttributeError: 'ir.ui.menu' object has no attribute 'report_action'?"

[英]why do I get AttributeError: 'ir.ui.menu' object has no attribute 'report_action' when trying to generate report?

Sooo,我尝试使用操作向导生成报告,但我总是得到“AttributeError:'ir.ui.menu'对象没有属性'report_action'”错误,这仅在我尝试通过向导生成报告时发生,当我使用打印按钮,它一直在工作,我已经尝试关注这篇文章, 这篇文章但没有,我仍然得到错误。

这是我的代码片段:
模块名称:hotel_promo
Python代码

from odoo import models, fields

class hotelreport(models.TransientModel):
    _name = 'hotel.report.wizard'

    employee = fields.Many2one('res.users', string="Employee")
    from_date = fields.Date(string="Starting Date")
    to_date = fields.Date(string="Ending Date")

    def action_print_report(self):
        data = {
            'start_date': self.from_date,
            'end_date': self.to_date,
            'employee': self.employee.id
        }
        return self.env.ref('hotel_promo.print_report').report_action(self, data=data)

报告.xml

<?xml version="1.0" encoding="utf-8"?>
<odoo>
        <record id="print_report" model="ir.actions.report">
                <field name="name">Hotel Report</field>
                <field name="model">hotel.report.wizard</field>
                <field name="report_type">qweb-pdf</field>
                <field name="report_name">hotel_promo.report_hotel</field>
                <field name="report_file">hotel_promo.report_hotel</field>
                <field name="binding_model_id" ref="model_hotel_report"/>
                <field name="binding_type">report</field>
        </record>
</odoo>

报告模板

<?xml version="1.0" encoding="utf-8"?>
<odoo>
    <template id="report_hotel">
        <t t-call="web.html_container">
            <t t-call="web.external_layout">
                <t t-foreach="docs" t-as="o">
                    <div class="page">
                        <div style="padding-bottom:50px !important;" class="oe_structure"/>
                        <h2 align="center">Hotel Report</h2>
                        <table class="table table-condensed">
                            <tr>
                                <td>Month</td>
                            </tr>
                            <tr>
                                <td></td>
                            </tr>
                        </table>
                    </div>
                </t>
            </t>
        </t>
    </template>
</odoo>

向导窗体

<?xml version="1.0" encoding="utf-8" ?>
<odoo>
    <data>
        <record id="print_hotel_report" model="ir.ui.view">
            <field name="name">Hotel Report</field>
            <field name="model">hotel.report.wizard</field>
            <field name="arch" type="xml">
               <form>
                   <group>
                       <group string="Select Employee">
                           <field name="employee"/>
                       </group>
                       <group string="Select Date">
                           <field name="from_date"/>
                           <field name="to_date"/>
                       </group>
                       <footer>
                           <button string="Print Report" name="action_print_report" type="object" class="btn-primary"/>
                           <button string="Discard" class="btn-default" special="cancel"/>
                       </footer>
                    </group>
               </form>
            </field>
        </record>
    </data>
</odoo>

任何人请帮助我

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM