Skip to Content
मेन्यू
This question has been flagged

In my instance of Odoo 15 with Studio I created several PDF reports for the quotes in the sales module. To view these reports I have to click 'print' ('imprimir' in my language) and it downloads the PDF. I need a way that I can view the PDF from the Odoo page without it downloading the PDF file to my PC. Mainly I want that when I press the 'print' button (or it can also be another button) the preview of the PDF report appears on the page instead of downloading as usual


This is what currently happens when I want to see one of those reports:



I'm trying to create a preview of this report with some python code that I got in another odoo forum post:


#In models.py
class report_sale_preview(models.Model):
    _inherit = 'sale.order'
    preview = fields.Html('Report Preview')
    def generate_preview(self):
        html = self.env['report'].get_html(self, 'sale.report_saleorder')
       #html = self.get_html(self, 'sale.report_saleorder')
        self.write({'preview': html})
        return True


But I have this error:

RPC_ERROR

Odoo Server Error

Traceback (most recent call last):

  File "/home/odoo/src/odoo/odoo/addons/base/models/http.py", line 301, in _handle_exception

    raise exception.with_traceback(None) from new_cause

KeyError: 'report'


Avatar
Discard
Author

This is the code in views.xml

<record model="ir.ui.view" id="solt_report_preview_form_view">
<field name="name">sale.order.report.preview.form</field>
<field name="model">sale.order</field>
<field name="inherit_id" ref="sale.view_order_form"/>
<field name="arch" type="xml">
<xpath expr="//page[1]" position="after">
<page string="Report Preview">
<header>
<button name="generate_preview" type="object" string="Vista Previa"/>
</header>
<sheet>
<field name="preview"/>
</sheet>
</page>
</xpath>
</field>
</record>

Related Posts Replies Views Activity
3
जुल॰ 24
6054
0
नव॰ 23
1251
1
दिस॰ 22
3319
1
नव॰ 22
3723
0
अक्तू॰ 22
2551