[IMP]EBICS File Format on Payment Mode

This commit is contained in:
Luc De Meyer 2024-05-12 17:04:49 +02:00
parent 283b6edf78
commit 0a28f1b28b
7 changed files with 51 additions and 8 deletions

View File

@ -48,7 +48,9 @@
<field name="upload_format_ids" invisible="1"/> <field name="upload_format_ids" invisible="1"/>
<field name="format_id" <field name="format_id"
domain="[('id', 'in', upload_format_ids)]" domain="[('id', 'in', upload_format_ids)]"
required="1"/> required="1"
readonly="context.get('active_model') == 'account.payment.order'"
/>
<field name="order_type"/> <field name="order_type"/>
<field name="test_mode" attrs="{'invisible': [('order_type', '!=', 'FUL')]}"/> <field name="test_mode" attrs="{'invisible': [('order_type', '!=', 'FUL')]}"/>
</group> </group>

View File

@ -16,13 +16,13 @@ This module depends upon the following modules (cf. apps.odoo.com):
- account_ebics - account_ebics
- account_payment_order - account_payment_order
Configuration
=============
Set the EBICS File Format on your Payment Modes.
Usage Usage
===== =====
Create your Payment Order and generate the bank file. Create your Payment Order and generate the bank file.
Upload the generated file via the 'EBICS Upload' button on the payment order. Upload the generated file via the 'EBICS Upload' button on the payment order.
Known issues / Roadmap
======================
* Add support for multiple EBICS connections.

View File

@ -1,9 +1,9 @@
# Copyright 2009-2020 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).
{ {
'name': 'Upload Payment Order via EBICS', 'name': 'Upload Payment Order via EBICS',
'version': '13.0.1.1.0', 'version': '13.0.1.2.0',
'license': 'LGPL-3', 'license': 'LGPL-3',
'author': 'Noviat', 'author': 'Noviat',
'category': 'Accounting & Finance', 'category': 'Accounting & Finance',
@ -12,6 +12,7 @@
'account_payment_order'], 'account_payment_order'],
'data': [ 'data': [
'views/account_payment_order.xml', 'views/account_payment_order.xml',
'views/account_payment_mode.xml',
], ],
'installable': True, 'installable': True,
"images": ["static/description/cover.png"], "images": ["static/description/cover.png"],

View File

@ -1 +1,2 @@
from . import account_payment_mode
from . import account_payment_order from . import account_payment_order

View File

@ -0,0 +1,14 @@
# Copyright 2009-2024 Noviat.
# License LGPL-3 or later (http://www.gnu.org/licenses/lpgl).
from odoo import fields, models
class AccountPaymentMode(models.Model):
_inherit = "account.payment.mode"
ebics_format_id = fields.Many2one(
comodel_name="ebics.file.format",
string="EBICS File Format",
domain="[('type', '=', 'up')]",
help="Select EBICS File Format to upload.")

View File

@ -11,6 +11,14 @@ class AccountPaymentOrder(models.Model):
def ebics_upload(self): def ebics_upload(self):
self.ensure_one() self.ensure_one()
ctx = self._context.copy() ctx = self._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( attach = self.env['ir.attachment'].search(
[('res_model', '=', self._name), [('res_model', '=', self._name),
('res_id', '=', self.id)]) ('res_id', '=', self.id)])

View File

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="account_payment_mode_form" model="ir.ui.view">
<field name="name">account.payment.mode.form</field>
<field name="model">account.payment.mode</field>
<field name="inherit_id" ref="account_payment_mode.account_payment_mode_form"/>
<field name="arch" type="xml">
<field name="payment_type" position="after">
<field name="ebics_format_id"
attrs="{'invisible': [('payment_order_ok', '=', False)]}"
/>
</field>
</field>
</record>
</odoo>