details: https://code.tryton.org/tryton/commit/0584bf63e7bb
branch: default
user: Cédric Krier <[email protected]>
date: Mon Jun 15 15:25:20 2026 +0200
description:
Allow to customize the storage of invoice report
diffstat:
modules/account_invoice/invoice.py | 21 ++++++++++++---------
1 files changed, 12 insertions(+), 9 deletions(-)
diffs (31 lines):
diff -r ccb26ad8dd0e -r 0584bf63e7bb modules/account_invoice/invoice.py
--- a/modules/account_invoice/invoice.py Mon Sep 07 18:12:38 2026 +0200
+++ b/modules/account_invoice/invoice.py Mon Jun 15 15:25:20 2026 +0200
@@ -3783,15 +3783,18 @@
invoice.invoice_report_cache)
else:
result = super()._execute(records, header, data, action)
- if invoice.invoice_report_versioned:
- format_, data = result
- if isinstance(data, str):
- data = bytes(data, 'utf-8')
- invoice.invoice_report_format = format_
- invoice.invoice_report_cache = \
- Invoice.invoice_report_cache.cast(data)
- invoice.save()
- return result
+ return cls.store(invoice, *result)
+
+ @classmethod
+ def store(cls, invoice, format_, data):
+ if invoice.invoice_report_versioned:
+ if isinstance(data, str):
+ data = bytes(data, 'utf-8')
+ invoice.invoice_report_format = format_
+ invoice.invoice_report_cache = \
+ Invoice.invoice_report_cache.cast(data)
+ invoice.save()
+ return format_, data
@classmethod
def render(cls, *args, **kwargs):