Files
Odoo-Modules/pdf_print_preview/models/ir_actions_report.py
2026-02-22 01:22:18 -05:00

29 lines
976 B
Python

# -*- coding: utf-8 -*-
from odoo import models, tools
from odoo.exceptions import ValidationError, UserError
import traceback
class Http(models.Model):
_inherit = "ir.actions.report"
def _render_qweb_pdf(self, report_ref, res_ids=None, data=None):
if tools.config['test_enable'] or tools.config['test_file']:
return super()._render_qweb_pdf(report_ref, res_ids=res_ids, data=data)
result = False, False
messageError = False
try:
result = super()._render_qweb_pdf(report_ref, res_ids=res_ids, data=data)
except (UserError, ValidationError) as e:
messageError = str(e)
except Exception as e:
messageError = traceback.format_exc()
if messageError:
report_ref = "pdf_print_preview.report_error_catcher"
data = {'error': messageError}
result = super()._render_qweb_pdf(report_ref, res_ids=[], data=data)
return result