Help

0

Print a report from python method

I want to print a report from a python method and the code i actually have isn't working, i got a error like this :

File "/odoo/odoo-server/odoo/modules/registry.py", line 181, in __getitem__

    return self.models[model_name]

KeyError: 'report'


and the code i have is :

 @api.multi

    def sample_report_from_method(self):

        return self.env['report'].get_action('custom.custom_report_demo')


Avatar
Discard
2 Answers
2
Avatar
Niyas Raphy
Best Answer

Hi,

Are you using Odoo v11?  In the V11 there are some changes in the report section,  report module has been removed along with report object. For this reason, you are facing this error.


In v11, you can call the report using report_action  as follow:

self.env.ref('custom_report_name').report_action(self, data=data)


For more have a look at this answer too: https://www.odoo.com/forum/help-1/question/report-in-odoo-11-125808#answer-127020

For calling a python function and return data to the report template see this video : How To Call A Python Function While Printing PDF Report in Odoo

Thanks

 

Avatar
Discard
0
Avatar
Priya
Best Answer

Please anyone can help me in this related to odoo11 report printing on website.

Please click on link:

https://stackoverflow.com/questions/52829692/how-to-print-report-from-website-in-odoo11

Avatar
Discard