diff --git a/account_ebics/wizards/ebics_xfer.py b/account_ebics/wizards/ebics_xfer.py
index 18f97a6..1b9925d 100644
--- a/account_ebics/wizards/ebics_xfer.py
+++ b/account_ebics/wizards/ebics_xfer.py
@@ -141,21 +141,26 @@ class EbicsXfer(models.TransientModel):
avail_formats = self.ebics_config_id.ebics_file_format_ids.filtered(
lambda r: r.type == "down"
)
+ if avail_formats and len(avail_formats) == 1:
+ self.format_id = avail_formats
+ else:
+ self.format_id = False
avail_userids = avail_userids.filtered(
lambda r: r.transaction_rights in ["both", "down"]
)
else: # Upload Form
- avail_formats = self.ebics_config_id.ebics_file_format_ids.filtered(
- lambda r: r.type == "up"
- )
+ if not self.env.context.get("active_model") == "account.payment.order":
+ avail_formats = self.ebics_config_id.ebics_file_format_ids.filtered(
+ lambda r: r.type == "up"
+ )
+ if avail_formats and len(avail_formats) == 1:
+ self.format_id = avail_formats
+ else:
+ self.format_id = False
avail_userids = avail_userids.filtered(
lambda r: r.transaction_rights in ["both", "up"]
)
- if avail_formats and len(avail_formats) == 1:
- self.format_id = avail_formats
- else:
- self.format_id = False
if avail_userids:
if len(avail_userids) == 1:
self.ebics_userid_id = avail_userids
@@ -170,6 +175,8 @@ class EbicsXfer(models.TransientModel):
@api.onchange("upload_data")
def _onchange_upload_data(self):
+ if self.env.context.get("active_model") == "account.payment.order":
+ return
self.upload_fname_dummy = self.upload_fname
self.format_id = False
self._detect_upload_format()
@@ -187,10 +194,6 @@ class EbicsXfer(models.TransientModel):
if len(upload_formats) == 1:
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):
self.ensure_one()
ctx = self._context.copy()
diff --git a/account_ebics/wizards/ebics_xfer.xml b/account_ebics/wizards/ebics_xfer.xml
index a531c95..ceb9905 100644
--- a/account_ebics/wizards/ebics_xfer.xml
+++ b/account_ebics/wizards/ebics_xfer.xml
@@ -94,8 +94,9 @@
diff --git a/account_ebics_payment_order/__manifest__.py b/account_ebics_payment_order/__manifest__.py
index f4da019..88c8fce 100644
--- a/account_ebics_payment_order/__manifest__.py
+++ b/account_ebics_payment_order/__manifest__.py
@@ -3,7 +3,7 @@
{
"name": "Upload Payment Order via EBICS",
- "version": "17.0.1.0.0",
+ "version": "17.0.1.0.1",
"license": "LGPL-3",
"author": "Noviat",
"website": "https://www.noviat.com",
diff --git a/account_ebics_payment_order/models/account_payment_order.py b/account_ebics_payment_order/models/account_payment_order.py
index 030f313..334cc4d 100644
--- a/account_ebics_payment_order/models/account_payment_order.py
+++ b/account_ebics_payment_order/models/account_payment_order.py
@@ -1,4 +1,4 @@
-# Copyright 2009-2023 Noviat.
+# Copyright 2009-2024 Noviat.
# License LGPL-3 or later (http://www.gnu.org/licenses/lgpl).
from odoo import _, models
@@ -10,6 +10,18 @@ class AccountPaymentOrder(models.Model):
def ebics_upload(self):
self.ensure_one()
+ ctx = self.env.context.copy()
+ ebics_format_id = self.payment_mode_id.ebics_format_id
+ if not ebics_format_id:
+ raise UserError(
+ _("Missing EBICS File Format setting on your Payment Mode.")
+ )
+ ctx.update(
+ {
+ "active_model": self._name,
+ "default_format_id": ebics_format_id.id,
+ }
+ )
attach = self.env["ir.attachment"].search(
[("res_model", "=", self._name), ("res_id", "=", self.id)]
)
@@ -44,7 +56,6 @@ class AccountPaymentOrder(models.Model):
"for the selected bank."
)
)
- ctx = self.env.context.copy()
if len(ebics_config) == 1:
ctx["default_ebics_config_id"] = ebics_config.id
ctx.update(
@@ -58,7 +69,6 @@ class AccountPaymentOrder(models.Model):
ebics_xfer = self.env["ebics.xfer"].with_context(**ctx).create({})
ebics_xfer._onchange_ebics_config_id()
ebics_xfer._onchange_upload_data()
- ebics_xfer._onchange_format_id()
view = self.env.ref("account_ebics.ebics_xfer_view_form_upload")
act = {
"name": _("EBICS Upload"),
diff --git a/account_ebics_payment_order/views/account_payment_mode.xml b/account_ebics_payment_order/views/account_payment_mode.xml
new file mode 100644
index 0000000..76d66e5
--- /dev/null
+++ b/account_ebics_payment_order/views/account_payment_mode.xml
@@ -0,0 +1,18 @@
+
+
+
+
+ account.payment.mode.form
+ account.payment.mode
+
+
+
+
+
+
+
+
+