Я пытаюсь создать отчет xlsx
. Я попробовал приведенный ниже код, но получил ошибку:
Traceback (последний вызов был последним):
Файл "/home/shar/Projects/git/odoo/addons/web/controllers/main.py", строка 72, в переносе
вернуть f (* args, ** kwargs)
Файл "/home/shar/Projects/git/odoo/addons/web/controllers/main.py", строка 1485, в индексе
request.session.db, request.session.uid, request.session.password, report_id])
Файл "/home/shar/Projects/git/odoo/odoo/http.py", строка 118, в dispatch_rpc
результат = отправка (метод, параметры)
Файл "/home/shar/Projects/git/odoo/odoo/service/report.py", строка 35, в отправке
res = fn (дБ, uid, * params)
Файл "/home/shar/Projects/git/odoo/odoo/service/report.py", строка 142, в exp_report_get
вернуть _check_report (report_id)
Файл "/home/shar/Projects/git/odoo/odoo/service/report.py", строка 120, в _check_report
поднять UserError ('% s:% s'% (exc.message, exc.traceback))
UserError: (u "Неизвестный тип отчета: xlsx: (, NotImplementedError (u'Неизвестный тип отчета: xlsx ',),)",' ')
Вот мой код:
*. Py
# -*- coding: utf-8 -*-
from odoo.addons.report_xlsx.report.report_xlsx import ReportXlsx
class PartnerXlsx(ReportXlsx):
def generate_xlsx_report(self, workbook, data, partners):
for obj in partners:
report_name = obj.name
# One sheet by partner
sheet = workbook.add_worksheet(report_name[:31])
bold = workbook.add_format({'bold': True})
sheet.write(0, 0, obj.name, bold)
PartnerXlsx('report.module_name.res.partner.xlsx',
'res.partner')
*. XML
<report
id="partner_xlsx"
model="res.partner"
string="Print to XLSX"
report_type="xlsx"
name="res.partner.xlsx"
file="res.partner.xlsx"
attachment_use="False"
/>