繁体   English   中英

在odoo 10中发送电子邮件和打印报告冲突

[英]Sending Email and printing report conflicts in odoo 10

我是odoo的新手。 我指的是在odoo中关于插件的一些模块,但是这次我没有找到答案。 我的问题是我已发送电子邮件和打印按钮。 打印按钮可以正常工作,但我的发送电子邮件按钮却不能,并且错误提示:

File "/home/FlexERP/git/FlexERP/addons/report/models/report.py", line 178, 
in get_pdf
html = self.with_context(context).get_html(docids, report_name, data=data)
   File "/home/FlexERP/git/FlexERP/addons/report/models/report.py", line 
135, 
  in get_html
   return report_model.render_html(docids, data=data)
  File "/home/FlexERP/bitbucket/etsi-
addons/etsi_asset/reports/handover_report.py", line 9, in render_html
    docs = self.env[self.model].browse(self.env.context.get('active_id'))
  File "/home/FlexERP/git/FlexERP/FlexERP/api.py", line 752, in __getitem__
    return self.registry[model_name]._browse((), self)
  File "/home/FlexERP/git/FlexERP/FlexERP/modules/registry.py", line 174, 
in __getitem__
    return self.models[model_name]
KeyError: None

这是我的handover_report.py触发错误

from odoo import fields, api, models

class HandoverReport(models.AbstractModel):
    _name = 'report.etsi_asset.handover_info_temp'

@api.multi
def render_html(self, docids, data=None):
    self.model = self.env.context.get('active_model')
    docs = self.env[self.model].browse(self.env.context.get('active_id'))

    print 'docs', docs

    docargs = {
        'doc_ids': docids,
        'doc_model': 'asset.management.handover',
        'docs': docs,
    }

    return self.env['report'].render('etsi_asset.handover_info_temp', 
    docargs)

但是,如果我在handover_report.py中注释了我的代码,则“发送电子邮件”按钮效果很好

说这条线

line 9, in render_html docs = 
self.env[self.model].browse(self.env.context.get('active_id'))

是一个错误,但我没有发现该代码出了什么问题? 谁能解释我为什么。 Anw我还在努力。 找人可以帮助我。 非常感谢。 同样,我是odoo的新手。

您可以像这样尝试render_html ...

@api.model
    def render_html(self, docids, data=None):
        self.model = self.env.context.get('active_model')
        user = self.env["res.users"].browse(self._uid)
        docargs = {
            'doc_ids': self.ids,
            'doc_model': self.model,
            'docs': user,
        }
        return self.env['report'].render('custom_reports.report_salereport', values=docargs)

暂无
暂无

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

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