diff --git a/controllers/main.py b/controllers/main.py index 3fe9a57c74cc1c4a513276d26425295c88cc26c4..f6aeb349f0ac8bfd50df67c598f1d4756a64fb41 100644 --- a/controllers/main.py +++ b/controllers/main.py @@ -8,7 +8,7 @@ from io import BytesIO, StringIO from odoo import http from odoo.http import request from odoo.tools.misc import xlwt -from odoo.tools.safe_eval import unsafe_eval +from odoo.tools.safe_eval import safe_eval from odoo.addons.web.controllers.main import content_disposition, serialize_exception @@ -48,7 +48,10 @@ class JournalDatasExport(http.Controller): for line in export_line_ids: row = [] for field in export_id.fields_ids: - value = unsafe_eval(field["field_name"]) + if field["field_name"].startswith('line.'): + value = safe_eval(field["field_name"], {'line': line}, mode="eval") + else: + value = safe_eval(field["field_name"]) row.append(value) lines_to_export.append(row) line.write({"date_export": datetime.now()})