[FIX]file format setting when EBICS upload from payment order

This commit is contained in:
Luc De Meyer 2024-05-13 22:08:21 +02:00
parent 36ed31dbb7
commit b2c56b7499
4 changed files with 14 additions and 15 deletions

View File

@ -3,7 +3,7 @@
{ {
'name': 'EBICS banking protocol', 'name': 'EBICS banking protocol',
'version': '13.0.1.4.0', 'version': '13.0.1.4.1',
'license': 'LGPL-3', 'license': 'LGPL-3',
'author': 'Noviat', 'author': 'Noviat',
'website': 'www.noviat.com', 'website': 'www.noviat.com',

View File

@ -99,7 +99,8 @@ class EbicsXfer(models.TransientModel):
def _onchange_ebics_config_id(self): def _onchange_ebics_config_id(self):
ebics_userids = self.ebics_config_id.ebics_userid_ids ebics_userids = self.ebics_config_id.ebics_userid_ids
domain = {'ebics_userid_id': [('id', 'in', ebics_userids.ids)]} domain = {'ebics_userid_id': [('id', 'in', ebics_userids.ids)]}
if self._context.get('ebics_download'): ctx = self.env.context
if ctx.get('ebics_download'):
download_formats = self.ebics_config_id.ebics_file_format_ids\ download_formats = self.ebics_config_id.ebics_file_format_ids\
.filtered(lambda r: r.type == 'down') .filtered(lambda r: r.type == 'down')
if len(download_formats) == 1: if len(download_formats) == 1:
@ -114,18 +115,21 @@ class EbicsXfer(models.TransientModel):
if len(transport_users) == 1: if len(transport_users) == 1:
self.ebics_userid_id = transport_users self.ebics_userid_id = transport_users
else: else:
upload_formats = self.ebics_config_id.ebics_file_format_ids\
.filtered(lambda r: r.type == 'up')
if len(upload_formats) == 1:
self.format_id = upload_formats
domain['format_id'] = [('type', '=', 'up'),
('id', 'in', upload_formats.ids)]
if len(ebics_userids) == 1: if len(ebics_userids) == 1:
self.ebics_userid_id = ebics_userids self.ebics_userid_id = ebics_userids
if not ctx.get('active_model') == 'account.payment.order':
upload_formats = self.ebics_config_id.ebics_file_format_ids\
.filtered(lambda r: r.type == 'up')
if len(upload_formats) == 1:
self.format_id = upload_formats
domain['format_id'] = [('type', '=', 'up'),
('id', 'in', upload_formats.ids)]
return {'domain': domain} return {'domain': domain}
@api.onchange('upload_data') @api.onchange('upload_data')
def _onchange_upload_data(self): def _onchange_upload_data(self):
if self.env.context.get('active_model') == 'account.payment.order':
return
self.upload_fname_dummy = self.upload_fname self.upload_fname_dummy = self.upload_fname
self.format_id = False self.format_id = False
self._detect_upload_format() self._detect_upload_format()
@ -139,10 +143,6 @@ class EbicsXfer(models.TransientModel):
if len(upload_formats) == 1: if len(upload_formats) == 1:
self.format_id = upload_formats self.format_id = upload_formats
@api.onchange('format_id')
def _onchange_format_id(self):
self.order_type = self.format_id.order_type
def ebics_upload(self): def ebics_upload(self):
self.ensure_one() self.ensure_one()
ctx = self._context.copy() ctx = self._context.copy()

View File

@ -3,7 +3,7 @@
{ {
'name': 'Upload Payment Order via EBICS', 'name': 'Upload Payment Order via EBICS',
'version': '13.0.1.2.0', 'version': '13.0.1.2.1',
'license': 'LGPL-3', 'license': 'LGPL-3',
'author': 'Noviat', 'author': 'Noviat',
'category': 'Accounting & Finance', 'category': 'Accounting & Finance',

View File

@ -1,4 +1,4 @@
# Copyright 2009-2021 Noviat. # Copyright 2009-2024 Noviat.
# License LGPL-3 or later (http://www.gnu.org/licenses/lpgl). # License LGPL-3 or later (http://www.gnu.org/licenses/lpgl).
from odoo import _, models from odoo import _, models
@ -54,7 +54,6 @@ class AccountPaymentOrder(models.Model):
ebics_xfer = self.env['ebics.xfer'].with_context(ctx).create({}) ebics_xfer = self.env['ebics.xfer'].with_context(ctx).create({})
ebics_xfer._onchange_ebics_config_id() ebics_xfer._onchange_ebics_config_id()
ebics_xfer._onchange_upload_data() ebics_xfer._onchange_upload_data()
ebics_xfer._onchange_format_id()
view = self.env.ref('account_ebics.ebics_xfer_view_form_upload') view = self.env.ref('account_ebics.ebics_xfer_view_form_upload')
act = { act = {
'name': _('EBICS Upload'), 'name': _('EBICS Upload'),