コンテンツへスキップ
メニュー
この質問にフラグが付けられました
2 返信
14679 ビュー

I'm trying to use report parser, but it always pop an error 

ValueError  The _name attribute report.test_module.report_test_doc is not valid
I searched that your report name is use for the parser _template and _name in order to be used by Odoo. It doesn't show the error if I remove the test_module, but the hello() is not callable.


report.xml


<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<report
id="eport_monthly_pdc"
string="Monthly report of PDC"
model="account.voucher"
report_type="qweb-pdf"
name="test_module.report_test_doc"
file="test_module.report_test_doc"
/>
</data>
</openerp>


report_parser.py


from openerp import api, models
from openerp.report import report_sxw
import time
class report_parser(report_sxw.rml_parse):
def __init__(self, cr, uid, name, context):
super(report_parser, self).__init__(cr, uid, name, context=context)
self.localcontext.update({
'time': time,
'hello_world': self._hello,
})
def _hello(self):
return "Hello World!"

class report_parser_test(models.AbstractModel):
_name = 'report.test_module.report_test_doc'
_inherit = 'report.abstract_report'
_template = 'test_module.report_test_doc'
_wrapped_report_class = pdc_report_parser


アバター
破棄
最善の回答

I have same problem with you . Can i help me ?

I resolved it!
 My problem:

Name folder of module UPPERCASE raise this error in Odoo11.
Ex: _name = 'report.Name_Module.report_name'

アバター
破棄
最善の回答
use this code in report_parser.py file.
_wrapped_report_class = report_parser
アバター
破棄
関連投稿 返信 ビュー 活動
0
3月 16
5231
1
3月 16
11728
1
4月 25
1176
2
3月 25
1312
4
11月 24
7042