mirror of
https://github.com/bringout/odoomates.git
synced 2026-04-18 03:52:02 +02:00
Partner Ledger: fix PDF filename using _get_report_base_filename method
Remove broken controller override (bypassed by l10n_ba_pdv MRO chain).
Add _get_report_base_filename() method on wizard (l10n_ba_pdv pattern).
Pass report_filename via context for l10n_ba_pdv controller to extract.
🤖 assisted by claude
This commit is contained in:
parent
3d05074af5
commit
aefecb045d
5 changed files with 8 additions and 36 deletions
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
{
|
||||
'name': 'Odoo 16 Accounting Financial Reports',
|
||||
'version': '16.0.2.0.9',
|
||||
'version': '16.0.2.1.1',
|
||||
'category': 'Invoicing Management',
|
||||
'description': 'Accounting Reports For Odoo 16, Accounting Financial Reports, '
|
||||
'Odoo 16 Financial Reports',
|
||||
|
|
|
|||
|
|
@ -1,3 +1 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
from . import main
|
||||
|
|
|
|||
|
|
@ -1,29 +1 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
import json
|
||||
|
||||
from odoo.http import content_disposition, request, route
|
||||
from odoo.addons.web.controllers.report import ReportController
|
||||
|
||||
|
||||
class CustomReportController(ReportController):
|
||||
|
||||
@route()
|
||||
def report_download(self, data, context=None, token=None):
|
||||
response = super().report_download(data, context=context, token=token)
|
||||
|
||||
try:
|
||||
requestcontent = json.loads(data)
|
||||
url = requestcontent[0]
|
||||
|
||||
if 'report_partnerledger' in url and context:
|
||||
ctx = json.loads(context)
|
||||
report_filename = ctx.get('report_filename')
|
||||
if report_filename:
|
||||
response.headers['Content-Disposition'] = content_disposition(
|
||||
report_filename + '.pdf'
|
||||
)
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
return response
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@
|
|||
<field name="report_type">qweb-pdf</field>
|
||||
<field name="report_name">accounting_pdf_reports.report_partnerledger</field>
|
||||
<field name="report_file">accounting_pdf_reports.report_partnerledger</field>
|
||||
<field name="print_report_name">'Kartica partnera ' + ' '.join(object.partner_ids.mapped('name')) if object.partner_ids else 'Kartica partnera'</field>
|
||||
<field name="print_report_name">object._get_report_base_filename()</field>
|
||||
</record>
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -14,6 +14,11 @@ class AccountPartnerLedger(models.TransientModel):
|
|||
"the company currency.")
|
||||
reconciled = fields.Boolean('Reconciled Entries')
|
||||
|
||||
def _get_report_base_filename(self):
|
||||
if self.partner_ids:
|
||||
return _('Kartica partnera') + ' ' + ', '.join(self.partner_ids.mapped('name'))
|
||||
return _('Kartica partnera')
|
||||
|
||||
def _get_report_data(self, data):
|
||||
data = self.pre_print_report(data)
|
||||
data['form'].update({'reconciled': self.reconciled,
|
||||
|
|
@ -22,10 +27,7 @@ class AccountPartnerLedger(models.TransientModel):
|
|||
|
||||
def _print_report(self, data):
|
||||
data = self._get_report_data(data)
|
||||
if self.partner_ids:
|
||||
report_filename = _('Kartica partnera') + ' ' + ', '.join(self.partner_ids.mapped('name'))
|
||||
else:
|
||||
report_filename = _('Kartica partnera')
|
||||
report_filename = self._get_report_base_filename()
|
||||
return self.env.ref(
|
||||
'accounting_pdf_reports.action_report_partnerledger'
|
||||
).with_context(landscape=True, report_filename=report_filename).report_action(self, data=data)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue