我无法使用报告打印记录,出现错误:
AttributeError: 'report.my_module.certificate_template' object has no attribute 'get_report_values'
以下是我正在使用的代码。
class Reports(models.AbstractModel):
_name = 'report.my_module.certificate_template'
@api.model
def render_html(self, docids, data=None):
report_object = self.env['report']
report = report_object._get_report_from_name('my_module.certificate_template')
docargs = {
'doc_ids': docids,
'doc_model': report.res_partner,
'docs': self,
}
return report_object.render('my_module.certificate_template', docargs)
答案 0 :(得分:1)
您只需要编写方法名称“ get_report_values”。如下所示:
class Reports(models.AbstractModel):
_name = 'report.my_module.certificate_template'
@api.model
def get_report_values(self, docids, data=None):
report_object = self.env['report']
report = report_object._get_report_from_name('my_module.certificate_template')
docargs = {
'doc_ids': docids,
'doc_model': report.res_partner,
'docs': self,
}
return report_object.render('my_module.certificate_template', docargs)
因此,您只需要更改方法名称即可。
希望对您有所帮助。谢谢
答案 1 :(得分:0)
您必须返回如下对象:
@api.model
def get_report_values(self, docids, data=None):
report = self.env['ir.actions.report']._get_report_from_name('your_module.certificate_template')
records = self.env['your_module_name'].browse(self.ids)
return {
'doc_ids': self._ids,
'doc_model': report.model,
'docs': records,
'data': data
}