Openerp 如何在odoo8中重命名合作伙伴分类账报告?

Openerp 如何在odoo8中重命名合作伙伴分类账报告?,openerp,odoo-8,Openerp,Odoo 8,合作伙伴分类账报告名称默认为“account.report\u partnerlegard.pdf”。我想将其更改为客户名称(例如:john.pdf,如果客户名称为john)。如何做到这一点?可以通过复杂的编码实现,但多亏了odoo社区,我们才有了一个名为 通过复杂的编码,您可以通过少量的配置来实现这一点,但多亏了odoo社区,我们才有了一个名为 这将允许您通过少量配置来完成安装 转到设置>操作>报告并搜索合作伙伴分类账 填写下载文件名字段。此字段被评估为jinja2模板,其中对象是要打印的记录

合作伙伴分类账报告名称默认为“account.report\u partnerlegard.pdf”。我想将其更改为客户名称(例如:john.pdf,如果客户名称为john)。如何做到这一点?

可以通过复杂的编码实现,但多亏了odoo社区,我们才有了一个名为


通过复杂的编码,您可以通过少量的配置来实现这一点,但多亏了odoo社区,我们才有了一个名为

这将允许您通过少量配置来完成安装

转到
设置>操作>报告
并搜索
合作伙伴分类账

填写
下载文件名
字段。此字段被评估为jinja2模板,其中
对象
是要打印的记录的浏览记录列表,而
o
是第一条记录。如果您的模型包含名称字段,您可以编写类似于
${o.name}\u report.pdf
的文件名

安装

转到
设置>操作>报告
并搜索
合作伙伴分类账

填写
下载文件名
字段。此字段被评估为jinja2模板,其中
对象
是要打印的记录的浏览记录列表,而
o
是第一条记录。如果您的模型包含名称字段,您可以编写类似于
${o.name}\u report.pdf
的文件名


安装“报告\自定义\文件名”模块,并在报告\路由方法中进行以下更改

def report_routes(self, reportname, docids=None, converter=None, **data):
    cr, uid, context,registry = request.cr, request.uid, request.context,request.registry
    response = super(ReportController, self).report_routes(
        reportname, docids=docids, converter=converter, **data)
    if docids:
        docids = [int(i) for i in docids.split(',')]
    report_xml = http.request.session.model('ir.actions.report.xml')
    report_ids = report_xml.search(
        [('report_name', '=', reportname)])

    options_data = simplejson.loads(data['options'])
    partner_id = options_data.get('ids')
    for report in report_xml.browse(report_ids):
        if not report.download_filename:
            continue
        #objects = http.request.session.model(report.model).browse(docids or [])
        objects = request.registry[report.model].browse(cr, uid, partner_id, context=context)
        customer_name = str(objects.name)
        generated_filename = email_template.mako_template_env\
            .from_string(report.download_filename)\
            .render({
                'objects': objects,
                'o': customer_name,
                'object': objects[:1],
                'ext': report.report_type.replace('qweb-', ''),
            })
        response.headers['Content-Disposition'] = content_disposition(
            generated_filename)
    return response

安装“报告\自定义\文件名”模块,并在报告\路由方法中进行以下更改

def report_routes(self, reportname, docids=None, converter=None, **data):
    cr, uid, context,registry = request.cr, request.uid, request.context,request.registry
    response = super(ReportController, self).report_routes(
        reportname, docids=docids, converter=converter, **data)
    if docids:
        docids = [int(i) for i in docids.split(',')]
    report_xml = http.request.session.model('ir.actions.report.xml')
    report_ids = report_xml.search(
        [('report_name', '=', reportname)])

    options_data = simplejson.loads(data['options'])
    partner_id = options_data.get('ids')
    for report in report_xml.browse(report_ids):
        if not report.download_filename:
            continue
        #objects = http.request.session.model(report.model).browse(docids or [])
        objects = request.registry[report.model].browse(cr, uid, partner_id, context=context)
        customer_name = str(objects.name)
        generated_filename = email_template.mako_template_env\
            .from_string(report.download_filename)\
            .render({
                'objects': objects,
                'o': customer_name,
                'object': objects[:1],
                'ext': report.report_type.replace('qweb-', ''),
            })
        response.headers['Content-Disposition'] = content_disposition(
            generated_filename)
    return response

我使用了${o.name}\u report.pdf,但文件名为False\u report。pdf@Bhanukiran这意味着您报告的对象没有字段
name
@WaIR。按照我的回答所建议的更改后,问题得到了解决,我使用了${o.name}_report.pdf,但我得到的文件名为False\u report。pdf@Bhanukiran这意味着您在按照我的回答进行更改后,报告对象没有字段
name
@WaIR,问题已解决请您更加具体。编辑您的问题并添加可用的对象值。对象值为null请您更加具体。编辑您的问题并添加可用的对象值。对象值为null