打印XLSX rep时拒绝访问odoo 10

2024-10-03 02:44:15 发布

您现在位置:Python中文网/ 问答频道 /正文

尝试使用InvoiceReportXls类和generate_xlsx_report方法生成.xlsx报告时,我遇到了一个错误Access denied

让你知道,在我的本地虚拟机上一切都很好地工作,但是当我上传到另一个虚拟机上的代码,它似乎与我的配置相同,我得到了下面的错误。你知道吗

File "/opt/odoo/odoo/addons/base/res/res_users.py", line 506, in check
raise AccessDenied()
AccessDenied: Access denied

sql数据库_导出.py

@api.multi
def execute_query(self):
    datas['form'] = self.read()[0]
    name = 'Export OR'+ ' ' + date
    return {'type': 'ir.actions.report.xml',
            'report_name': 'my_module.my_report_name.xlsx',
            'datas': datas,
            'name': name
            }    

报告_导出.py

from odoo.addons.report_xlsx.report.report_xlsx import ReportXlsx
class InvoiceReportXls(ReportXlsx):
    def execute_query(self,datas):
        query = '''
            SELECT ... from ... 
            '''
        self.env.cr.execute(query,(...,...,),)
        lines = []
        lines = self.env.cr.dictfetchall()
        return lines

     def generate_xlsx_report(self, workbook, data, lines):
         sheet = workbook.add_worksheet('field_')
         #my_xlsx_code ...
InvoiceReportXls('report.my_module.my_report_name.xlsx','account.invoice') 

查看.xml

    <report
        id="export_invoice_xlsx"
        model="account.invoice"
        string=" "
        report_type="xlsx"
        name="my_module.my_report_name.xlsx"
        file="my_module.my_report_name.xlsx"
        attachment_use="False"
    />

Tags: namepyodooselfreportexecutemydef