From dc39f0c3ff93fc40cc4e0a5a089a221db94a322b Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Sat, 4 Nov 2023 16:58:36 +0100 Subject: [PATCH 001/115] [FIX] payment order: fix compute_partner_bank_id Fix _compute_partner_bank_id on account.move.line. The bank account number of then invoice was not selected when a supplier has multiple bank account numbers and there is no payment mode set on the vendor bill. This PR corrects this issue. --- account_payment_order/models/account_move_line.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/account_payment_order/models/account_move_line.py b/account_payment_order/models/account_move_line.py index 40b5ba2309c..656276abbb8 100644 --- a/account_payment_order/models/account_move_line.py +++ b/account_payment_order/models/account_move_line.py @@ -31,7 +31,7 @@ def _compute_partner_bank_id(self): if ( ml.move_id.move_type in ("in_invoice", "in_refund") and not ml.reconciled - and ml.payment_mode_id.payment_order_ok + and (ml.payment_mode_id.payment_order_ok or not ml.payment_mode_id) and ml.account_id.account_type in ("asset_receivable", "liability_payable") and not any( From 688b3f5b32a87a418d4a59a33e7c684d42707973 Mon Sep 17 00:00:00 2001 From: "Pedro M. Baeza" Date: Tue, 14 Nov 2023 13:10:43 +0100 Subject: [PATCH 002/115] [FIX] account_payment_order: Restrict payment lines button to payment group If not, you get an access error when accessing the invoice if you don't have such permission: ``` You are not allowed to access 'Payment Lines' (account.payment.line) records. This operation is allowed for the following groups: - Extra Rights/Accounting / Payments Contact your administrator to request access if necessary ``` TT45952 --- account_payment_order/views/account_invoice_view.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/account_payment_order/views/account_invoice_view.xml b/account_payment_order/views/account_invoice_view.xml index 11187123806..a9ceaf6ea70 100644 --- a/account_payment_order/views/account_invoice_view.xml +++ b/account_payment_order/views/account_invoice_view.xml @@ -46,6 +46,7 @@ attrs="{'invisible': [('payment_line_count', '=', 0)]}" icon="fa-bars" help="Payment Order Lines" + groups="account_payment_order.group_account_payment" > Date: Mon, 20 Nov 2023 18:10:52 +0000 Subject: [PATCH 003/115] [BOT] post-merge updates --- README.md | 2 +- account_payment_order/README.rst | 2 +- account_payment_order/__manifest__.py | 2 +- account_payment_order/static/description/index.html | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index f3fda730195..390b7f9ad76 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ addon | version | maintainers | summary [account_banking_sepa_credit_transfer](account_banking_sepa_credit_transfer/) | 16.0.1.1.1 | | Create SEPA XML files for Credit Transfers [account_banking_sepa_direct_debit](account_banking_sepa_direct_debit/) | 16.0.1.1.0 | | Create SEPA files for Direct Debit [account_payment_mode](account_payment_mode/) | 16.0.1.2.0 | | Account Payment Mode -[account_payment_order](account_payment_order/) | 16.0.1.5.0 | | Account Payment Order +[account_payment_order](account_payment_order/) | 16.0.1.6.0 | | Account Payment Order [account_payment_order_grouped_output](account_payment_order_grouped_output/) | 16.0.1.0.2 | | Account Payment Order - Generate grouped moves [account_payment_order_notification](account_payment_order_notification/) | 16.0.1.0.0 | [![victoralmau](https://github.com/victoralmau.png?size=30px)](https://github.com/victoralmau) | Account Payment Order Notification [account_payment_partner](account_payment_partner/) | 16.0.1.2.2 | | Adds payment mode on partners and invoices diff --git a/account_payment_order/README.rst b/account_payment_order/README.rst index 161aed15c0a..b3ae85be248 100644 --- a/account_payment_order/README.rst +++ b/account_payment_order/README.rst @@ -7,7 +7,7 @@ Account Payment Order !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:223362c71dd6686228efce9e2dfdc1e2acf82af684893783717d2c2d2e171caf + !! source digest: sha256:27a37f42dfe71cb996e2ff53d039ebc2682b60c582aabe1a7e76aac25ddf3679 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Mature-brightgreen.png diff --git a/account_payment_order/__manifest__.py b/account_payment_order/__manifest__.py index 8857d8be524..fd2e197a87d 100644 --- a/account_payment_order/__manifest__.py +++ b/account_payment_order/__manifest__.py @@ -9,7 +9,7 @@ { "name": "Account Payment Order", - "version": "16.0.1.5.0", + "version": "16.0.1.6.0", "license": "AGPL-3", "author": "ACSONE SA/NV, " "Therp BV, " diff --git a/account_payment_order/static/description/index.html b/account_payment_order/static/description/index.html index 06f60fc5f6c..1aa9a44883b 100644 --- a/account_payment_order/static/description/index.html +++ b/account_payment_order/static/description/index.html @@ -367,7 +367,7 @@

Account Payment Order

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:223362c71dd6686228efce9e2dfdc1e2acf82af684893783717d2c2d2e171caf +!! source digest: sha256:27a37f42dfe71cb996e2ff53d039ebc2682b60c582aabe1a7e76aac25ddf3679 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

Mature License: AGPL-3 OCA/bank-payment Translate me on Weblate Try me on Runboat

This module adds support for payment orders and debit orders.

From f2b050b093f2cd553d762a310415aca0c8aa202c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Mart=C3=ADnez?= Date: Mon, 27 Nov 2023 09:21:04 +0100 Subject: [PATCH 004/115] [FIX] account_payment_order: Always return a string in the _get_payment_order_order_communication_direct() method. Related to: https://github.com/OCA/bank-payment/issues/1178 --- account_payment_order/models/account_move.py | 4 +-- .../tests/test_account_payment.py | 3 +- .../tests/test_payment_mode.py | 34 ++++++++++--------- .../tests/test_payment_order_inbound.py | 2 ++ .../tests/test_payment_order_outbound.py | 24 +++++++++++++ 5 files changed, 48 insertions(+), 19 deletions(-) diff --git a/account_payment_order/models/account_move.py b/account_payment_order/models/account_move.py index c7bcbe9d597..3faae049e31 100644 --- a/account_payment_order/models/account_move.py +++ b/account_payment_order/models/account_move.py @@ -49,7 +49,7 @@ def _compute_payment_line_count(self): def _get_payment_order_communication_direct(self): """Retrieve the communication string for this direct item.""" - communication = self.payment_reference or self.ref or self.name or "" + communication = self.payment_reference or self.ref or self.name if self.is_invoice(): if (self.reference_type or "none") != "none": communication = self.ref @@ -57,7 +57,7 @@ def _get_payment_order_communication_direct(self): communication = self.ref or self.payment_reference else: communication = self.payment_reference or self.name - return communication + return communication or "" def _get_payment_order_communication_full(self): """Retrieve the full communication string for the payment order. diff --git a/account_payment_order/tests/test_account_payment.py b/account_payment_order/tests/test_account_payment.py index 2c95da0a746..d06d25afb68 100644 --- a/account_payment_order/tests/test_account_payment.py +++ b/account_payment_order/tests/test_account_payment.py @@ -7,6 +7,7 @@ from odoo.addons.account.models.account_payment_method import AccountPaymentMethod from odoo.addons.account.tests.common import AccountTestInvoicingCommon +from odoo.addons.base.tests.common import DISABLED_MAIL_CONTEXT @tagged("-at_install", "post_install") @@ -14,7 +15,7 @@ class TestAccountPayment(AccountTestInvoicingCommon): @classmethod def setUpClass(cls, chart_template_ref=None): super().setUpClass(chart_template_ref=chart_template_ref) - + cls.env = cls.env(context=dict(cls.env.context, **DISABLED_MAIL_CONTEXT)) Method_get_payment_method_information = ( AccountPaymentMethod._get_payment_method_information ) diff --git a/account_payment_order/tests/test_payment_mode.py b/account_payment_order/tests/test_payment_mode.py index a8d13c3713e..51bce1e7032 100644 --- a/account_payment_order/tests/test_payment_mode.py +++ b/account_payment_order/tests/test_payment_mode.py @@ -6,12 +6,14 @@ from odoo.tests.common import TransactionCase from odoo.addons.account.models.account_payment_method import AccountPaymentMethod +from odoo.addons.base.tests.common import DISABLED_MAIL_CONTEXT class TestPaymentMode(TransactionCase): - def setUp(self): - super(TestPaymentMode, self).setUp() - + @classmethod + def setUpClass(cls): + super().setUpClass() + cls.env = cls.env(context=dict(cls.env.context, **DISABLED_MAIL_CONTEXT)) Method_get_payment_method_information = ( AccountPaymentMethod._get_payment_method_information ) @@ -24,24 +26,24 @@ def _get_payment_method_information(self): return res # Company - self.company = self.env.ref("base.main_company") + cls.company = cls.env.ref("base.main_company") - self.journal_c1 = self.env["account.journal"].create( + cls.journal_c1 = cls.env["account.journal"].create( { "name": "Journal 1", "code": "J1", "type": "bank", - "company_id": self.company.id, + "company_id": cls.company.id, } ) - self.account = self.env["account.account"].search( - [("reconcile", "=", True), ("company_id", "=", self.company.id)], limit=1 + cls.account = cls.env["account.account"].search( + [("reconcile", "=", True), ("company_id", "=", cls.company.id)], limit=1 ) - self.manual_out = self.env.ref("account.account_payment_method_manual_out") + cls.manual_out = cls.env.ref("account.account_payment_method_manual_out") - self.manual_in = self.env.ref("account.account_payment_method_manual_in") + cls.manual_in = cls.env.ref("account.account_payment_method_manual_in") with patch.object( AccountPaymentMethod, @@ -49,7 +51,7 @@ def _get_payment_method_information(self): _get_payment_method_information, ): - self.electronic_out = self.env["account.payment.method"].create( + cls.electronic_out = cls.env["account.payment.method"].create( { "name": "Electronic Out", "code": "electronic_out", @@ -57,14 +59,14 @@ def _get_payment_method_information(self): } ) - self.payment_mode_c1 = self.env["account.payment.mode"].create( + cls.payment_mode_c1 = cls.env["account.payment.mode"].create( { "name": "Direct Debit of suppliers from Bank 1", "bank_account_link": "variable", - "payment_method_id": self.manual_out.id, - "company_id": self.company.id, - "fixed_journal_id": self.journal_c1.id, - "variable_journal_ids": [(6, 0, [self.journal_c1.id])], + "payment_method_id": cls.manual_out.id, + "company_id": cls.company.id, + "fixed_journal_id": cls.journal_c1.id, + "variable_journal_ids": [(6, 0, [cls.journal_c1.id])], } ) diff --git a/account_payment_order/tests/test_payment_order_inbound.py b/account_payment_order/tests/test_payment_order_inbound.py index 33e0bf3cc88..fef633ebd6e 100644 --- a/account_payment_order/tests/test_payment_order_inbound.py +++ b/account_payment_order/tests/test_payment_order_inbound.py @@ -10,6 +10,7 @@ from odoo.tests.common import Form from odoo.addons.account.tests.common import AccountTestInvoicingCommon +from odoo.addons.base.tests.common import DISABLED_MAIL_CONTEXT @tagged("-at_install", "post_install") @@ -17,6 +18,7 @@ class TestPaymentOrderInboundBase(AccountTestInvoicingCommon): @classmethod def setUpClass(cls, chart_template_ref=None): super().setUpClass(chart_template_ref=chart_template_ref) + cls.env = cls.env(context=dict(cls.env.context, **DISABLED_MAIL_CONTEXT)) cls.company = cls.company_data["company"] cls.env.user.company_id = cls.company.id cls.partner = cls.env["res.partner"].create( diff --git a/account_payment_order/tests/test_payment_order_outbound.py b/account_payment_order/tests/test_payment_order_outbound.py index 681616243ff..6108a5775f5 100644 --- a/account_payment_order/tests/test_payment_order_outbound.py +++ b/account_payment_order/tests/test_payment_order_outbound.py @@ -10,6 +10,7 @@ from odoo.tests import Form, tagged from odoo.addons.account.tests.common import AccountTestInvoicingCommon +from odoo.addons.base.tests.common import DISABLED_MAIL_CONTEXT @tagged("-at_install", "post_install") @@ -17,6 +18,7 @@ class TestPaymentOrderOutboundBase(AccountTestInvoicingCommon): @classmethod def setUpClass(cls, chart_template_ref=None): super().setUpClass(chart_template_ref=chart_template_ref) + cls.env = cls.env(context=dict(cls.env.context, **DISABLED_MAIL_CONTEXT)) cls.company = cls.company_data["company"] cls.env.user.company_id = cls.company.id cls.partner = cls.env["res.partner"].create( @@ -276,6 +278,28 @@ def test_invoice_communication_02(self): "F1242", self.invoice._get_payment_order_communication_direct() ) + def test_invoice_communication_03(self): + self.invoice.ref = False + self.invoice.action_post() + self.assertEqual("", self.invoice._get_payment_order_communication_direct()) + reverse_wizard = Form( + self.env["account.move.reversal"].with_context( + active_ids=self.invoice.ids, active_model=self.invoice._name + ) + ) + reverse = reverse_wizard.save() + reverse_res = reverse.reverse_moves() + reverse_move = self.env[reverse_res["res_model"]].browse(reverse_res["res_id"]) + self.assertEqual( + " %s" % reverse_move.ref, + self.invoice._get_payment_order_communication_full(), + ) + self.invoice.ref = "ref" + self.assertEqual( + "ref %s" % reverse_move.ref, + self.invoice._get_payment_order_communication_full(), + ) + def test_manual_line_and_manual_date(self): # Create payment order outbound_order = self.env["account.payment.order"].create( From 9f3f2cdd156f76317223ca3b6bfe95f3ccf63488 Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Mon, 27 Nov 2023 09:25:36 +0000 Subject: [PATCH 005/115] [BOT] post-merge updates --- README.md | 2 +- account_payment_order/README.rst | 2 +- account_payment_order/__manifest__.py | 2 +- account_payment_order/static/description/index.html | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 390b7f9ad76..ca308c89b98 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ addon | version | maintainers | summary [account_banking_sepa_credit_transfer](account_banking_sepa_credit_transfer/) | 16.0.1.1.1 | | Create SEPA XML files for Credit Transfers [account_banking_sepa_direct_debit](account_banking_sepa_direct_debit/) | 16.0.1.1.0 | | Create SEPA files for Direct Debit [account_payment_mode](account_payment_mode/) | 16.0.1.2.0 | | Account Payment Mode -[account_payment_order](account_payment_order/) | 16.0.1.6.0 | | Account Payment Order +[account_payment_order](account_payment_order/) | 16.0.1.6.1 | | Account Payment Order [account_payment_order_grouped_output](account_payment_order_grouped_output/) | 16.0.1.0.2 | | Account Payment Order - Generate grouped moves [account_payment_order_notification](account_payment_order_notification/) | 16.0.1.0.0 | [![victoralmau](https://github.com/victoralmau.png?size=30px)](https://github.com/victoralmau) | Account Payment Order Notification [account_payment_partner](account_payment_partner/) | 16.0.1.2.2 | | Adds payment mode on partners and invoices diff --git a/account_payment_order/README.rst b/account_payment_order/README.rst index b3ae85be248..3e810b633f7 100644 --- a/account_payment_order/README.rst +++ b/account_payment_order/README.rst @@ -7,7 +7,7 @@ Account Payment Order !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:27a37f42dfe71cb996e2ff53d039ebc2682b60c582aabe1a7e76aac25ddf3679 + !! source digest: sha256:0399e2f98f07d9c21c128885229a0263686b56ece85f6c3fdf4f2a61445b62fe !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Mature-brightgreen.png diff --git a/account_payment_order/__manifest__.py b/account_payment_order/__manifest__.py index fd2e197a87d..5457e817a91 100644 --- a/account_payment_order/__manifest__.py +++ b/account_payment_order/__manifest__.py @@ -9,7 +9,7 @@ { "name": "Account Payment Order", - "version": "16.0.1.6.0", + "version": "16.0.1.6.1", "license": "AGPL-3", "author": "ACSONE SA/NV, " "Therp BV, " diff --git a/account_payment_order/static/description/index.html b/account_payment_order/static/description/index.html index 1aa9a44883b..baeb60e3a8a 100644 --- a/account_payment_order/static/description/index.html +++ b/account_payment_order/static/description/index.html @@ -367,7 +367,7 @@

Account Payment Order

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:27a37f42dfe71cb996e2ff53d039ebc2682b60c582aabe1a7e76aac25ddf3679 +!! source digest: sha256:0399e2f98f07d9c21c128885229a0263686b56ece85f6c3fdf4f2a61445b62fe !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

Mature License: AGPL-3 OCA/bank-payment Translate me on Weblate Try me on Runboat

This module adds support for payment orders and debit orders.

From 28428a6fa199efbe2e7f9ff6a5100d8fcf96cf5b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Mart=C3=ADnez?= Date: Tue, 19 Sep 2023 16:08:57 +0200 Subject: [PATCH 006/115] [IMP] account_banking_mandate: Allow sequence to be multi-company --- account_banking_mandate/data/mandate_reference_sequence.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/account_banking_mandate/data/mandate_reference_sequence.xml b/account_banking_mandate/data/mandate_reference_sequence.xml index 6a83bb8b914..34454eb3485 100644 --- a/account_banking_mandate/data/mandate_reference_sequence.xml +++ b/account_banking_mandate/data/mandate_reference_sequence.xml @@ -5,5 +5,6 @@ account.banking.mandate BM + From d3eaaba2cf435613934fb820ff616019bad586a9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Mart=C3=ADnez?= Date: Tue, 19 Sep 2023 16:18:29 +0200 Subject: [PATCH 007/115] [IMP] account_banking_mandate: Allow to set a specific mandate reference or sequence --- .../models/account_banking_mandate.py | 6 ++--- account_banking_mandate/tests/test_mandate.py | 23 +++++++++---------- .../views/account_banking_mandate_view.xml | 2 +- 3 files changed, 15 insertions(+), 16 deletions(-) diff --git a/account_banking_mandate/models/account_banking_mandate.py b/account_banking_mandate/models/account_banking_mandate.py index 6eea0682edc..4eb898ddf12 100644 --- a/account_banking_mandate/models/account_banking_mandate.py +++ b/account_banking_mandate/models/account_banking_mandate.py @@ -60,7 +60,7 @@ def _get_default_partner_bank_id_domain(self): required=True, default=lambda self: self.env.company, ) - unique_mandate_reference = fields.Char(tracking=10, copy=False) + unique_mandate_reference = fields.Char(tracking=10, copy=False, default="/") signature_date = fields.Date( string="Date of Signature of the Mandate", tracking=50, @@ -176,8 +176,8 @@ def _check_valid_state(self): @api.model_create_multi def create(self, vals_list): for vals in vals_list: - unique_mandate_reference = vals.get("unique_mandate_reference") - if not unique_mandate_reference or unique_mandate_reference == "New": + unique_mandate_reference = vals.get("unique_mandate_reference", "/") + if unique_mandate_reference == "/": vals["unique_mandate_reference"] = ( self.env["ir.sequence"].next_by_code("account.banking.mandate") or "New" diff --git a/account_banking_mandate/tests/test_mandate.py b/account_banking_mandate/tests/test_mandate.py index c8f80cb03c2..4862738da92 100644 --- a/account_banking_mandate/tests/test_mandate.py +++ b/account_banking_mandate/tests/test_mandate.py @@ -124,9 +124,8 @@ def test_mandate_reference_02(self): def test_mandate_reference_03(self): """ - Test case: create a mandate with "New" as reference - Expected result: the reference of the created mandate is not empty and - is not "New" + Test case: create a mandate with "TEST" as reference + Expected result: the reference of the created mandate is "TEST" """ bank_account = self.env.ref("account_payment_mode.res_partner_12_iban") mandate = self.env["account.banking.mandate"].create( @@ -134,16 +133,16 @@ def test_mandate_reference_03(self): "partner_bank_id": bank_account.id, "signature_date": "2015-01-01", "company_id": self.company.id, - "unique_mandate_reference": "New", + "unique_mandate_reference": "TEST", } ) self.assertTrue(mandate.unique_mandate_reference) - self.assertNotEqual(mandate.unique_mandate_reference, "New") + self.assertEqual(mandate.unique_mandate_reference, "TEST") - def test_mandate_reference_05(self): + def test_mandate_reference_04(self): """ - Test case: create a mandate with False as reference - Expected result: the reference of the created mandate is not empty + Test case: create a mandate with "/" as reference + Expected result: the reference of the created mandate is not "/" """ bank_account = self.env.ref("account_payment_mode.res_partner_12_iban") mandate = self.env["account.banking.mandate"].create( @@ -151,14 +150,15 @@ def test_mandate_reference_05(self): "partner_bank_id": bank_account.id, "signature_date": "2015-01-01", "company_id": self.company.id, - "unique_mandate_reference": False, + "unique_mandate_reference": "/", } ) self.assertTrue(mandate.unique_mandate_reference) + self.assertNotEqual(mandate.unique_mandate_reference, "/") - def test_mandate_reference_06(self): + def test_mandate_reference_05(self): """ - Test case: create a mandate with a empty string as reference + Test case: create a mandate without reference Expected result: the reference of the created mandate is not empty """ bank_account = self.env.ref("account_payment_mode.res_partner_12_iban") @@ -167,7 +167,6 @@ def test_mandate_reference_06(self): "partner_bank_id": bank_account.id, "signature_date": "2015-01-01", "company_id": self.company.id, - "unique_mandate_reference": "", } ) self.assertTrue(mandate.unique_mandate_reference) diff --git a/account_banking_mandate/views/account_banking_mandate_view.xml b/account_banking_mandate/views/account_banking_mandate_view.xml index ebde21253f9..5b2335e9072 100644 --- a/account_banking_mandate/views/account_banking_mandate_view.xml +++ b/account_banking_mandate/views/account_banking_mandate_view.xml @@ -50,7 +50,7 @@ From 55718af9a49b00598d06db2d6a045deb9cddd530 Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Thu, 30 Nov 2023 13:51:27 +0000 Subject: [PATCH 008/115] [BOT] post-merge updates --- README.md | 2 +- account_banking_mandate/README.rst | 2 +- account_banking_mandate/__manifest__.py | 2 +- account_banking_mandate/static/description/index.html | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index ca308c89b98..9827c3370f6 100644 --- a/README.md +++ b/README.md @@ -21,7 +21,7 @@ Available addons ---------------- addon | version | maintainers | summary --- | --- | --- | --- -[account_banking_mandate](account_banking_mandate/) | 16.0.1.1.0 | | Banking mandates +[account_banking_mandate](account_banking_mandate/) | 16.0.1.1.1 | | Banking mandates [account_banking_mandate_sale](account_banking_mandate_sale/) | 16.0.1.0.0 | [![alexis-via](https://github.com/alexis-via.png?size=30px)](https://github.com/alexis-via) | Adds mandates on sale orders [account_banking_pain_base](account_banking_pain_base/) | 16.0.1.1.0 | | Base module for PAIN file generation [account_banking_sepa_credit_transfer](account_banking_sepa_credit_transfer/) | 16.0.1.1.1 | | Create SEPA XML files for Credit Transfers diff --git a/account_banking_mandate/README.rst b/account_banking_mandate/README.rst index 49f848343dc..290885447ed 100644 --- a/account_banking_mandate/README.rst +++ b/account_banking_mandate/README.rst @@ -7,7 +7,7 @@ Account Banking Mandate !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:65a46ee9619fe8b739d955186a289a1fe533a2aab227896d9eb915f21c05ce58 + !! source digest: sha256:4b5a2b5a27bca9e269d073e647484476b859ac1ed53a533129bf680c40304026 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Production%2FStable-green.png diff --git a/account_banking_mandate/__manifest__.py b/account_banking_mandate/__manifest__.py index 13445740464..23a3fd54cf5 100644 --- a/account_banking_mandate/__manifest__.py +++ b/account_banking_mandate/__manifest__.py @@ -7,7 +7,7 @@ { "name": "Account Banking Mandate", "summary": "Banking mandates", - "version": "16.0.1.1.0", + "version": "16.0.1.1.1", "development_status": "Production/Stable", "license": "AGPL-3", "author": "Compassion CH, " diff --git a/account_banking_mandate/static/description/index.html b/account_banking_mandate/static/description/index.html index 4fd937f8d42..6552b0d2b84 100644 --- a/account_banking_mandate/static/description/index.html +++ b/account_banking_mandate/static/description/index.html @@ -367,7 +367,7 @@

Account Banking Mandate

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:65a46ee9619fe8b739d955186a289a1fe533a2aab227896d9eb915f21c05ce58 +!! source digest: sha256:4b5a2b5a27bca9e269d073e647484476b859ac1ed53a533129bf680c40304026 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

Production/Stable License: AGPL-3 OCA/bank-payment Translate me on Weblate Try me on Runboat

This module adds a generic model for banking mandates. From ee3dc4b9c98d77af5ff2de7d303877355faa9d20 Mon Sep 17 00:00:00 2001 From: mymage Date: Mon, 18 Dec 2023 07:07:49 +0000 Subject: [PATCH 009/115] Translated using Weblate (Italian) Currently translated at 64.5% (31 of 48 strings) Translation: bank-payment-16.0/bank-payment-16.0-account_payment_mode Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_payment_mode/it/ --- account_payment_mode/i18n/it.po | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/account_payment_mode/i18n/it.po b/account_payment_mode/i18n/it.po index 10e947fc401..897cb7f30e7 100644 --- a/account_payment_mode/i18n/it.po +++ b/account_payment_mode/i18n/it.po @@ -9,8 +9,8 @@ msgstr "" "Project-Id-Version: Odoo Server 9.0c\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-09-10 16:15+0000\n" -"PO-Revision-Date: 2023-07-12 15:09+0000\n" -"Last-Translator: Francesco Foresti \n" +"PO-Revision-Date: 2023-12-18 09:37+0000\n" +"Last-Translator: mymage \n" "Language-Team: Italian (https://www.transifex.com/oca/teams/23907/it/)\n" "Language: it\n" "MIME-Version: 1.0\n" @@ -251,7 +251,7 @@ msgstr "Modi di pagamento" #: model:ir.model.fields,field_description:account_payment_mode.field_account_payment_mode__payment_type #: model_terms:ir.ui.view,arch_db:account_payment_mode.account_payment_method_search msgid "Payment Type" -msgstr "Tipo di Pagamento" +msgstr "Tipo pagamento" #. module: account_payment_mode #: model:ir.model.fields,field_description:account_payment_mode.field_account_payment_method__payment_mode_ids From 1faf174a0c8b5441d488be828d3195fb2f8c3d4e Mon Sep 17 00:00:00 2001 From: mymage Date: Mon, 18 Dec 2023 06:59:17 +0000 Subject: [PATCH 010/115] Translated using Weblate (Italian) Currently translated at 30.2% (53 of 175 strings) Translation: bank-payment-16.0/bank-payment-16.0-account_banking_pain_base Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_banking_pain_base/it/ --- account_banking_pain_base/i18n/it.po | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/account_banking_pain_base/i18n/it.po b/account_banking_pain_base/i18n/it.po index 1da798eb929..cb87a1e6c62 100644 --- a/account_banking_pain_base/i18n/it.po +++ b/account_banking_pain_base/i18n/it.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 11.0\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2023-09-20 20:03+0000\n" +"PO-Revision-Date: 2023-12-18 09:37+0000\n" "Last-Translator: mymage \n" "Language-Team: none\n" "Language: it\n" @@ -35,7 +35,7 @@ msgstr "Gestione dei conti" #. module: account_banking_pain_base #: model:ir.model.fields.selection,name:account_banking_pain_base.selection__account_payment_line__purpose__adva msgid "Advance Payment" -msgstr "Pagamento Anticipato" +msgstr "Pagamento anticipato" #. module: account_banking_pain_base #: model:ir.model.fields.selection,name:account_banking_pain_base.selection__account_payment_line__purpose__agrt From d77fd9a0cb8fcfd8500978c502c1be698c352800 Mon Sep 17 00:00:00 2001 From: mymage Date: Sun, 24 Dec 2023 17:17:54 +0000 Subject: [PATCH 011/115] Translated using Weblate (Italian) Currently translated at 30.8% (54 of 175 strings) Translation: bank-payment-16.0/bank-payment-16.0-account_banking_pain_base Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_banking_pain_base/it/ --- account_banking_pain_base/i18n/it.po | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/account_banking_pain_base/i18n/it.po b/account_banking_pain_base/i18n/it.po index cb87a1e6c62..8f62bf97b2d 100644 --- a/account_banking_pain_base/i18n/it.po +++ b/account_banking_pain_base/i18n/it.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 11.0\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2023-12-18 09:37+0000\n" +"PO-Revision-Date: 2023-12-24 19:43+0000\n" "Last-Translator: mymage \n" "Language-Team: none\n" "Language: it\n" @@ -121,9 +121,9 @@ msgstr "Spese di cancellazione" #. module: account_banking_pain_base #. odoo-python #: code:addons/account_banking_pain_base/models/account_payment_order.py:0 -#, fuzzy, python-format +#, python-format msgid "Cannot compute the field '{field_name}'." -msgstr "Non è possibile calcolare '%s'." +msgstr "Non posso calcolare il campo ''" #. module: account_banking_pain_base #: model:ir.model.fields.selection,name:account_banking_pain_base.selection__account_payment_line__purpose__clpr From a8c9e94a44f657787cc4bf61f26cf36ef457d0cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alberto=20Mart=C3=ADnez?= Date: Mon, 18 Dec 2023 16:08:10 +0100 Subject: [PATCH 012/115] [16.0][FIX]account_banking_mandate: mandate_partner_bank_form columns --- account_banking_mandate/views/res_partner_bank_view.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/account_banking_mandate/views/res_partner_bank_view.xml b/account_banking_mandate/views/res_partner_bank_view.xml index c8ccadcf45e..1f1abe72cb2 100644 --- a/account_banking_mandate/views/res_partner_bank_view.xml +++ b/account_banking_mandate/views/res_partner_bank_view.xml @@ -15,6 +15,7 @@ name="mandate_ids" context="{'mandate_bank_partner_view': True}" nolabel="1" + colspan="4" /> From 15a97f1fe90de8ef640d67bf8904b904aab3f03a Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Wed, 27 Dec 2023 10:42:10 +0000 Subject: [PATCH 013/115] [BOT] post-merge updates --- README.md | 2 +- account_banking_mandate/README.rst | 2 +- account_banking_mandate/__manifest__.py | 2 +- account_banking_mandate/static/description/index.html | 3 +-- 4 files changed, 4 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 9827c3370f6..d3edbdbfad1 100644 --- a/README.md +++ b/README.md @@ -21,7 +21,7 @@ Available addons ---------------- addon | version | maintainers | summary --- | --- | --- | --- -[account_banking_mandate](account_banking_mandate/) | 16.0.1.1.1 | | Banking mandates +[account_banking_mandate](account_banking_mandate/) | 16.0.1.2.0 | | Banking mandates [account_banking_mandate_sale](account_banking_mandate_sale/) | 16.0.1.0.0 | [![alexis-via](https://github.com/alexis-via.png?size=30px)](https://github.com/alexis-via) | Adds mandates on sale orders [account_banking_pain_base](account_banking_pain_base/) | 16.0.1.1.0 | | Base module for PAIN file generation [account_banking_sepa_credit_transfer](account_banking_sepa_credit_transfer/) | 16.0.1.1.1 | | Create SEPA XML files for Credit Transfers diff --git a/account_banking_mandate/README.rst b/account_banking_mandate/README.rst index 290885447ed..d92c2ed1764 100644 --- a/account_banking_mandate/README.rst +++ b/account_banking_mandate/README.rst @@ -7,7 +7,7 @@ Account Banking Mandate !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:4b5a2b5a27bca9e269d073e647484476b859ac1ed53a533129bf680c40304026 + !! source digest: sha256:eb1e70284401ac6034fdc5377ebe1ea10cf1b66bded40581ebc4e4ddd228fcbf !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Production%2FStable-green.png diff --git a/account_banking_mandate/__manifest__.py b/account_banking_mandate/__manifest__.py index 23a3fd54cf5..d5631e667b1 100644 --- a/account_banking_mandate/__manifest__.py +++ b/account_banking_mandate/__manifest__.py @@ -7,7 +7,7 @@ { "name": "Account Banking Mandate", "summary": "Banking mandates", - "version": "16.0.1.1.1", + "version": "16.0.1.2.0", "development_status": "Production/Stable", "license": "AGPL-3", "author": "Compassion CH, " diff --git a/account_banking_mandate/static/description/index.html b/account_banking_mandate/static/description/index.html index 6552b0d2b84..ac73683819d 100644 --- a/account_banking_mandate/static/description/index.html +++ b/account_banking_mandate/static/description/index.html @@ -1,4 +1,3 @@ - @@ -367,7 +366,7 @@

Account Banking Mandate

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:4b5a2b5a27bca9e269d073e647484476b859ac1ed53a533129bf680c40304026 +!! source digest: sha256:eb1e70284401ac6034fdc5377ebe1ea10cf1b66bded40581ebc4e4ddd228fcbf !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

Production/Stable License: AGPL-3 OCA/bank-payment Translate me on Weblate Try me on Runboat

This module adds a generic model for banking mandates. From b619decb922a551817229fb54ed03beff908df81 Mon Sep 17 00:00:00 2001 From: mymage Date: Wed, 27 Dec 2023 10:46:44 +0000 Subject: [PATCH 014/115] Translated using Weblate (Italian) Currently translated at 76.6% (79 of 103 strings) Translation: bank-payment-16.0/bank-payment-16.0-account_banking_mandate Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_banking_mandate/it/ --- account_banking_mandate/i18n/it.po | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/account_banking_mandate/i18n/it.po b/account_banking_mandate/i18n/it.po index a88df3f4319..46e5bec7801 100644 --- a/account_banking_mandate/i18n/it.po +++ b/account_banking_mandate/i18n/it.po @@ -9,7 +9,7 @@ msgstr "" "Project-Id-Version: bank-payment (10.0)\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-11-21 10:17+0000\n" -"PO-Revision-Date: 2023-09-22 16:39+0000\n" +"PO-Revision-Date: 2023-12-27 13:36+0000\n" "Last-Translator: mymage \n" "Language-Team: Italian (http://www.transifex.com/oca/OCA-bank-payment-10-0/" "language/it/)\n" @@ -100,7 +100,7 @@ msgstr "Conto bancario" #. module: account_banking_mandate #: model:ir.model,name:account_banking_mandate.model_res_partner_bank msgid "Bank Accounts" -msgstr "Conti Bancari" +msgstr "Conti bancari" #. module: account_banking_mandate #: model_terms:ir.ui.view,arch_db:account_banking_mandate.view_mandate_form From 2271360f467591e1d83efe602356a4bb4c922437 Mon Sep 17 00:00:00 2001 From: GuillemCForgeFlow Date: Wed, 3 Jan 2024 12:34:11 +0100 Subject: [PATCH 015/115] [FIX]account_payment_purchase: return result from onchange and get properties with correct company --- account_payment_purchase/models/purchase_order.py | 1 + 1 file changed, 1 insertion(+) diff --git a/account_payment_purchase/models/purchase_order.py b/account_payment_purchase/models/purchase_order.py index 8021dda8b8e..3344aef33e9 100644 --- a/account_payment_purchase/models/purchase_order.py +++ b/account_payment_purchase/models/purchase_order.py @@ -45,6 +45,7 @@ def _get_default_supplier_partner_bank(self, partner): def _compute_payment_mode(self): for order in self: if order.partner_id: + order = order.with_company(order.company_id) order.supplier_partner_bank_id = ( order._get_default_supplier_partner_bank(order.partner_id) ) From bd1efe6a575ea455c43201ddcff3e0ce5d6014da Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Thu, 4 Jan 2024 15:27:02 +0000 Subject: [PATCH 016/115] [BOT] post-merge updates --- README.md | 2 +- account_payment_purchase/README.rst | 2 +- account_payment_purchase/__manifest__.py | 2 +- account_payment_purchase/static/description/index.html | 3 +-- 4 files changed, 4 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index d3edbdbfad1..54d66fe611c 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,7 @@ addon | version | maintainers | summary [account_payment_order_grouped_output](account_payment_order_grouped_output/) | 16.0.1.0.2 | | Account Payment Order - Generate grouped moves [account_payment_order_notification](account_payment_order_notification/) | 16.0.1.0.0 | [![victoralmau](https://github.com/victoralmau.png?size=30px)](https://github.com/victoralmau) | Account Payment Order Notification [account_payment_partner](account_payment_partner/) | 16.0.1.2.2 | | Adds payment mode on partners and invoices -[account_payment_purchase](account_payment_purchase/) | 16.0.2.0.0 | | Adds Bank Account and Payment Mode on Purchase Orders +[account_payment_purchase](account_payment_purchase/) | 16.0.2.0.1 | | Adds Bank Account and Payment Mode on Purchase Orders [account_payment_purchase_stock](account_payment_purchase_stock/) | 16.0.1.0.0 | | Integrate Account Payment Purchase with Stock [account_payment_sale](account_payment_sale/) | 16.0.1.0.0 | | Adds payment mode on sale orders diff --git a/account_payment_purchase/README.rst b/account_payment_purchase/README.rst index 1af3027caf8..ec06b1e0177 100644 --- a/account_payment_purchase/README.rst +++ b/account_payment_purchase/README.rst @@ -7,7 +7,7 @@ Account Payment Purchase !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:8bb70e483c7735270307f2b148fe836015177c7ee199e05dcfc95429696b9832 + !! source digest: sha256:26eaadd4931ab86f590b41cafdebb1b0ad60e92a05f81e905ecf23be4038650a !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png diff --git a/account_payment_purchase/__manifest__.py b/account_payment_purchase/__manifest__.py index 5043e153fef..b882d05acbb 100644 --- a/account_payment_purchase/__manifest__.py +++ b/account_payment_purchase/__manifest__.py @@ -4,7 +4,7 @@ { "name": "Account Payment Purchase", - "version": "16.0.2.0.0", + "version": "16.0.2.0.1", "category": "Banking addons", "license": "AGPL-3", "summary": "Adds Bank Account and Payment Mode on Purchase Orders", diff --git a/account_payment_purchase/static/description/index.html b/account_payment_purchase/static/description/index.html index 8d3e601b830..5e7a7332350 100644 --- a/account_payment_purchase/static/description/index.html +++ b/account_payment_purchase/static/description/index.html @@ -1,4 +1,3 @@ - @@ -367,7 +366,7 @@

Account Payment Purchase

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:8bb70e483c7735270307f2b148fe836015177c7ee199e05dcfc95429696b9832 +!! source digest: sha256:26eaadd4931ab86f590b41cafdebb1b0ad60e92a05f81e905ecf23be4038650a !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

Beta License: AGPL-3 OCA/bank-payment Translate me on Weblate Try me on Runboat

This module adds 2 fields on purchase orders: Bank Account and Payment From 8ce292ac62c0a525edd86598e9610fb3790062ee Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Tue, 30 Jan 2024 08:16:49 +0000 Subject: [PATCH 017/115] [BOT] post-merge updates --- README.md | 2 +- account_payment_order/README.rst | 2 +- account_payment_order/__manifest__.py | 2 +- account_payment_order/static/description/index.html | 3 +-- 4 files changed, 4 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 54d66fe611c..eca55f9313b 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ addon | version | maintainers | summary [account_banking_sepa_credit_transfer](account_banking_sepa_credit_transfer/) | 16.0.1.1.1 | | Create SEPA XML files for Credit Transfers [account_banking_sepa_direct_debit](account_banking_sepa_direct_debit/) | 16.0.1.1.0 | | Create SEPA files for Direct Debit [account_payment_mode](account_payment_mode/) | 16.0.1.2.0 | | Account Payment Mode -[account_payment_order](account_payment_order/) | 16.0.1.6.1 | | Account Payment Order +[account_payment_order](account_payment_order/) | 16.0.1.6.2 | | Account Payment Order [account_payment_order_grouped_output](account_payment_order_grouped_output/) | 16.0.1.0.2 | | Account Payment Order - Generate grouped moves [account_payment_order_notification](account_payment_order_notification/) | 16.0.1.0.0 | [![victoralmau](https://github.com/victoralmau.png?size=30px)](https://github.com/victoralmau) | Account Payment Order Notification [account_payment_partner](account_payment_partner/) | 16.0.1.2.2 | | Adds payment mode on partners and invoices diff --git a/account_payment_order/README.rst b/account_payment_order/README.rst index 3e810b633f7..cbfc9dc98f9 100644 --- a/account_payment_order/README.rst +++ b/account_payment_order/README.rst @@ -7,7 +7,7 @@ Account Payment Order !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:0399e2f98f07d9c21c128885229a0263686b56ece85f6c3fdf4f2a61445b62fe + !! source digest: sha256:156f2c601182fed4b6ec859ce2f42939b53a6f73944c0836e6c828f7b8e594be !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Mature-brightgreen.png diff --git a/account_payment_order/__manifest__.py b/account_payment_order/__manifest__.py index 5457e817a91..66457811198 100644 --- a/account_payment_order/__manifest__.py +++ b/account_payment_order/__manifest__.py @@ -9,7 +9,7 @@ { "name": "Account Payment Order", - "version": "16.0.1.6.1", + "version": "16.0.1.6.2", "license": "AGPL-3", "author": "ACSONE SA/NV, " "Therp BV, " diff --git a/account_payment_order/static/description/index.html b/account_payment_order/static/description/index.html index baeb60e3a8a..073d06e0a33 100644 --- a/account_payment_order/static/description/index.html +++ b/account_payment_order/static/description/index.html @@ -1,4 +1,3 @@ - @@ -367,7 +366,7 @@

Account Payment Order

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:0399e2f98f07d9c21c128885229a0263686b56ece85f6c3fdf4f2a61445b62fe +!! source digest: sha256:156f2c601182fed4b6ec859ce2f42939b53a6f73944c0836e6c828f7b8e594be !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

Mature License: AGPL-3 OCA/bank-payment Translate me on Weblate Try me on Runboat

This module adds support for payment orders and debit orders.

From 70c07af9d1da9255ba56b4efd4141c320698f165 Mon Sep 17 00:00:00 2001 From: Hugo Santos Date: Tue, 6 Feb 2024 17:31:09 +0100 Subject: [PATCH 018/115] [FIX] Use correct company when search for mandate_id Use the account.move company to search for the right partner mandate --- account_banking_mandate/models/account_move.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/account_banking_mandate/models/account_move.py b/account_banking_mandate/models/account_move.py index 990ff1c0fab..4f56561da69 100644 --- a/account_banking_mandate/models/account_move.py +++ b/account_banking_mandate/models/account_move.py @@ -22,9 +22,10 @@ class AccountMove(models.Model): related="payment_mode_id.payment_method_id.mandate_required", readonly=True ) - @api.depends("payment_mode_id", "partner_id") + @api.depends("company_id", "payment_mode_id", "partner_id") def _compute_mandate_id(self): for move in self: + move = move.with_company(move.company_id) if move.payment_mode_id.payment_method_id.mandate_required: move.mandate_id = move.partner_id.valid_mandate_id else: From 3f30ea3ed9c9516f920b888727d1137db7088ca3 Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Thu, 8 Feb 2024 14:49:21 +0000 Subject: [PATCH 019/115] [BOT] post-merge updates --- README.md | 2 +- account_banking_mandate/README.rst | 2 +- account_banking_mandate/__manifest__.py | 2 +- account_banking_mandate/static/description/index.html | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index eca55f9313b..7d773626d69 100644 --- a/README.md +++ b/README.md @@ -21,7 +21,7 @@ Available addons ---------------- addon | version | maintainers | summary --- | --- | --- | --- -[account_banking_mandate](account_banking_mandate/) | 16.0.1.2.0 | | Banking mandates +[account_banking_mandate](account_banking_mandate/) | 16.0.1.2.1 | | Banking mandates [account_banking_mandate_sale](account_banking_mandate_sale/) | 16.0.1.0.0 | [![alexis-via](https://github.com/alexis-via.png?size=30px)](https://github.com/alexis-via) | Adds mandates on sale orders [account_banking_pain_base](account_banking_pain_base/) | 16.0.1.1.0 | | Base module for PAIN file generation [account_banking_sepa_credit_transfer](account_banking_sepa_credit_transfer/) | 16.0.1.1.1 | | Create SEPA XML files for Credit Transfers diff --git a/account_banking_mandate/README.rst b/account_banking_mandate/README.rst index d92c2ed1764..767034550a9 100644 --- a/account_banking_mandate/README.rst +++ b/account_banking_mandate/README.rst @@ -7,7 +7,7 @@ Account Banking Mandate !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:eb1e70284401ac6034fdc5377ebe1ea10cf1b66bded40581ebc4e4ddd228fcbf + !! source digest: sha256:a2e985ff665c753c4fc04968eca91622f81cf5c595fd9d26967c2aefea3556a3 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Production%2FStable-green.png diff --git a/account_banking_mandate/__manifest__.py b/account_banking_mandate/__manifest__.py index d5631e667b1..fc0c616001c 100644 --- a/account_banking_mandate/__manifest__.py +++ b/account_banking_mandate/__manifest__.py @@ -7,7 +7,7 @@ { "name": "Account Banking Mandate", "summary": "Banking mandates", - "version": "16.0.1.2.0", + "version": "16.0.1.2.1", "development_status": "Production/Stable", "license": "AGPL-3", "author": "Compassion CH, " diff --git a/account_banking_mandate/static/description/index.html b/account_banking_mandate/static/description/index.html index ac73683819d..6b64db39b57 100644 --- a/account_banking_mandate/static/description/index.html +++ b/account_banking_mandate/static/description/index.html @@ -366,7 +366,7 @@

Account Banking Mandate

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:eb1e70284401ac6034fdc5377ebe1ea10cf1b66bded40581ebc4e4ddd228fcbf +!! source digest: sha256:a2e985ff665c753c4fc04968eca91622f81cf5c595fd9d26967c2aefea3556a3 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

Production/Stable License: AGPL-3 OCA/bank-payment Translate me on Weblate Try me on Runboat

This module adds a generic model for banking mandates. From fd3ae9d8d71e076e4d32deeb7ee4d5478a370813 Mon Sep 17 00:00:00 2001 From: mymage Date: Tue, 13 Feb 2024 07:26:19 +0000 Subject: [PATCH 020/115] Translated using Weblate (Italian) Currently translated at 64.5% (31 of 48 strings) Translation: bank-payment-16.0/bank-payment-16.0-account_payment_mode Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_payment_mode/it/ --- account_payment_mode/i18n/it.po | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/account_payment_mode/i18n/it.po b/account_payment_mode/i18n/it.po index 897cb7f30e7..faab141eff4 100644 --- a/account_payment_mode/i18n/it.po +++ b/account_payment_mode/i18n/it.po @@ -9,7 +9,7 @@ msgstr "" "Project-Id-Version: Odoo Server 9.0c\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-09-10 16:15+0000\n" -"PO-Revision-Date: 2023-12-18 09:37+0000\n" +"PO-Revision-Date: 2024-02-13 09:41+0000\n" "Last-Translator: mymage \n" "Language-Team: Italian (https://www.transifex.com/oca/teams/23907/it/)\n" "Language: it\n" @@ -25,8 +25,8 @@ msgid "" "Activate this option if this payment method requires you to know the bank " "account number of your customer or supplier." msgstr "" -"Attiva quest'opzione se questo metodo di pagamento richiede di conoscere il " -"numero di conto bancario del tuo cliente o fornitore." +"Attivare questa opzione se questo metodo di pagamento richiede di conoscere " +"il numero di conto bancario del cliente o del fornitore." #. module: account_payment_mode #: model:ir.model.fields,field_description:account_payment_mode.field_account_payment_method__active From 8c177860a490dae3a01075b224c970ba460d388c Mon Sep 17 00:00:00 2001 From: mymage Date: Fri, 16 Feb 2024 15:42:14 +0000 Subject: [PATCH 021/115] Translated using Weblate (Italian) Currently translated at 30.8% (54 of 175 strings) Translation: bank-payment-16.0/bank-payment-16.0-account_banking_pain_base Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_banking_pain_base/it/ --- account_banking_pain_base/i18n/it.po | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/account_banking_pain_base/i18n/it.po b/account_banking_pain_base/i18n/it.po index 8f62bf97b2d..93f54fb4e2d 100644 --- a/account_banking_pain_base/i18n/it.po +++ b/account_banking_pain_base/i18n/it.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 11.0\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2023-12-24 19:43+0000\n" +"PO-Revision-Date: 2024-02-16 15:48+0000\n" "Last-Translator: mymage \n" "Language-Team: none\n" "Language: it\n" @@ -422,7 +422,7 @@ msgstr "Housing Loan Repayment" #. module: account_banking_pain_base #: model:ir.model.fields.selection,name:account_banking_pain_base.selection__account_payment_line__purpose__hstx msgid "Housing Tax" -msgstr "Tassa sulla casa" +msgstr "Imposta sulla casa" #. module: account_banking_pain_base #: model:ir.model.fields.selection,name:account_banking_pain_base.selection__account_payment_line__communication_type__iso From ca9135e36131a41a49f3b30a3b673bf639fedcf2 Mon Sep 17 00:00:00 2001 From: "Pedro M. Baeza" Date: Tue, 13 Feb 2024 13:31:19 +0100 Subject: [PATCH 022/115] [IMP] account_payment_order: No error on unknown payment method codes Since v14, the tool for changing the target transfer account is to create new payment methods, and put a method line in the journal with such account. Thus, there will be "fake" payment methods with no export handler with the only goal of having a different target account. Raising an error on such methods when finishing the payment order, forcing to add custom code for returning (False, False), is too much, so better to simply return that by default and don't block in these cases. TT47723 --- .../models/account_payment_order.py | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/account_payment_order/models/account_payment_order.py b/account_payment_order/models/account_payment_order.py index 76330fa92a3..331954c7110 100644 --- a/account_payment_order/models/account_payment_order.py +++ b/account_payment_order/models/account_payment_order.py @@ -376,17 +376,13 @@ def draft2open(self): return True def generate_payment_file(self): - """Returns (payment file as string, filename)""" + """Returns (payment file as string, filename). + + By default, any method not specifically intercepted by extra modules will do + nothing, including the existing manual one. + """ self.ensure_one() - if self.payment_method_id.code == "manual": - return (False, False) - else: - raise UserError( - _( - "No handler for this payment method. Maybe you haven't " - "installed the related Odoo module." - ) - ) + return (False, False) def open2generated(self): self.ensure_one() From fb5f2b3cb8173f23747ac5f9f2fb340598e3eed0 Mon Sep 17 00:00:00 2001 From: oca-ci Date: Sun, 18 Feb 2024 13:57:44 +0000 Subject: [PATCH 023/115] [UPD] Update account_payment_order.pot --- account_payment_order/i18n/account_payment_order.pot | 9 --------- 1 file changed, 9 deletions(-) diff --git a/account_payment_order/i18n/account_payment_order.pot b/account_payment_order/i18n/account_payment_order.pot index eb5c048087b..ec8296a2935 100644 --- a/account_payment_order/i18n/account_payment_order.pot +++ b/account_payment_order/i18n/account_payment_order.pot @@ -750,15 +750,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 From 886ea3418a11831d956dd9322f7a1bb3a700733e Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Sun, 18 Feb 2024 14:01:06 +0000 Subject: [PATCH 024/115] [BOT] post-merge updates --- README.md | 2 +- account_payment_order/README.rst | 2 +- account_payment_order/__manifest__.py | 2 +- account_payment_order/static/description/index.html | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 7d773626d69..a2790d29b19 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ addon | version | maintainers | summary [account_banking_sepa_credit_transfer](account_banking_sepa_credit_transfer/) | 16.0.1.1.1 | | Create SEPA XML files for Credit Transfers [account_banking_sepa_direct_debit](account_banking_sepa_direct_debit/) | 16.0.1.1.0 | | Create SEPA files for Direct Debit [account_payment_mode](account_payment_mode/) | 16.0.1.2.0 | | Account Payment Mode -[account_payment_order](account_payment_order/) | 16.0.1.6.2 | | Account Payment Order +[account_payment_order](account_payment_order/) | 16.0.1.6.3 | | Account Payment Order [account_payment_order_grouped_output](account_payment_order_grouped_output/) | 16.0.1.0.2 | | Account Payment Order - Generate grouped moves [account_payment_order_notification](account_payment_order_notification/) | 16.0.1.0.0 | [![victoralmau](https://github.com/victoralmau.png?size=30px)](https://github.com/victoralmau) | Account Payment Order Notification [account_payment_partner](account_payment_partner/) | 16.0.1.2.2 | | Adds payment mode on partners and invoices diff --git a/account_payment_order/README.rst b/account_payment_order/README.rst index cbfc9dc98f9..d2b13154d04 100644 --- a/account_payment_order/README.rst +++ b/account_payment_order/README.rst @@ -7,7 +7,7 @@ Account Payment Order !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:156f2c601182fed4b6ec859ce2f42939b53a6f73944c0836e6c828f7b8e594be + !! source digest: sha256:a95ab4ab71d9847c47779890f553ee70556cb249de2b0f17787626504a6816a2 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Mature-brightgreen.png diff --git a/account_payment_order/__manifest__.py b/account_payment_order/__manifest__.py index 66457811198..6dc487268cf 100644 --- a/account_payment_order/__manifest__.py +++ b/account_payment_order/__manifest__.py @@ -9,7 +9,7 @@ { "name": "Account Payment Order", - "version": "16.0.1.6.2", + "version": "16.0.1.6.3", "license": "AGPL-3", "author": "ACSONE SA/NV, " "Therp BV, " diff --git a/account_payment_order/static/description/index.html b/account_payment_order/static/description/index.html index 073d06e0a33..e80b77bba2c 100644 --- a/account_payment_order/static/description/index.html +++ b/account_payment_order/static/description/index.html @@ -366,7 +366,7 @@

Account Payment Order

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:156f2c601182fed4b6ec859ce2f42939b53a6f73944c0836e6c828f7b8e594be +!! source digest: sha256:a95ab4ab71d9847c47779890f553ee70556cb249de2b0f17787626504a6816a2 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

Mature License: AGPL-3 OCA/bank-payment Translate me on Weblate Try me on Runboat

This module adds support for payment orders and debit orders.

From ab584e0765b0ef1d7f10d76b9cae88cb1310c6f7 Mon Sep 17 00:00:00 2001 From: Weblate Date: Sun, 18 Feb 2024 14:01:21 +0000 Subject: [PATCH 025/115] Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Translation: bank-payment-16.0/bank-payment-16.0-account_payment_order Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_payment_order/ --- account_payment_order/i18n/am.po | 9 --------- account_payment_order/i18n/ar.po | 9 --------- account_payment_order/i18n/ca.po | 19 ++++++++----------- account_payment_order/i18n/ca_ES.po | 9 --------- account_payment_order/i18n/cs.po | 9 --------- account_payment_order/i18n/da_DK.po | 9 --------- account_payment_order/i18n/de.po | 9 --------- account_payment_order/i18n/el_GR.po | 9 --------- account_payment_order/i18n/es.po | 19 ++++++++----------- account_payment_order/i18n/es_AR.po | 19 ++++++++----------- account_payment_order/i18n/es_CL.po | 19 ++++++++----------- account_payment_order/i18n/es_CR.po | 9 --------- account_payment_order/i18n/es_EC.po | 9 --------- account_payment_order/i18n/es_ES.po | 9 --------- account_payment_order/i18n/es_MX.po | 9 --------- account_payment_order/i18n/es_VE.po | 9 --------- account_payment_order/i18n/et.po | 9 --------- account_payment_order/i18n/fi.po | 9 --------- account_payment_order/i18n/fr.po | 19 ++++++++----------- account_payment_order/i18n/fr_FR.po | 19 ++++++++----------- account_payment_order/i18n/gl.po | 9 --------- account_payment_order/i18n/hr.po | 9 --------- account_payment_order/i18n/it.po | 9 --------- account_payment_order/i18n/lt.po | 9 --------- account_payment_order/i18n/nb_NO.po | 9 --------- account_payment_order/i18n/nl.po | 9 --------- account_payment_order/i18n/nl_BE.po | 9 --------- account_payment_order/i18n/nl_NL.po | 9 --------- account_payment_order/i18n/pl.po | 9 --------- account_payment_order/i18n/pt.po | 9 --------- account_payment_order/i18n/pt_BR.po | 9 --------- account_payment_order/i18n/pt_PT.po | 9 --------- account_payment_order/i18n/ro.po | 9 --------- account_payment_order/i18n/ru.po | 9 --------- account_payment_order/i18n/sl.po | 9 --------- account_payment_order/i18n/sv.po | 9 --------- account_payment_order/i18n/th.po | 9 --------- account_payment_order/i18n/tr.po | 9 --------- account_payment_order/i18n/vi.po | 9 --------- 39 files changed, 48 insertions(+), 363 deletions(-) diff --git a/account_payment_order/i18n/am.po b/account_payment_order/i18n/am.po index 19ce24dab18..892034379a3 100644 --- a/account_payment_order/i18n/am.po +++ b/account_payment_order/i18n/am.po @@ -757,15 +757,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/ar.po b/account_payment_order/i18n/ar.po index 3045e6b02a3..2ae14936413 100644 --- a/account_payment_order/i18n/ar.po +++ b/account_payment_order/i18n/ar.po @@ -758,15 +758,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/ca.po b/account_payment_order/i18n/ca.po index f48c3af79a0..03172b7be36 100644 --- a/account_payment_order/i18n/ca.po +++ b/account_payment_order/i18n/ca.po @@ -785,17 +785,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "No hi ha cap mode de pagament a la factura %s" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" -"No s'ha trobat cap gestor per a aquest mètode de pagament. Potser no heu " -"instal·lat el mòdul Odoo relacionat." - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 @@ -1296,6 +1285,14 @@ msgstr "" "altrament, es crearan ordres de pagament noves (una per cada mode de " "pagament)." +#, python-format +#~ msgid "" +#~ "No handler for this payment method. Maybe you haven't installed the " +#~ "related Odoo module." +#~ msgstr "" +#~ "No s'ha trobat cap gestor per a aquest mètode de pagament. Potser no heu " +#~ "instal·lat el mòdul Odoo relacionat." + #~ msgid "SMS Delivery error" #~ msgstr "Error d'enviament de missatge" diff --git a/account_payment_order/i18n/ca_ES.po b/account_payment_order/i18n/ca_ES.po index e018ba8276e..9a6736d9fea 100644 --- a/account_payment_order/i18n/ca_ES.po +++ b/account_payment_order/i18n/ca_ES.po @@ -753,15 +753,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/cs.po b/account_payment_order/i18n/cs.po index 0286915ee74..0a6937279d1 100644 --- a/account_payment_order/i18n/cs.po +++ b/account_payment_order/i18n/cs.po @@ -757,15 +757,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/da_DK.po b/account_payment_order/i18n/da_DK.po index 748cd3ca351..aef8c8d778d 100644 --- a/account_payment_order/i18n/da_DK.po +++ b/account_payment_order/i18n/da_DK.po @@ -760,15 +760,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/de.po b/account_payment_order/i18n/de.po index 09dbeb1fab5..29b29a43082 100644 --- a/account_payment_order/i18n/de.po +++ b/account_payment_order/i18n/de.po @@ -762,15 +762,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "Kein Zahlungsmodus auf Rechnung %s" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/el_GR.po b/account_payment_order/i18n/el_GR.po index a984dc25d7a..a78d65c88fc 100644 --- a/account_payment_order/i18n/el_GR.po +++ b/account_payment_order/i18n/el_GR.po @@ -759,15 +759,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/es.po b/account_payment_order/i18n/es.po index 33ab0c10d4d..a21eec64d07 100644 --- a/account_payment_order/i18n/es.po +++ b/account_payment_order/i18n/es.po @@ -795,17 +795,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "No hay modo de pago en la factura %s" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" -"Sin manejador para este método de pago. Tal vez no ha instalado el módulo de " -"Odoo relacionado." - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 @@ -1318,6 +1307,14 @@ msgid "otherwise, new payment orders will be created (one per payment mode)." msgstr "" "En caso contrario, se crearán nuevas órdenes (una por cada modo de pago)." +#, python-format +#~ msgid "" +#~ "No handler for this payment method. Maybe you haven't installed the " +#~ "related Odoo module." +#~ msgstr "" +#~ "Sin manejador para este método de pago. Tal vez no ha instalado el módulo " +#~ "de Odoo relacionado." + #~ msgid "SMS Delivery error" #~ msgstr "Error de entrega del SMS" diff --git a/account_payment_order/i18n/es_AR.po b/account_payment_order/i18n/es_AR.po index dab4df29189..06550e76b50 100644 --- a/account_payment_order/i18n/es_AR.po +++ b/account_payment_order/i18n/es_AR.po @@ -781,17 +781,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "No hay modo de pago en la factura %s" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" -"Sin manejador para este método de pago. Tal vez no ha instalado el módulo de " -"Odoo relacionado." - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 @@ -1290,6 +1279,14 @@ msgid "otherwise, new payment orders will be created (one per payment mode)." msgstr "" "En caso contrario, se crearán nuevas órdenes (una por cada modo de pago)." +#, python-format +#~ msgid "" +#~ "No handler for this payment method. Maybe you haven't installed the " +#~ "related Odoo module." +#~ msgstr "" +#~ "Sin manejador para este método de pago. Tal vez no ha instalado el módulo " +#~ "de Odoo relacionado." + #~ msgid "SMS Delivery error" #~ msgstr "Error de entrega de SMS" diff --git a/account_payment_order/i18n/es_CL.po b/account_payment_order/i18n/es_CL.po index 969c8aefc9b..3e1b5535538 100644 --- a/account_payment_order/i18n/es_CL.po +++ b/account_payment_order/i18n/es_CL.po @@ -782,17 +782,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "Sin modo de pago en la factura %s" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" -"No hay administrador para este método de pago. Tal vez no haya instalado el " -"módulo Odoo relacionado." - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 @@ -1290,6 +1279,14 @@ msgid "otherwise, new payment orders will be created (one per payment mode)." msgstr "" "de lo contrario, se crearán nuevos pagos de nómina (una por modo de pago)." +#, python-format +#~ msgid "" +#~ "No handler for this payment method. Maybe you haven't installed the " +#~ "related Odoo module." +#~ msgstr "" +#~ "No hay administrador para este método de pago. Tal vez no haya instalado " +#~ "el módulo Odoo relacionado." + #~ msgid "SMS Delivery error" #~ msgstr "Error de entrega de SMS" diff --git a/account_payment_order/i18n/es_CR.po b/account_payment_order/i18n/es_CR.po index 8069d9b865a..55277f8750f 100644 --- a/account_payment_order/i18n/es_CR.po +++ b/account_payment_order/i18n/es_CR.po @@ -758,15 +758,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/es_EC.po b/account_payment_order/i18n/es_EC.po index 011e9e25035..301dc5124f4 100644 --- a/account_payment_order/i18n/es_EC.po +++ b/account_payment_order/i18n/es_EC.po @@ -758,15 +758,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/es_ES.po b/account_payment_order/i18n/es_ES.po index 851f3f983de..4057064f3a5 100644 --- a/account_payment_order/i18n/es_ES.po +++ b/account_payment_order/i18n/es_ES.po @@ -758,15 +758,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/es_MX.po b/account_payment_order/i18n/es_MX.po index 313a3d4d3b2..06064cc6443 100644 --- a/account_payment_order/i18n/es_MX.po +++ b/account_payment_order/i18n/es_MX.po @@ -758,15 +758,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/es_VE.po b/account_payment_order/i18n/es_VE.po index 99ef5d7037d..6accb30568c 100644 --- a/account_payment_order/i18n/es_VE.po +++ b/account_payment_order/i18n/es_VE.po @@ -758,15 +758,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/et.po b/account_payment_order/i18n/et.po index 22fbe823dca..90e6f0c5962 100644 --- a/account_payment_order/i18n/et.po +++ b/account_payment_order/i18n/et.po @@ -757,15 +757,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/fi.po b/account_payment_order/i18n/fi.po index ace59b5c77a..1694d39e625 100644 --- a/account_payment_order/i18n/fi.po +++ b/account_payment_order/i18n/fi.po @@ -757,15 +757,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/fr.po b/account_payment_order/i18n/fr.po index 89fba910a48..f4743a8766f 100644 --- a/account_payment_order/i18n/fr.po +++ b/account_payment_order/i18n/fr.po @@ -795,17 +795,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "Pas de mode de paiement sur la facture %s" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" -"Aucun gestionnaire pour ce mode de paiement. Vous n'avez peut-être pas " -"installé le module Odoo associé." - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 @@ -1317,6 +1306,14 @@ msgid "otherwise, new payment orders will be created (one per payment mode)." msgstr "" "Sinon, de nouveaux ordres de paiement seront créés (un par mode de paiement)." +#, python-format +#~ msgid "" +#~ "No handler for this payment method. Maybe you haven't installed the " +#~ "related Odoo module." +#~ msgstr "" +#~ "Aucun gestionnaire pour ce mode de paiement. Vous n'avez peut-être pas " +#~ "installé le module Odoo associé." + #~ msgid "SMS Delivery error" #~ msgstr "Erreur d'envoi SMS" diff --git a/account_payment_order/i18n/fr_FR.po b/account_payment_order/i18n/fr_FR.po index 2d6ea597fc0..102121233d4 100644 --- a/account_payment_order/i18n/fr_FR.po +++ b/account_payment_order/i18n/fr_FR.po @@ -784,17 +784,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "Pas de mode de paiement sur la facture %s" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" -"Aucun gestionnaire pour ce mode de paiement. Vous n'avez peut-être pas " -"installé le module Odoo associé." - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 @@ -1293,6 +1282,14 @@ msgid "otherwise, new payment orders will be created (one per payment mode)." msgstr "" "sinon, de nouveaux ordres de paiement seront créés (un par mode de paiement)." +#, python-format +#~ msgid "" +#~ "No handler for this payment method. Maybe you haven't installed the " +#~ "related Odoo module." +#~ msgstr "" +#~ "Aucun gestionnaire pour ce mode de paiement. Vous n'avez peut-être pas " +#~ "installé le module Odoo associé." + #, python-format #~ msgid "" #~ "No Payment Line created for invoice %s because it already exists or " diff --git a/account_payment_order/i18n/gl.po b/account_payment_order/i18n/gl.po index 69bc601fe8d..18393ae6565 100644 --- a/account_payment_order/i18n/gl.po +++ b/account_payment_order/i18n/gl.po @@ -757,15 +757,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/hr.po b/account_payment_order/i18n/hr.po index 156333ccf19..a118f4b19e9 100644 --- a/account_payment_order/i18n/hr.po +++ b/account_payment_order/i18n/hr.po @@ -763,15 +763,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/it.po b/account_payment_order/i18n/it.po index 3e50467ba6e..ea800c7781c 100644 --- a/account_payment_order/i18n/it.po +++ b/account_payment_order/i18n/it.po @@ -759,15 +759,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/lt.po b/account_payment_order/i18n/lt.po index 6200276081c..55309724837 100644 --- a/account_payment_order/i18n/lt.po +++ b/account_payment_order/i18n/lt.po @@ -758,15 +758,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/nb_NO.po b/account_payment_order/i18n/nb_NO.po index b1d325e7401..aa2b40359b6 100644 --- a/account_payment_order/i18n/nb_NO.po +++ b/account_payment_order/i18n/nb_NO.po @@ -767,15 +767,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/nl.po b/account_payment_order/i18n/nl.po index 5ee33c301d9..ced9dd26184 100644 --- a/account_payment_order/i18n/nl.po +++ b/account_payment_order/i18n/nl.po @@ -783,15 +783,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "Geen betaalmode van factuur %s" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/nl_BE.po b/account_payment_order/i18n/nl_BE.po index 8eab07bc842..07647df0c3d 100644 --- a/account_payment_order/i18n/nl_BE.po +++ b/account_payment_order/i18n/nl_BE.po @@ -758,15 +758,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/nl_NL.po b/account_payment_order/i18n/nl_NL.po index 51a06e2317b..eee7fabbb06 100644 --- a/account_payment_order/i18n/nl_NL.po +++ b/account_payment_order/i18n/nl_NL.po @@ -759,15 +759,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/pl.po b/account_payment_order/i18n/pl.po index 723b86b276a..d40411c0fcd 100644 --- a/account_payment_order/i18n/pl.po +++ b/account_payment_order/i18n/pl.po @@ -758,15 +758,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/pt.po b/account_payment_order/i18n/pt.po index 988c050cea9..e24725fe8e9 100644 --- a/account_payment_order/i18n/pt.po +++ b/account_payment_order/i18n/pt.po @@ -757,15 +757,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/pt_BR.po b/account_payment_order/i18n/pt_BR.po index 95c2d41dec9..2b1382ff0bb 100644 --- a/account_payment_order/i18n/pt_BR.po +++ b/account_payment_order/i18n/pt_BR.po @@ -763,15 +763,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/pt_PT.po b/account_payment_order/i18n/pt_PT.po index f659146eb99..5f900b62904 100644 --- a/account_payment_order/i18n/pt_PT.po +++ b/account_payment_order/i18n/pt_PT.po @@ -758,15 +758,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/ro.po b/account_payment_order/i18n/ro.po index be65e8baaea..a1d33a887fd 100644 --- a/account_payment_order/i18n/ro.po +++ b/account_payment_order/i18n/ro.po @@ -758,15 +758,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/ru.po b/account_payment_order/i18n/ru.po index 2716940418e..87f69b7c5d4 100644 --- a/account_payment_order/i18n/ru.po +++ b/account_payment_order/i18n/ru.po @@ -759,15 +759,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/sl.po b/account_payment_order/i18n/sl.po index dc0d111eab9..cd67b8f8e6c 100644 --- a/account_payment_order/i18n/sl.po +++ b/account_payment_order/i18n/sl.po @@ -764,15 +764,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/sv.po b/account_payment_order/i18n/sv.po index c33c21efdb3..b211a4c0132 100644 --- a/account_payment_order/i18n/sv.po +++ b/account_payment_order/i18n/sv.po @@ -757,15 +757,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "Inget betalningssätt på faktura %s" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/th.po b/account_payment_order/i18n/th.po index 7077e978b08..d834e37e3e7 100644 --- a/account_payment_order/i18n/th.po +++ b/account_payment_order/i18n/th.po @@ -757,15 +757,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/tr.po b/account_payment_order/i18n/tr.po index 1e265371b57..a9cb4a1adbc 100644 --- a/account_payment_order/i18n/tr.po +++ b/account_payment_order/i18n/tr.po @@ -757,15 +757,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 diff --git a/account_payment_order/i18n/vi.po b/account_payment_order/i18n/vi.po index 4303239b533..114ee2b4928 100644 --- a/account_payment_order/i18n/vi.po +++ b/account_payment_order/i18n/vi.po @@ -757,15 +757,6 @@ msgstr "" msgid "No Payment Mode on invoice %s" msgstr "" -#. module: account_payment_order -#. odoo-python -#: code:addons/account_payment_order/models/account_payment_order.py:0 -#, python-format -msgid "" -"No handler for this payment method. Maybe you haven't installed the related " -"Odoo module." -msgstr "" - #. module: account_payment_order #. odoo-python #: code:addons/account_payment_order/models/account_move.py:0 From 29956408c75e387f5984582399ef8eaaadfe5f93 Mon Sep 17 00:00:00 2001 From: Zina Rasoamanana Date: Fri, 16 Feb 2024 14:19:41 +0100 Subject: [PATCH 026/115] [16.0][ADD] account_payment_method_fs_storage: init --- account_payment_method_fs_storage/README.rst | 104 ++++ account_payment_method_fs_storage/__init__.py | 1 + .../__manifest__.py | 23 + .../models/__init__.py | 3 + .../models/account_payment_method.py | 25 + .../models/account_payment_order.py | 67 +++ .../models/fs_storage.py | 28 ++ .../readme/CONFIGURE.rst | 5 + .../readme/CONTRIBUTORS.rst | 2 + .../readme/DESCRIPTION.rst | 3 + .../readme/INSTALL.rst | 6 + .../readme/USAGE.rst | 2 + .../static/description/icon.png | Bin 0 -> 9455 bytes .../static/description/index.html | 450 ++++++++++++++++++ .../tests/__init__.py | 1 + .../test_account_payment_method_fs_storage.py | 129 +++++ .../views/account_payment_method.xml | 22 + .../views/fs_storage.xml | 18 + .../addons/account_payment_method_fs_storage | 1 + .../setup.py | 6 + 20 files changed, 896 insertions(+) create mode 100644 account_payment_method_fs_storage/README.rst create mode 100644 account_payment_method_fs_storage/__init__.py create mode 100644 account_payment_method_fs_storage/__manifest__.py create mode 100644 account_payment_method_fs_storage/models/__init__.py create mode 100644 account_payment_method_fs_storage/models/account_payment_method.py create mode 100644 account_payment_method_fs_storage/models/account_payment_order.py create mode 100644 account_payment_method_fs_storage/models/fs_storage.py create mode 100644 account_payment_method_fs_storage/readme/CONFIGURE.rst create mode 100644 account_payment_method_fs_storage/readme/CONTRIBUTORS.rst create mode 100644 account_payment_method_fs_storage/readme/DESCRIPTION.rst create mode 100644 account_payment_method_fs_storage/readme/INSTALL.rst create mode 100644 account_payment_method_fs_storage/readme/USAGE.rst create mode 100644 account_payment_method_fs_storage/static/description/icon.png create mode 100644 account_payment_method_fs_storage/static/description/index.html create mode 100644 account_payment_method_fs_storage/tests/__init__.py create mode 100644 account_payment_method_fs_storage/tests/test_account_payment_method_fs_storage.py create mode 100644 account_payment_method_fs_storage/views/account_payment_method.xml create mode 100644 account_payment_method_fs_storage/views/fs_storage.xml create mode 120000 setup/account_payment_method_fs_storage/odoo/addons/account_payment_method_fs_storage create mode 100644 setup/account_payment_method_fs_storage/setup.py diff --git a/account_payment_method_fs_storage/README.rst b/account_payment_method_fs_storage/README.rst new file mode 100644 index 00000000000..2964fb16d9d --- /dev/null +++ b/account_payment_method_fs_storage/README.rst @@ -0,0 +1,104 @@ +================================= +Account Payment Method Fs Storage +================================= + +.. + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! This file is generated by oca-gen-addon-readme !! + !! changes will be overwritten. !! + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! source digest: sha256:119631980ff126b81a0dc920b633b345df0b03d62b0e2b875845c45c2ff454d0 + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png + :target: https://odoo-community.org/page/development-status + :alt: Beta +.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png + :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html + :alt: License: AGPL-3 +.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fbank--payment-lightgray.png?logo=github + :target: https://github.com/OCA/bank-payment/tree/16.0/account_payment_method_fs_storage + :alt: OCA/bank-payment +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_payment_method_fs_storage + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png + :target: https://runboat.odoo-community.org/builds?repo=OCA/bank-payment&target_branch=16.0 + :alt: Try me on Runboat + +|badge1| |badge2| |badge3| |badge4| |badge5| + +This Odoo addon enhances the payment mode functionality by introducing the ability to designate a specific storage location. +Users can now specify a storage destination within the payment method, +facilitating the automatic transfer of generated files to the designated location upon completing a payment transaction. + +**Table of contents** + +.. contents:: + :local: + +Installation +============ + +This module depends on : + +* account_payment_order +* fs_storage + +This module is part of the OCA/bank-payment suite. + +Configuration +============= + +For setting the Storage: + +#. Activate "Use On Payment Method" on storage (boolean on form of Storage) +#. Go to Invoicing/Accounting > Configuration > Payment Methods +#. You can specify your storage on the payment method + +Usage +===== + +This module sepcifically works for SEPA Payment. +When generating payment file on a payment order, the file will be pushed to a specific storage (set on the payment method). + +Bug Tracker +=========== + +Bugs are tracked on `GitHub Issues `_. +In case of trouble, please check there if your issue has already been reported. +If you spotted it first, help us to smash it by providing a detailed and welcomed +`feedback `_. + +Do not contact contributors directly about support or help with technical issues. + +Credits +======= + +Authors +~~~~~~~ + +* ACSONE SA/NV + +Contributors +~~~~~~~~~~~~ + +* François Honoré +* Zina Rasoamanana + +Maintainers +~~~~~~~~~~~ + +This module is maintained by the OCA. + +.. image:: https://odoo-community.org/logo.png + :alt: Odoo Community Association + :target: https://odoo-community.org + +OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use. + +This module is part of the `OCA/bank-payment `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/account_payment_method_fs_storage/__init__.py b/account_payment_method_fs_storage/__init__.py new file mode 100644 index 00000000000..0650744f6bc --- /dev/null +++ b/account_payment_method_fs_storage/__init__.py @@ -0,0 +1 @@ +from . import models diff --git a/account_payment_method_fs_storage/__manifest__.py b/account_payment_method_fs_storage/__manifest__.py new file mode 100644 index 00000000000..dab93530dd0 --- /dev/null +++ b/account_payment_method_fs_storage/__manifest__.py @@ -0,0 +1,23 @@ +# Copyright 2024 ACSONE SA/NV +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +{ + "name": "Account Payment Method Fs Storage", + "summary": """ + Add the possibility to specify on the payment method, + a storage where files generated will be pushed to upon payment + """, + "version": "16.0.1.0.0", + "license": "AGPL-3", + "author": "ACSONE SA/NV,Odoo Community Association (OCA)", + "website": "https://github.com/OCA/bank-payment", + "depends": [ + "account_banking_sepa_credit_transfer", + "fs_storage", + ], + "data": [ + "views/fs_storage.xml", + "views/account_payment_method.xml", + ], + "demo": [], +} diff --git a/account_payment_method_fs_storage/models/__init__.py b/account_payment_method_fs_storage/models/__init__.py new file mode 100644 index 00000000000..ed752e7bb67 --- /dev/null +++ b/account_payment_method_fs_storage/models/__init__.py @@ -0,0 +1,3 @@ +from . import account_payment_order +from . import account_payment_method +from . import fs_storage diff --git a/account_payment_method_fs_storage/models/account_payment_method.py b/account_payment_method_fs_storage/models/account_payment_method.py new file mode 100644 index 00000000000..433788acbc9 --- /dev/null +++ b/account_payment_method_fs_storage/models/account_payment_method.py @@ -0,0 +1,25 @@ +# Copyright 2024 ACSONE SA/NV +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo import fields, models + + +class AccountPaymentMethod(models.Model): + + _inherit = "account.payment.method" + + storage = fields.Selection( + selection="_get_selection_storage", + help="Storage where to put the file after generation", + ) + + def _get_selection_storage(self): + """ + This is to avoid giving access to the model fs.storage + at groups other than base.group_system + """ + storages = ( + self.env["fs.storage"].sudo().search([("use_on_payment_method", "=", True)]) + ) + + return [(str(r.id), r.display_name) for r in storages] diff --git a/account_payment_method_fs_storage/models/account_payment_order.py b/account_payment_method_fs_storage/models/account_payment_order.py new file mode 100644 index 00000000000..55f8d681f91 --- /dev/null +++ b/account_payment_method_fs_storage/models/account_payment_order.py @@ -0,0 +1,67 @@ +# Copyright 2024 ACSONE SA/NV +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). +import logging + +from odoo import _, models +from odoo.exceptions import UserError + +_logger = logging.getLogger(__name__) + + +class AccountPaymentOrder(models.Model): + + _inherit = "account.payment.order" + + def _must_be_exported_to_storage(self): + self.ensure_one() + return bool(self.payment_method_id.storage) + + def _export_to_storage(self, file_content, filename): + storage_id = int(self.payment_method_id.storage) + # user that confirms order may not have access to storage + export_storage = self.env["fs.storage"].sudo().search([("id", "=", storage_id)]) + try: + storage = export_storage._get_filesystem() + storage.pipe_file(filename, file_content) + + except Exception as e: + details = str(e) or str(type(e)) + _logger.error(details) + raise UserError( + _("Unknown issue to upload the file on the storage:\n{details}").format( + details=details + ) + ) from e + return True + + def generate_payment_file(self): + """ + Inherit to catch file generation and put it on the storage (if necessary) + """ + file_content, filename = super().generate_payment_file() + if self._must_be_exported_to_storage(): + self._export_to_storage(file_content, filename) + return file_content, filename + + def open2generated(self): + self.ensure_one() + action = super().open2generated() + if self._must_be_exported_to_storage(): + self.generated2uploaded() + action = { + "type": "ir.actions.client", + "tag": "display_notification", + "params": { + "type": "success", + "title": _("Generate and export"), + "message": _( + "The file has been generated and dropped on the storage." + ), + "sticky": True, + "next": { + "type": "ir.actions.client", + "tag": "reload", + }, + }, + } + return action diff --git a/account_payment_method_fs_storage/models/fs_storage.py b/account_payment_method_fs_storage/models/fs_storage.py new file mode 100644 index 00000000000..bc5a3c13865 --- /dev/null +++ b/account_payment_method_fs_storage/models/fs_storage.py @@ -0,0 +1,28 @@ +# Copyright 2024 ACSONE SA/NV +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo import _, api, fields, models +from odoo.exceptions import UserError + + +class FsStorage(models.Model): + + _inherit = "fs.storage" + + use_on_payment_method = fields.Boolean( + help="Tells if storage can be set on payment methods", + ) + + @api.constrains("use_on_payment_method") + def _check_use_on_payment_method(self): + storage_not_on_payment = self.filtered(lambda r: not r.use_on_payment_method) + storage_not_on_payment_str_ids = [str(r.id) for r in storage_not_on_payment] + data = self.env["account.payment.method"].read_group( + domain=[("storage", "in", storage_not_on_payment_str_ids)], + fields=["storage"], + groupby=["storage"], + ) + mapped_data = {r["storage"]: r["storage_count"] for r in data} + + if any(mapped_data.get(str(rec.id), 0) > 0 for rec in storage_not_on_payment): + raise UserError(_("Storage is already used on at least one payment method")) diff --git a/account_payment_method_fs_storage/readme/CONFIGURE.rst b/account_payment_method_fs_storage/readme/CONFIGURE.rst new file mode 100644 index 00000000000..e4c327ab132 --- /dev/null +++ b/account_payment_method_fs_storage/readme/CONFIGURE.rst @@ -0,0 +1,5 @@ +For setting the Storage: + +#. Activate "Use On Payment Method" on storage (boolean on form of Storage) +#. Go to Invoicing/Accounting > Configuration > Payment Methods +#. You can specify your storage on the payment method diff --git a/account_payment_method_fs_storage/readme/CONTRIBUTORS.rst b/account_payment_method_fs_storage/readme/CONTRIBUTORS.rst new file mode 100644 index 00000000000..5efd87d7834 --- /dev/null +++ b/account_payment_method_fs_storage/readme/CONTRIBUTORS.rst @@ -0,0 +1,2 @@ +* François Honoré +* Zina Rasoamanana diff --git a/account_payment_method_fs_storage/readme/DESCRIPTION.rst b/account_payment_method_fs_storage/readme/DESCRIPTION.rst new file mode 100644 index 00000000000..1d1de2a57a7 --- /dev/null +++ b/account_payment_method_fs_storage/readme/DESCRIPTION.rst @@ -0,0 +1,3 @@ +This Odoo addon enhances the payment mode functionality by introducing the ability to designate a specific storage location. +Users can now specify a storage destination within the payment method, +facilitating the automatic transfer of generated files to the designated location upon completing a payment transaction. diff --git a/account_payment_method_fs_storage/readme/INSTALL.rst b/account_payment_method_fs_storage/readme/INSTALL.rst new file mode 100644 index 00000000000..5bca6a2f2ac --- /dev/null +++ b/account_payment_method_fs_storage/readme/INSTALL.rst @@ -0,0 +1,6 @@ +This module depends on : + +* account_payment_order +* fs_storage + +This module is part of the OCA/bank-payment suite. diff --git a/account_payment_method_fs_storage/readme/USAGE.rst b/account_payment_method_fs_storage/readme/USAGE.rst new file mode 100644 index 00000000000..728038a4dea --- /dev/null +++ b/account_payment_method_fs_storage/readme/USAGE.rst @@ -0,0 +1,2 @@ +This module sepcifically works for SEPA Payment. +When generating payment file on a payment order, the file will be pushed to a specific storage (set on the payment method). \ No newline at end of file diff --git a/account_payment_method_fs_storage/static/description/icon.png b/account_payment_method_fs_storage/static/description/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..3a0328b516c4980e8e44cdb63fd945757ddd132d GIT binary patch literal 9455 zcmW++2RxMjAAjx~&dlBk9S+%}OXg)AGE&Cb*&}d0jUxM@u(PQx^-s)697TX`ehR4?GS^qbkof1cslKgkU)h65qZ9Oc=ml_0temigYLJfnz{IDzUf>bGs4N!v3=Z3jMq&A#7%rM5eQ#dc?k~! zVpnB`o+K7|Al`Q_U;eD$B zfJtP*jH`siUq~{KE)`jP2|#TUEFGRryE2`i0**z#*^6~AI|YzIWy$Cu#CSLW3q=GA z6`?GZymC;dCPk~rBS%eCb`5OLr;RUZ;D`}um=H)BfVIq%7VhiMr)_#G0N#zrNH|__ zc+blN2UAB0=617@>_u;MPHN;P;N#YoE=)R#i$k_`UAA>WWCcEVMh~L_ zj--gtp&|K1#58Yz*AHCTMziU1Jzt_jG0I@qAOHsk$2}yTmVkBp_eHuY$A9)>P6o~I z%aQ?!(GqeQ-Y+b0I(m9pwgi(IIZZzsbMv+9w{PFtd_<_(LA~0H(xz{=FhLB@(1&qHA5EJw1>>=%q2f&^X>IQ{!GJ4e9U z&KlB)z(84HmNgm2hg2C0>WM{E(DdPr+EeU_N@57;PC2&DmGFW_9kP&%?X4}+xWi)( z;)z%wI5>D4a*5XwD)P--sPkoY(a~WBw;E~AW`Yue4kFa^LM3X`8x|}ZUeMnqr}>kH zG%WWW>3ml$Yez?i%)2pbKPI7?5o?hydokgQyZsNEr{a|mLdt;X2TX(#B1j35xPnPW z*bMSSOauW>o;*=kO8ojw91VX!qoOQb)zHJ!odWB}d+*K?#sY_jqPdg{Sm2HdYzdEx zOGVPhVRTGPtv0o}RfVP;Nd(|CB)I;*t&QO8h zFfekr30S!-LHmV_Su-W+rEwYXJ^;6&3|L$mMC8*bQptyOo9;>Qb9Q9`ySe3%V$A*9 zeKEe+b0{#KWGp$F+tga)0RtI)nhMa-K@JS}2krK~n8vJ=Ngm?R!9G<~RyuU0d?nz# z-5EK$o(!F?hmX*2Yt6+coY`6jGbb7tF#6nHA zuKk=GGJ;ZwON1iAfG$E#Y7MnZVmrY|j0eVI(DN_MNFJmyZ|;w4tf@=CCDZ#5N_0K= z$;R~bbk?}TpfDjfB&aiQ$VA}s?P}xPERJG{kxk5~R`iRS(SK5d+Xs9swCozZISbnS zk!)I0>t=A<-^z(cmSFz3=jZ23u13X><0b)P)^1T_))Kr`e!-pb#q&J*Q`p+B6la%C zuVl&0duN<;uOsB3%T9Fp8t{ED108<+W(nOZd?gDnfNBC3>M8WE61$So|P zVvqH0SNtDTcsUdzaMDpT=Ty0pDHHNL@Z0w$Y`XO z2M-_r1S+GaH%pz#Uy0*w$Vdl=X=rQXEzO}d6J^R6zjM1u&c9vYLvLp?W7w(?np9x1 zE_0JSAJCPB%i7p*Wvg)pn5T`8k3-uR?*NT|J`eS#_#54p>!p(mLDvmc-3o0mX*mp_ zN*AeS<>#^-{S%W<*mz^!X$w_2dHWpcJ6^j64qFBft-o}o_Vx80o0>}Du;>kLts;$8 zC`7q$QI(dKYG`Wa8#wl@V4jVWBRGQ@1dr-hstpQL)Tl+aqVpGpbSfN>5i&QMXfiZ> zaA?T1VGe?rpQ@;+pkrVdd{klI&jVS@I5_iz!=UMpTsa~mBga?1r}aRBm1WS;TT*s0f0lY=JBl66Upy)-k4J}lh=P^8(SXk~0xW=T9v*B|gzIhN z>qsO7dFd~mgxAy4V?&)=5ieYq?zi?ZEoj)&2o)RLy=@hbCRcfT5jigwtQGE{L*8<@Yd{zg;CsL5mvzfDY}P-wos_6PfprFVaeqNE%h zKZhLtcQld;ZD+>=nqN~>GvROfueSzJD&BE*}XfU|H&(FssBqY=hPCt`d zH?@s2>I(|;fcW&YM6#V#!kUIP8$Nkdh0A(bEVj``-AAyYgwY~jB zT|I7Bf@%;7aL7Wf4dZ%VqF$eiaC38OV6oy3Z#TER2G+fOCd9Iaoy6aLYbPTN{XRPz z;U!V|vBf%H!}52L2gH_+j;`bTcQRXB+y9onc^wLm5wi3-Be}U>k_u>2Eg$=k!(l@I zcCg+flakT2Nej3i0yn+g+}%NYb?ta;R?(g5SnwsQ49U8Wng8d|{B+lyRcEDvR3+`O{zfmrmvFrL6acVP%yG98X zo&+VBg@px@i)%o?dG(`T;n*$S5*rnyiR#=wW}}GsAcfyQpE|>a{=$Hjg=-*_K;UtD z#z-)AXwSRY?OPefw^iI+ z)AXz#PfEjlwTes|_{sB?4(O@fg0AJ^g8gP}ex9Ucf*@_^J(s_5jJV}c)s$`Myn|Kd z$6>}#q^n{4vN@+Os$m7KV+`}c%4)4pv@06af4-x5#wj!KKb%caK{A&Y#Rfs z-po?Dcb1({W=6FKIUirH&(yg=*6aLCekcKwyfK^JN5{wcA3nhO(o}SK#!CINhI`-I z1)6&n7O&ZmyFMuNwvEic#IiOAwNkR=u5it{B9n2sAJV5pNhar=j5`*N!Na;c7g!l$ z3aYBqUkqqTJ=Re-;)s!EOeij=7SQZ3Hq}ZRds%IM*PtM$wV z@;rlc*NRK7i3y5BETSKuumEN`Xu_8GP1Ri=OKQ$@I^ko8>H6)4rjiG5{VBM>B|%`&&s^)jS|-_95&yc=GqjNo{zFkw%%HHhS~e=s zD#sfS+-?*t|J!+ozP6KvtOl!R)@@-z24}`9{QaVLD^9VCSR2b`b!KC#o;Ki<+wXB6 zx3&O0LOWcg4&rv4QG0)4yb}7BFSEg~=IR5#ZRj8kg}dS7_V&^%#Do==#`u zpy6{ox?jWuR(;pg+f@mT>#HGWHAJRRDDDv~@(IDw&R>9643kK#HN`!1vBJHnC+RM&yIh8{gG2q zA%e*U3|N0XSRa~oX-3EAneep)@{h2vvd3Xvy$7og(sayr@95+e6~Xvi1tUqnIxoIH zVWo*OwYElb#uyW{Imam6f2rGbjR!Y3`#gPqkv57dB6K^wRGxc9B(t|aYDGS=m$&S!NmCtrMMaUg(c zc2qC=2Z`EEFMW-me5B)24AqF*bV5Dr-M5ig(l-WPS%CgaPzs6p_gnCIvTJ=Y<6!gT zVt@AfYCzjjsMEGi=rDQHo0yc;HqoRNnNFeWZgcm?f;cp(6CNylj36DoL(?TS7eU#+ z7&mfr#y))+CJOXQKUMZ7QIdS9@#-}7y2K1{8)cCt0~-X0O!O?Qx#E4Og+;A2SjalQ zs7r?qn0H044=sDN$SRG$arw~n=+T_DNdSrarmu)V6@|?1-ZB#hRn`uilTGPJ@fqEy zGt(f0B+^JDP&f=r{#Y_wi#AVDf-y!RIXU^0jXsFpf>=Ji*TeqSY!H~AMbJdCGLhC) zn7Rx+sXw6uYj;WRYrLd^5IZq@6JI1C^YkgnedZEYy<&4(z%Q$5yv#Boo{AH8n$a zhb4Y3PWdr269&?V%uI$xMcUrMzl=;w<_nm*qr=c3Rl@i5wWB;e-`t7D&c-mcQl7x! zZWB`UGcw=Y2=}~wzrfLx=uet<;m3~=8I~ZRuzvMQUQdr+yTV|ATf1Uuomr__nDf=X zZ3WYJtHp_ri(}SQAPjv+Y+0=fH4krOP@S&=zZ-t1jW1o@}z;xk8 z(Nz1co&El^HK^NrhVHa-_;&88vTU>_J33=%{if;BEY*J#1n59=07jrGQ#IP>@u#3A z;!q+E1Rj3ZJ+!4bq9F8PXJ@yMgZL;>&gYA0%_Kbi8?S=XGM~dnQZQ!yBSgcZhY96H zrWnU;k)qy`rX&&xlDyA%(a1Hhi5CWkmg(`Gb%m(HKi-7Z!LKGRP_B8@`7&hdDy5n= z`OIxqxiVfX@OX1p(mQu>0Ai*v_cTMiw4qRt3~NBvr9oBy0)r>w3p~V0SCm=An6@3n)>@z!|o-$HvDK z|3D2ZMJkLE5loMKl6R^ez@Zz%S$&mbeoqH5`Bb){Ei21q&VP)hWS2tjShfFtGE+$z zzCR$P#uktu+#!w)cX!lWN1XU%K-r=s{|j?)Akf@q#3b#{6cZCuJ~gCxuMXRmI$nGtnH+-h z+GEi!*X=AP<|fG`1>MBdTb?28JYc=fGvAi2I<$B(rs$;eoJCyR6_bc~p!XR@O-+sD z=eH`-ye})I5ic1eL~TDmtfJ|8`0VJ*Yr=hNCd)G1p2MMz4C3^Mj?7;!w|Ly%JqmuW zlIEW^Ft%z?*|fpXda>Jr^1noFZEwFgVV%|*XhH@acv8rdGxeEX{M$(vG{Zw+x(ei@ zmfXb22}8-?Fi`vo-YVrTH*C?a8%M=Hv9MqVH7H^J$KsD?>!SFZ;ZsvnHr_gn=7acz z#W?0eCdVhVMWN12VV^$>WlQ?f;P^{(&pYTops|btm6aj>_Uz+hqpGwB)vWp0Cf5y< zft8-je~nn?W11plq}N)4A{l8I7$!ks_x$PXW-2XaRFswX_BnF{R#6YIwMhAgd5F9X zGmwdadS6(a^fjHtXg8=l?Rc0Sm%hk6E9!5cLVloEy4eh(=FwgP`)~I^5~pBEWo+F6 zSf2ncyMurJN91#cJTy_u8Y}@%!bq1RkGC~-bV@SXRd4F{R-*V`bS+6;W5vZ(&+I<9$;-V|eNfLa5n-6% z2(}&uGRF;p92eS*sE*oR$@pexaqr*meB)VhmIg@h{uzkk$9~qh#cHhw#>O%)b@+(| z^IQgqzuj~Sk(J;swEM-3TrJAPCq9k^^^`q{IItKBRXYe}e0Tdr=Huf7da3$l4PdpwWDop%^}n;dD#K4s#DYA8SHZ z&1!riV4W4R7R#C))JH1~axJ)RYnM$$lIR%6fIVA@zV{XVyx}C+a-Dt8Y9M)^KU0+H zR4IUb2CJ{Hg>CuaXtD50jB(_Tcx=Z$^WYu2u5kubqmwp%drJ6 z?Fo40g!Qd<-l=TQxqHEOuPX0;^z7iX?Ke^a%XT<13TA^5`4Xcw6D@Ur&VT&CUe0d} z1GjOVF1^L@>O)l@?bD~$wzgf(nxX1OGD8fEV?TdJcZc2KoUe|oP1#=$$7ee|xbY)A zDZq+cuTpc(fFdj^=!;{k03C69lMQ(|>uhRfRu%+!k&YOi-3|1QKB z z?n?eq1XP>p-IM$Z^C;2L3itnbJZAip*Zo0aw2bs8@(s^~*8T9go!%dHcAz2lM;`yp zD=7&xjFV$S&5uDaiScyD?B-i1ze`+CoRtz`Wn+Zl&#s4&}MO{@N!ufrzjG$B79)Y2d3tBk&)TxUTw@QS0TEL_?njX|@vq?Uz(nBFK5Pq7*xj#u*R&i|?7+6# z+|r_n#SW&LXhtheZdah{ZVoqwyT{D>MC3nkFF#N)xLi{p7J1jXlmVeb;cP5?e(=f# zuT7fvjSbjS781v?7{)-X3*?>tq?)Yd)~|1{BDS(pqC zC}~H#WXlkUW*H5CDOo<)#x7%RY)A;ShGhI5s*#cRDA8YgqG(HeKDx+#(ZQ?386dv! zlXCO)w91~Vw4AmOcATuV653fa9R$fyK8ul%rG z-wfS zihugoZyr38Im?Zuh6@RcF~t1anQu7>#lPpb#}4cOA!EM11`%f*07RqOVkmX{p~KJ9 z^zP;K#|)$`^Rb{rnHGH{~>1(fawV0*Z#)}M`m8-?ZJV<+e}s9wE# z)l&az?w^5{)`S(%MRzxdNqrs1n*-=jS^_jqE*5XDrA0+VE`5^*p3CuM<&dZEeCjoz zR;uu_H9ZPZV|fQq`Cyw4nscrVwi!fE6ciMmX$!_hN7uF;jjKG)d2@aC4ropY)8etW=xJvni)8eHi`H$%#zn^WJ5NLc-rqk|u&&4Z6fD_m&JfSI1Bvb?b<*n&sfl0^t z=HnmRl`XrFvMKB%9}>PaA`m-fK6a0(8=qPkWS5bb4=v?XcWi&hRY?O5HdulRi4?fN zlsJ*N-0Qw+Yic@s0(2uy%F@ib;GjXt01Fmx5XbRo6+n|pP(&nodMoap^z{~q ziEeaUT@Mxe3vJSfI6?uLND(CNr=#^W<1b}jzW58bIfyWTDle$mmS(|x-0|2UlX+9k zQ^EX7Nw}?EzVoBfT(-LT|=9N@^hcn-_p&sqG z&*oVs2JSU+N4ZD`FhCAWaS;>|wH2G*Id|?pa#@>tyxX`+4HyIArWDvVrX)2WAOQff z0qyHu&-S@i^MS-+j--!pr4fPBj~_8({~e1bfcl0wI1kaoN>mJL6KUPQm5N7lB(ui1 zE-o%kq)&djzWJ}ob<-GfDlkB;F31j-VHKvQUGQ3sp`CwyGJk_i!y^sD0fqC@$9|jO zOqN!r!8-p==F@ZVP=U$qSpY(gQ0)59P1&t@y?5rvg<}E+GB}26NYPp4f2YFQrQtot5mn3wu_qprZ=>Ig-$ zbW26Ws~IgY>}^5w`vTB(G`PTZaDiGBo5o(tp)qli|NeV( z@H_=R8V39rt5J5YB2Ky?4eJJ#b`_iBe2ot~6%7mLt5t8Vwi^Jy7|jWXqa3amOIoRb zOr}WVFP--DsS`1WpN%~)t3R!arKF^Q$e12KEqU36AWwnCBICpH4XCsfnyrHr>$I$4 z!DpKX$OKLWarN7nv@!uIA+~RNO)l$$w}p(;b>mx8pwYvu;dD_unryX_NhT8*Tj>BTrTTL&!?O+%Rv;b?B??gSzdp?6Uug9{ zd@V08Z$BdI?fpoCS$)t4mg4rT8Q_I}h`0d-vYZ^|dOB*Q^S|xqTV*vIg?@fVFSmMpaw0qtTRbx} z({Pg?#{2`sc9)M5N$*N|4;^t$+QP?#mov zGVC@I*lBVrOU-%2y!7%)fAKjpEFsgQc4{amtiHb95KQEwvf<(3T<9-Zm$xIew#P22 zc2Ix|App^>v6(3L_MCU0d3W##AB0M~3D00EWoKZqsJYT(#@w$Y_H7G22M~ApVFTRHMI_3be)Lkn#0F*V8Pq zc}`Cjy$bE;FJ6H7p=0y#R>`}-m4(0F>%@P|?7fx{=R^uFdISRnZ2W_xQhD{YuR3t< z{6yxu=4~JkeA;|(J6_nv#>Nvs&FuLA&PW^he@t(UwFFE8)|a!R{`E`K`i^ZnyE4$k z;(749Ix|oi$c3QbEJ3b~D_kQsPz~fIUKym($a_7dJ?o+40*OLl^{=&oq$<#Q(yyrp z{J-FAniyAw9tPbe&IhQ|a`DqFTVQGQ&Gq3!C2==4x{6EJwiPZ8zub-iXoUtkJiG{} zPaR&}_fn8_z~(=;5lD-aPWD3z8PZS@AaUiomF!G8I}Mf>e~0g#BelA-5#`cj;O5>N Xviia!U7SGha1wx#SCgwmn*{w2TRX*I literal 0 HcmV?d00001 diff --git a/account_payment_method_fs_storage/static/description/index.html b/account_payment_method_fs_storage/static/description/index.html new file mode 100644 index 00000000000..3133729a621 --- /dev/null +++ b/account_payment_method_fs_storage/static/description/index.html @@ -0,0 +1,450 @@ + + + + + + +Account Payment Method Fs Storage + + + +
+

Account Payment Method Fs Storage

+ + +

Beta License: AGPL-3 OCA/bank-payment Translate me on Weblate Try me on Runboat

+

This Odoo addon enhances the payment mode functionality by introducing the ability to designate a specific storage location. +Users can now specify a storage destination within the payment method, +facilitating the automatic transfer of generated files to the designated location upon completing a payment transaction.

+

Table of contents

+ +
+

Installation

+

This module depends on :

+
    +
  • account_payment_order
  • +
  • fs_storage
  • +
+

This module is part of the OCA/bank-payment suite.

+
+
+

Configuration

+

For setting the Storage:

+
    +
  1. Activate “Use On Payment Method” on storage (boolean on form of Storage)
  2. +
  3. Go to Invoicing/Accounting > Configuration > Payment Methods
  4. +
  5. You can specify your storage on the payment method
  6. +
+
+
+

Usage

+

This module sepcifically works for SEPA Payment. +When generating payment file on a payment order, the file will be pushed to a specific storage (set on the payment method).

+
+
+

Bug Tracker

+

Bugs are tracked on GitHub Issues. +In case of trouble, please check there if your issue has already been reported. +If you spotted it first, help us to smash it by providing a detailed and welcomed +feedback.

+

Do not contact contributors directly about support or help with technical issues.

+
+
+

Credits

+
+

Authors

+
    +
  • ACSONE SA/NV
  • +
+
+
+

Contributors

+ +
+
+

Maintainers

+

This module is maintained by the OCA.

+Odoo Community Association +

OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use.

+

This module is part of the OCA/bank-payment project on GitHub.

+

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

+
+
+
+ + diff --git a/account_payment_method_fs_storage/tests/__init__.py b/account_payment_method_fs_storage/tests/__init__.py new file mode 100644 index 00000000000..be4eb665206 --- /dev/null +++ b/account_payment_method_fs_storage/tests/__init__.py @@ -0,0 +1 @@ +from . import test_account_payment_method_fs_storage diff --git a/account_payment_method_fs_storage/tests/test_account_payment_method_fs_storage.py b/account_payment_method_fs_storage/tests/test_account_payment_method_fs_storage.py new file mode 100644 index 00000000000..99594187ab5 --- /dev/null +++ b/account_payment_method_fs_storage/tests/test_account_payment_method_fs_storage.py @@ -0,0 +1,129 @@ +# Copyright 2024 ACSONE SA/NV +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). +from contextlib import contextmanager +from datetime import date +from unittest.mock import patch + +from odoo.exceptions import UserError +from odoo.tests import tagged + +from odoo.addons.account.tests.common import AccountTestInvoicingCommon + + +@tagged("-at_install", "post_install") +class TestAccountPaymentMethodFsStorage(AccountTestInvoicingCommon): + @classmethod + def setUpClass(cls): + super().setUpClass() + cls.env = cls.env(context=dict(cls.env.context, tracking_disable=True)) + cls.company = cls.company_data["company"] + + cls.fs_storage = cls.env.ref("fs_storage.default_fs_storage") + + cls.fs_storage.write( + { + "use_on_payment_method": True, + } + ) + cls.payment_method = cls.env.ref( + "account.account_payment_method_manual_out" + ).copy( + { + "storage": str(cls.fs_storage.id), + "name": "method test", + "code": "test", + } + ) + + cls.creation_mode = cls.env["account.payment.mode"].create( + { + "name": "Test Direct Debit of suppliers from Société Générale", + "company_id": cls.company.id, + "bank_account_link": "variable", + "payment_method_id": cls.payment_method.id, + } + ) + cls.bank_journal = cls.company_data["default_journal_bank"] + cls.partner = cls.env["res.partner"].create( + { + "name": "Test Partner", + } + ) + + # create payment order with payment method and fs storage + + @contextmanager + def with_custom_method(self): + path = ( + "odoo.addons.account_payment_order.models" + ".account_payment_order.AccountPaymentOrder.generate_payment_file" + ) + with patch( + path, + new=lambda self: (b"Content", "Filename"), + create=not hasattr( + self.env["account.payment.order"], "generate_payment_file" + ), + ): + yield + + def test_payment_method_fs_storage(self): + order_vals = { + "payment_type": "outbound", + "payment_mode_id": self.creation_mode.id, + "journal_id": self.bank_journal.id, + } + + order = self.env["account.payment.order"].create(order_vals) + + vals = { + "order_id": order.id, + "partner_id": self.partner.id, + "communication": "manual line and manual date", + "currency_id": order.payment_mode_id.company_id.currency_id.id, + "amount_currency": 200, + "date": date.today(), + } + self.env["account.payment.line"].create(vals) + + order.draft2open() + with self.with_custom_method(): + action = order.open2generated() + + self.assertDictEqual( + action, + { + "type": "ir.actions.client", + "tag": "display_notification", + "params": { + "type": "success", + "title": "Generate and export", + "message": "The file has been generated and dropped on the storage.", + "sticky": True, + "next": { + "type": "ir.actions.client", + "tag": "reload", + }, + }, + }, + ) + + attachment = self.env["ir.attachment"].search( + [("res_model", "=", "account.payment.order"), ("res_id", "=", order.id)] + ) + + self.assertEqual(len(attachment), 1) + + def test_check_use_on_payment_method(self): + self.assertEqual(self.payment_method.storage, str(self.fs_storage.id)) + + with self.assertRaisesRegex( + UserError, "Storage is already used on at least one payment method" + ): + self.fs_storage.write({"use_on_payment_method": False}) + + self.payment_method.write({"storage": False}) + self.fs_storage.write({"use_on_payment_method": False}) + + self.assertFalse(self.payment_method.storage) + self.assertFalse(self.fs_storage.use_on_payment_method) diff --git a/account_payment_method_fs_storage/views/account_payment_method.xml b/account_payment_method_fs_storage/views/account_payment_method.xml new file mode 100644 index 00000000000..9dde8dfc5aa --- /dev/null +++ b/account_payment_method_fs_storage/views/account_payment_method.xml @@ -0,0 +1,22 @@ + + + + + + account.payment.method.form (in account_payment_method_fs_storage) + account.payment.method + + + + + + + + + diff --git a/account_payment_method_fs_storage/views/fs_storage.xml b/account_payment_method_fs_storage/views/fs_storage.xml new file mode 100644 index 00000000000..891aaef007d --- /dev/null +++ b/account_payment_method_fs_storage/views/fs_storage.xml @@ -0,0 +1,18 @@ + + + + + + fs.storage + + + + + + + + + + + diff --git a/setup/account_payment_method_fs_storage/odoo/addons/account_payment_method_fs_storage b/setup/account_payment_method_fs_storage/odoo/addons/account_payment_method_fs_storage new file mode 120000 index 00000000000..b9c8bd8942d --- /dev/null +++ b/setup/account_payment_method_fs_storage/odoo/addons/account_payment_method_fs_storage @@ -0,0 +1 @@ +../../../../account_payment_method_fs_storage \ No newline at end of file diff --git a/setup/account_payment_method_fs_storage/setup.py b/setup/account_payment_method_fs_storage/setup.py new file mode 100644 index 00000000000..28c57bb6403 --- /dev/null +++ b/setup/account_payment_method_fs_storage/setup.py @@ -0,0 +1,6 @@ +import setuptools + +setuptools.setup( + setup_requires=['setuptools-odoo'], + odoo_addon=True, +) From a4d78457b2cc2bd28e2e7a39d2a7ff33e2c212aa Mon Sep 17 00:00:00 2001 From: mymage Date: Fri, 23 Feb 2024 12:14:03 +0000 Subject: [PATCH 027/115] Translated using Weblate (Italian) Currently translated at 30.8% (54 of 175 strings) Translation: bank-payment-16.0/bank-payment-16.0-account_banking_pain_base Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_banking_pain_base/it/ --- account_banking_pain_base/i18n/it.po | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/account_banking_pain_base/i18n/it.po b/account_banking_pain_base/i18n/it.po index 93f54fb4e2d..f27acb087c5 100644 --- a/account_banking_pain_base/i18n/it.po +++ b/account_banking_pain_base/i18n/it.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 11.0\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-02-16 15:48+0000\n" +"PO-Revision-Date: 2024-02-23 14:39+0000\n" "Last-Translator: mymage \n" "Language-Team: none\n" "Language: it\n" @@ -701,7 +701,7 @@ msgstr "" #. module: account_banking_pain_base #: model:ir.model,name:account_banking_pain_base.model_account_payment_order msgid "Payment Order" -msgstr "Ordini di pagamento" +msgstr "Ordine di pagamento" #. module: account_banking_pain_base #: model:ir.model.fields.selection,name:account_banking_pain_base.selection__account_payment_line__purpose__ptsp From 96547a864f62da52ab95c27259936fe532d2cca4 Mon Sep 17 00:00:00 2001 From: mymage Date: Thu, 29 Feb 2024 12:42:16 +0000 Subject: [PATCH 028/115] Translated using Weblate (Italian) Currently translated at 75.0% (3 of 4 strings) Translation: bank-payment-16.0/bank-payment-16.0-account_payment_sale Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_payment_sale/it/ --- account_payment_sale/i18n/it.po | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/account_payment_sale/i18n/it.po b/account_payment_sale/i18n/it.po index 5a5e444d4ac..dc44bca4109 100644 --- a/account_payment_sale/i18n/it.po +++ b/account_payment_sale/i18n/it.po @@ -6,20 +6,20 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 14.0\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2023-04-07 13:22+0000\n" -"Last-Translator: Francesco Foresti \n" +"PO-Revision-Date: 2024-02-29 15:35+0000\n" +"Last-Translator: mymage \n" "Language-Team: none\n" "Language: it\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.14.1\n" +"X-Generator: Weblate 4.17\n" #. module: account_payment_sale #: model_terms:ir.ui.view,arch_db:account_payment_sale.report_sale_payment_mode msgid "Payment Mode:" -msgstr "Modo di Pagamento:" +msgstr "Modo di pagamento:" #. module: account_payment_sale #: model:ir.model.fields,field_description:account_payment_sale.field_sale_order__payment_mode_id From 9738dd9197312e2e82f58f872469367820e865bf Mon Sep 17 00:00:00 2001 From: mymage Date: Thu, 29 Feb 2024 13:25:53 +0000 Subject: [PATCH 029/115] Translated using Weblate (Italian) Currently translated at 30.8% (54 of 175 strings) Translation: bank-payment-16.0/bank-payment-16.0-account_banking_pain_base Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_banking_pain_base/it/ --- account_banking_pain_base/i18n/it.po | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/account_banking_pain_base/i18n/it.po b/account_banking_pain_base/i18n/it.po index f27acb087c5..a89707192d1 100644 --- a/account_banking_pain_base/i18n/it.po +++ b/account_banking_pain_base/i18n/it.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 11.0\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-02-23 14:39+0000\n" +"PO-Revision-Date: 2024-02-29 15:35+0000\n" "Last-Translator: mymage \n" "Language-Team: none\n" "Language: it\n" @@ -196,7 +196,7 @@ msgstr "Comunicazione" #. module: account_banking_pain_base #: model:ir.model.fields,field_description:account_banking_pain_base.field_account_payment_line__communication_type msgid "Communication Type" -msgstr "Tipo comunicazioni" +msgstr "Tipo comunicazione" #. module: account_banking_pain_base #: model:ir.model,name:account_banking_pain_base.model_res_company From aafec531aac18834cdd5c30b3b6afbd3713a9675 Mon Sep 17 00:00:00 2001 From: mymage Date: Fri, 1 Mar 2024 08:04:44 +0000 Subject: [PATCH 030/115] Translated using Weblate (Italian) Currently translated at 30.8% (54 of 175 strings) Translation: bank-payment-16.0/bank-payment-16.0-account_banking_pain_base Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_banking_pain_base/it/ --- account_banking_pain_base/i18n/it.po | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/account_banking_pain_base/i18n/it.po b/account_banking_pain_base/i18n/it.po index a89707192d1..16e067e51ff 100644 --- a/account_banking_pain_base/i18n/it.po +++ b/account_banking_pain_base/i18n/it.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 11.0\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-02-29 15:35+0000\n" +"PO-Revision-Date: 2024-03-01 10:34+0000\n" "Last-Translator: mymage \n" "Language-Team: none\n" "Language: it\n" @@ -538,7 +538,7 @@ msgstr "Pagamento irrevocabile Carta di Debito" #. module: account_banking_pain_base #: model:ir.model.fields,help:account_banking_pain_base.field_account_payment_line__communication msgid "Label of the payment that will be seen by the destinee" -msgstr "Descrizione del pagamento che verrà letto dal destinatario" +msgstr "Etichetta del pagamento che sarà vista dal destinatario" #. module: account_banking_pain_base #: model:ir.model.fields.selection,name:account_banking_pain_base.selection__account_payment_line__purpose__lbri From ef05873365ca2bf73f70e90823c26f27de8becae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Mart=C3=ADnez?= Date: Fri, 16 Feb 2024 17:43:04 +0100 Subject: [PATCH 031/115] [IMP] account_payment_order: Display a message with the archived bank accounts TT47789 --- .../i18n/account_payment_order.pot | 19 +++++++++++++- account_payment_order/i18n/es.po | 23 ++++++++++++++--- .../models/account_payment_order.py | 25 +++++++++++++++++++ .../tests/test_payment_order_outbound.py | 14 +++++++++++ .../views/account_payment_order.xml | 10 ++++++++ 5 files changed, 86 insertions(+), 5 deletions(-) diff --git a/account_payment_order/i18n/account_payment_order.pot b/account_payment_order/i18n/account_payment_order.pot index ec8296a2935..f5a2eff1ec7 100644 --- a/account_payment_order/i18n/account_payment_order.pot +++ b/account_payment_order/i18n/account_payment_order.pot @@ -6,6 +6,8 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 16.0\n" "Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-02-19 07:23+0000\n" +"PO-Revision-Date: 2024-02-19 07:23+0000\n" "Last-Translator: \n" "Language-Team: \n" "MIME-Version: 1.0\n" @@ -32,6 +34,12 @@ msgid "" "has been automatically created." msgstr "" +#. module: account_payment_order +#: code:addons/account_payment_order/models/account_payment_order.py:0 +#, python-format +msgid "Account Number: %s - Partner: %s" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.print_account_payment_order_document msgid "Company Currency:" @@ -833,6 +841,11 @@ msgstr "" msgid "Partner Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__partner_banks_archive_msg +msgid "Partner Banks Archive Msg" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__partner_ids msgid "Partners" @@ -1094,7 +1107,11 @@ msgid "" msgstr "" #. module: account_payment_order -#. odoo-python +#: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form +msgid "The following bank accounts are archived:" +msgstr "" + +#. module: account_payment_order #: code:addons/account_payment_order/models/account_move.py:0 #, python-format msgid "The invoice %s is not in Posted state" diff --git a/account_payment_order/i18n/es.po b/account_payment_order/i18n/es.po index a21eec64d07..f02e30fd420 100644 --- a/account_payment_order/i18n/es.po +++ b/account_payment_order/i18n/es.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 11.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-01-05 10:20+0000\n" -"PO-Revision-Date: 2023-11-11 15:38+0000\n" +"POT-Creation-Date: 2024-02-19 07:23+0000\n" +"PO-Revision-Date: 2024-02-19 08:25+0100\n" "Last-Translator: Ivorra78 \n" "Language-Team: Spanish (https://www.transifex.com/oca/teams/23907/es/)\n" "Language: es\n" @@ -17,7 +17,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.17\n" +"X-Generator: Poedit 3.0.1\n" #. module: account_payment_order #. odoo-python @@ -43,6 +43,12 @@ msgstr "" "model=account.payment.order data-oe-id=%(order_id)d>%(name)s, que ha " "sido creada automáticamente." +#. module: account_payment_order +#: code:addons/account_payment_order/models/account_payment_order.py:0 +#, python-format +msgid "Account Number: %s - Partner: %s" +msgstr "Número de cuenta: %s - Empresa: %s" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.print_account_payment_order_document msgid "Company Currency:" @@ -880,6 +886,11 @@ msgstr "Empresa" msgid "Partner Bank Account" msgstr "Cuenta bancaria" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__partner_banks_archive_msg +msgid "Partner Banks Archive Msg" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__partner_ids msgid "Partners" @@ -1149,7 +1160,11 @@ msgstr "" "La factura %(move)s ya está agregada en la(s) orden(es) de pago %(order)s." #. module: account_payment_order -#. odoo-python +#: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form +msgid "The following bank accounts are archived:" +msgstr "Las siguientes cuentas bancarias están archivadas:" + +#. module: account_payment_order #: code:addons/account_payment_order/models/account_move.py:0 #, python-format msgid "The invoice %s is not in Posted state" diff --git a/account_payment_order/models/account_payment_order.py b/account_payment_order/models/account_payment_order.py index 331954c7110..eec8ddbf90b 100644 --- a/account_payment_order/models/account_payment_order.py +++ b/account_payment_order/models/account_payment_order.py @@ -27,6 +27,9 @@ class AccountPaymentOrder(models.Model): states={"draft": [("readonly", False)]}, check_company=True, ) + partner_banks_archive_msg = fields.Html( + compute="_compute_partner_banks_archive_msg", + ) payment_type = fields.Selection( selection=[("inbound", "Inbound"), ("outbound", "Outbound")], readonly=True, @@ -144,6 +147,28 @@ class AccountPaymentOrder(models.Model): ) description = fields.Char() + @api.depends( + "payment_line_ids.partner_bank_id", "payment_line_ids.partner_bank_id.active" + ) + def _compute_partner_banks_archive_msg(self): + """Information message to show archived bank accounts and to be able + to act on them before confirmation (avoid duplicates).""" + for item in self: + msg_lines = [] + for partner_bank in item.payment_line_ids.filtered( + lambda x: x.partner_bank_id and not x.partner_bank_id.active + ).mapped("partner_bank_id"): + msg_line = _( + "Account Number: %(number)s - Partner: %(name)s" + ) % { + "number": partner_bank.acc_number, + "name": partner_bank.partner_id.display_name, + } + msg_lines.append(msg_line) + item.partner_banks_archive_msg = ( + "
".join(msg_lines) if len(msg_lines) > 0 else False + ) + @api.depends("payment_mode_id") def _compute_allowed_journal_ids(self): for record in self: diff --git a/account_payment_order/tests/test_payment_order_outbound.py b/account_payment_order/tests/test_payment_order_outbound.py index 6108a5775f5..03be242b128 100644 --- a/account_payment_order/tests/test_payment_order_outbound.py +++ b/account_payment_order/tests/test_payment_order_outbound.py @@ -24,6 +24,15 @@ def setUpClass(cls, chart_template_ref=None): cls.partner = cls.env["res.partner"].create( { "name": "Test Partner", + "bank_ids": [ + ( + 0, + 0, + { + "acc_number": "TEST-NUMBER", + }, + ) + ], } ) cls.invoice_line_account = cls.env["account.account"].create( @@ -205,6 +214,11 @@ def order_creation(self, date_prefered): line_created_due.populate() line_created_due.create_payment_lines() self.assertGreater(len(order.payment_line_ids), 0) + self.assertFalse(order.partner_banks_archive_msg) + order.payment_line_ids.partner_bank_id.action_archive() + self.assertTrue(order.partner_banks_archive_msg) + order.payment_line_ids.partner_bank_id.action_unarchive() + self.assertFalse(order.partner_banks_archive_msg) order.draft2open() order.open2generated() order.generated2uploaded() diff --git a/account_payment_order/views/account_payment_order.xml b/account_payment_order/views/account_payment_order.xml index 4e2e714054b..7ce6b311be1 100644 --- a/account_payment_order/views/account_payment_order.xml +++ b/account_payment_order/views/account_payment_order.xml @@ -58,6 +58,16 @@ statusbar_visible="draft,open,generated,uploaded" /> +
From 3bf5c869b037f92b54b5613950c05639fa0b31d8 Mon Sep 17 00:00:00 2001 From: Ivorra78 Date: Wed, 27 Mar 2024 12:58:21 +0000 Subject: [PATCH 059/115] Translated using Weblate (Spanish) Currently translated at 100.0% (211 of 211 strings) Translation: bank-payment-16.0/bank-payment-16.0-account_payment_order Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_payment_order/es/ --- account_payment_order/i18n/es.po | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/account_payment_order/i18n/es.po b/account_payment_order/i18n/es.po index cf42fd7b39e..3771ef263b4 100644 --- a/account_payment_order/i18n/es.po +++ b/account_payment_order/i18n/es.po @@ -9,7 +9,7 @@ msgstr "" "Project-Id-Version: Odoo Server 11.0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2024-02-19 07:23+0000\n" -"PO-Revision-Date: 2024-02-19 08:25+0100\n" +"PO-Revision-Date: 2024-03-27 15:36+0000\n" "Last-Translator: Ivorra78 \n" "Language-Team: Spanish (https://www.transifex.com/oca/teams/23907/es/)\n" "Language: es\n" @@ -17,7 +17,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Poedit 3.0.1\n" +"X-Generator: Weblate 4.17\n" #. module: account_payment_order #. odoo-python @@ -48,7 +48,7 @@ msgstr "" #: code:addons/account_payment_order/models/account_payment_order.py:0 #, python-format msgid "Account Number: %(number)s - Partner: %(name)s" -msgstr "" +msgstr "Número de Cuenta: %(number)s - Socio: %(name)s" #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.print_account_payment_order_document @@ -890,7 +890,7 @@ msgstr "Cuenta bancaria" #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__partner_banks_archive_msg msgid "Partner Banks Archive Msg" -msgstr "" +msgstr "Bancos asociados Archivo Msg" #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__partner_ids From 3e0fb9fda08b38141c4c1e13608b4589f46044c3 Mon Sep 17 00:00:00 2001 From: oca-ci Date: Mon, 1 Apr 2024 06:56:28 +0000 Subject: [PATCH 060/115] [UPD] Update account_banking_sepa_direct_debit.pot --- .../account_banking_sepa_direct_debit.pot | 36 +++++++++++-------- 1 file changed, 21 insertions(+), 15 deletions(-) diff --git a/account_banking_sepa_direct_debit/i18n/account_banking_sepa_direct_debit.pot b/account_banking_sepa_direct_debit/i18n/account_banking_sepa_direct_debit.pot index 489bf8dc27a..39c5e7181f9 100644 --- a/account_banking_sepa_direct_debit/i18n/account_banking_sepa_direct_debit.pot +++ b/account_banking_sepa_direct_debit/i18n/account_banking_sepa_direct_debit.pot @@ -194,6 +194,11 @@ msgstr "" msgid "Display Name" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_mail_compose_message +msgid "Email composition wizard" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_payment_mode__sepa_creditor_identifier msgid "" @@ -238,6 +243,11 @@ msgstr "" msgid "Invalid mandate type in '%s'. Valid ones are 'Recurrent' or 'One-Off'" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__is_sent +msgid "Is Sent" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__format msgid "Mandate Format" @@ -257,11 +267,6 @@ msgstr "" msgid "Mandate update" msgstr "" -#. module: account_banking_sepa_direct_debit -#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__is_sent -msgid "Mark Mandate As Sent" -msgstr "" - #. module: account_banking_sepa_direct_debit #. odoo-python #: code:addons/account_banking_sepa_direct_debit/models/account_payment_line.py:0 @@ -347,6 +352,11 @@ msgstr "" msgid "SEPA Direct Debit of customers" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:ir.actions.report,name:account_banking_sepa_direct_debit.report_sepa_direct_debit_mandate +msgid "SEPA Mandate" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:mail.template,subject:account_banking_sepa_direct_debit.email_template_sepa_mandate msgid "" @@ -359,11 +369,6 @@ msgstr "" msgid "SEPA Mandate: Send by email" msgstr "" -#. module: account_banking_sepa_direct_debit -#: model:ir.actions.report,name:account_banking_sepa_direct_debit.report_sepa_direct_debit_mandate -msgid "SEPA Mandate" -msgstr "" - #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__scheme #: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search @@ -496,14 +501,15 @@ msgstr "" msgid "pain.008.003.02 (direct debit in Germany)" msgstr "" -#. module: account_banking_sepa_direct_debit -#: model:mail.template,report_name:account_banking_sepa_direct_debit.email_template_sepa_mandate -msgid "{{ (object.unique_mandate_reference or 'SEPA Mandate').replace('/','_') }}" -msgstr "" - #. module: account_banking_sepa_direct_debit #: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document msgid "" "to send instructions to your bank to debit your account and (B) your bank to\n" " debit your account in accordance with the instructions from" msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:mail.template,report_name:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"{{ (object.unique_mandate_reference or 'SEPA Mandate').replace('/','_') }}" +msgstr "" From 86dcd9929dabff309be1966b07c6c4c604c70b70 Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Mon, 1 Apr 2024 07:00:15 +0000 Subject: [PATCH 061/115] [BOT] post-merge updates --- README.md | 2 +- account_banking_sepa_direct_debit/README.rst | 2 +- account_banking_sepa_direct_debit/__manifest__.py | 2 +- .../static/description/index.html | 3 +-- 4 files changed, 4 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 522374305df..feaac10d776 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ addon | version | maintainers | summary [account_banking_mandate_sale_contact](account_banking_mandate_sale_contact/) | 16.0.1.0.1 | [![tisho99](https://github.com/tisho99.png?size=30px)](https://github.com/tisho99) | Add a specific contact mandate to sale orders [account_banking_pain_base](account_banking_pain_base/) | 16.0.1.1.0 | | Base module for PAIN file generation [account_banking_sepa_credit_transfer](account_banking_sepa_credit_transfer/) | 16.0.1.1.1 | | Create SEPA XML files for Credit Transfers -[account_banking_sepa_direct_debit](account_banking_sepa_direct_debit/) | 16.0.1.1.0 | | Create SEPA files for Direct Debit +[account_banking_sepa_direct_debit](account_banking_sepa_direct_debit/) | 16.0.1.2.0 | | Create SEPA files for Direct Debit [account_payment_method_fs_storage](account_payment_method_fs_storage/) | 16.0.1.0.1 | | Add the possibility to specify on the payment method, a storage where files generated will be pushed to upon payment [account_payment_mode](account_payment_mode/) | 16.0.1.2.0 | | Account Payment Mode [account_payment_order](account_payment_order/) | 16.0.1.7.0 | | Account Payment Order diff --git a/account_banking_sepa_direct_debit/README.rst b/account_banking_sepa_direct_debit/README.rst index bb523bb5d39..62c83474c1f 100644 --- a/account_banking_sepa_direct_debit/README.rst +++ b/account_banking_sepa_direct_debit/README.rst @@ -7,7 +7,7 @@ Account Banking SEPA Direct Debit !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:7d9245ac67651ecbd5ff384e64e3f07f3c45897c58cb60b9bd0e4b0af6e0bb6c + !! source digest: sha256:a433755fd2d5cc4c242b073380fd215deb68ea43af0cdef7207c68febe5f8c10 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png diff --git a/account_banking_sepa_direct_debit/__manifest__.py b/account_banking_sepa_direct_debit/__manifest__.py index cdce394f5f6..8e63a908ac0 100644 --- a/account_banking_sepa_direct_debit/__manifest__.py +++ b/account_banking_sepa_direct_debit/__manifest__.py @@ -7,7 +7,7 @@ { "name": "Account Banking SEPA Direct Debit", "summary": "Create SEPA files for Direct Debit", - "version": "16.0.1.1.0", + "version": "16.0.1.2.0", "license": "AGPL-3", "author": "Akretion, Tecnativa, Odoo Community Association (OCA)", "website": "https://github.com/OCA/bank-payment", diff --git a/account_banking_sepa_direct_debit/static/description/index.html b/account_banking_sepa_direct_debit/static/description/index.html index ec80f732e70..a8dc50e2fb9 100644 --- a/account_banking_sepa_direct_debit/static/description/index.html +++ b/account_banking_sepa_direct_debit/static/description/index.html @@ -1,4 +1,3 @@ - @@ -367,7 +366,7 @@

Account Banking SEPA Direct Debit

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:7d9245ac67651ecbd5ff384e64e3f07f3c45897c58cb60b9bd0e4b0af6e0bb6c +!! source digest: sha256:a433755fd2d5cc4c242b073380fd215deb68ea43af0cdef7207c68febe5f8c10 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

Beta License: AGPL-3 OCA/bank-payment Translate me on Weblate Try me on Runboat

Create SEPA files for Direct Debit

From 5eb3775efc47cb2fee54dc38e01de277de7d5542 Mon Sep 17 00:00:00 2001 From: Weblate Date: Mon, 1 Apr 2024 07:00:34 +0000 Subject: [PATCH 062/115] Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Translation: bank-payment-16.0/bank-payment-16.0-account_banking_sepa_direct_debit Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_banking_sepa_direct_debit/ --- account_banking_sepa_direct_debit/i18n/de.po | 56 ++++++++++ account_banking_sepa_direct_debit/i18n/es.po | 101 ++++++++++++------ .../i18n/es_AR.po | 56 ++++++++++ account_banking_sepa_direct_debit/i18n/fr.po | 56 ++++++++++ account_banking_sepa_direct_debit/i18n/hr.po | 56 ++++++++++ account_banking_sepa_direct_debit/i18n/it.po | 56 ++++++++++ .../i18n/nb_NO.po | 56 ++++++++++ account_banking_sepa_direct_debit/i18n/nl.po | 56 ++++++++++ .../i18n/pt_BR.po | 56 ++++++++++ account_banking_sepa_direct_debit/i18n/sl.po | 56 ++++++++++ 10 files changed, 574 insertions(+), 31 deletions(-) diff --git a/account_banking_sepa_direct_debit/i18n/de.po b/account_banking_sepa_direct_debit/i18n/de.po index d5a7ff33ba7..57004b0af73 100644 --- a/account_banking_sepa_direct_debit/i18n/de.po +++ b/account_banking_sepa_direct_debit/i18n/de.po @@ -25,6 +25,29 @@ msgid "" "object.partner_id.name.replace(' ', '_') or '')" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,body_html:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"
\n" +"

\n" +" Hello,\n" +"

\n" +" Your SEPA Mandate for YourCompany is " +"pending to sign.\n" +"

\n" +" Do not hesitate to contact us if you have any questions.\n" +"
\n" +"\n" +" \n" +"
\n" +" --
Mitchell Admin
\n" +"
\n" +"

\n" +"
\n" +" " +msgstr "" + #. module: account_banking_sepa_direct_debit #: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document msgid "Account Number - IBAN:" @@ -183,6 +206,11 @@ msgstr "" msgid "Display Name" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_mail_compose_message +msgid "Email composition wizard" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_payment_mode__sepa_creditor_identifier msgid "" @@ -230,6 +258,11 @@ msgstr "Erstes" msgid "Invalid mandate type in '%s'. Valid ones are 'Recurrent' or 'One-Off'" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__is_sent +msgid "Is Sent" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__format msgid "Mandate Format" @@ -340,12 +373,29 @@ msgstr "SEPA Lastschriften der Kunden" msgid "SEPA Mandate" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,subject:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"SEPA Mandate {{ object.unique_mandate_reference or 'n/a' }} for {{ object." +"company_id.name }} is pending to sign" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:mail.template,name:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "SEPA Mandate: Send by email" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__scheme #: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search msgid "Scheme" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_form +msgid "Send by Email" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields.selection,name:account_banking_sepa_direct_debit.selection__account_banking_mandate__format__sepa msgid "Sepa Mandate" @@ -481,6 +531,12 @@ msgid "" "instructions from" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,report_name:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"{{ (object.unique_mandate_reference or 'SEPA Mandate').replace('/','_') }}" +msgstr "" + #~ msgid "Bank Payment Lines" #~ msgstr "Bankzahlungszeilen" diff --git a/account_banking_sepa_direct_debit/i18n/es.po b/account_banking_sepa_direct_debit/i18n/es.po index 424ce05bfa9..c86fb57a7a5 100644 --- a/account_banking_sepa_direct_debit/i18n/es.po +++ b/account_banking_sepa_direct_debit/i18n/es.po @@ -34,36 +34,22 @@ msgid "" "
\n" "

\n" " Hello,\n" -"

\n" -" Your SEPA Mandate for YourCompany is pending to sign.\n" -"

\n" +"

\n" +" Your SEPA Mandate for YourCompany is " +"pending to sign.\n" +"

\n" " Do not hesitate to contact us if you have any questions.\n" -"
\n" +"
\n" "\n" " \n" -"
\n" -" --
Mitchell Admin
\n" +"
\n" +" --
Mitchell Admin
\n" "
\n" "

\n" "
\n" " " msgstr "" -"
\n" -"

\n" -" Hola,\n" -"

\n" -" El Mandato SEPA para YourCompany está pendiente de firma.\n" -"

\n" -" No dude en contactarnos si tiene alguna pregunta.\n" -"
\n" -"\n" -" \n" -"
\n" -" --
Mitchell Admin
\n" -"
\n" -"

\n" -"
\n" -" " #. module: account_banking_sepa_direct_debit #: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document @@ -244,6 +230,11 @@ msgstr "Ajustes de configuración" msgid "Display Name" msgstr "Nombre a mostrar" +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_mail_compose_message +msgid "Email composition wizard" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_payment_mode__sepa_creditor_identifier msgid "" @@ -308,6 +299,11 @@ msgstr "" "Tipo de mandato no válido en '%s'. Los valores válidos son 'Recurrent' o " "'One-Off'" +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__is_sent +msgid "Is Sent" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__format msgid "Mandate Format" @@ -329,11 +325,6 @@ msgstr "" msgid "Mandate update" msgstr "Actualizacion de mandato" -#. module: account_banking_sepa_direct_debit -#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__is_sent -msgid "Mark Mandate As Sent" -msgstr "Mandato enviado" - #. module: account_banking_sepa_direct_debit #. odoo-python #: code:addons/account_banking_sepa_direct_debit/models/account_payment_line.py:0 @@ -432,8 +423,8 @@ msgstr "Mandato SEPA" #. module: account_banking_sepa_direct_debit #: model:mail.template,subject:account_banking_sepa_direct_debit.email_template_sepa_mandate msgid "" -"Mandato SEPA {{ object.unique_mandate_reference or 'n/a' }} para {{ " -"object.company_id.name }} está pendiente de firma" +"SEPA Mandate {{ object.unique_mandate_reference or 'n/a' }} for {{ object." +"company_id.name }} is pending to sign" msgstr "" #. module: account_banking_sepa_direct_debit @@ -604,8 +595,56 @@ msgstr "" #. module: account_banking_sepa_direct_debit #: model:mail.template,report_name:account_banking_sepa_direct_debit.email_template_sepa_mandate -msgid "{{ (object.unique_mandate_reference or SEPA Mandate).replace('/','_') }}" -msgstr "{{ (object.unique_mandate_reference or 'Mandato SEPA').replace('/','_') }}" +msgid "" +"{{ (object.unique_mandate_reference or 'SEPA Mandate').replace('/','_') }}" +msgstr "" + +#~ msgid "" +#~ "
\n" +#~ "

\n" +#~ " Hello,\n" +#~ "

\n" +#~ " Your SEPA Mandate for YourCompany is " +#~ "pending to sign.\n" +#~ "

\n" +#~ " Do not hesitate to contact us if you have any questions.\n" +#~ "
\n" +#~ "\n" +#~ " \n" +#~ "
\n" +#~ " --
Mitchell Admin
\n" +#~ "
\n" +#~ "

\n" +#~ "
\n" +#~ " " +#~ msgstr "" +#~ "
\n" +#~ "

\n" +#~ " Hola,\n" +#~ "

\n" +#~ " El Mandato SEPA para YourCompany está " +#~ "pendiente de firma.\n" +#~ "

\n" +#~ " No dude en contactarnos si tiene alguna pregunta.\n" +#~ "
\n" +#~ "\n" +#~ " \n" +#~ "
\n" +#~ " --
Mitchell Admin
\n" +#~ "
\n" +#~ "

\n" +#~ "
\n" +#~ " " + +#~ msgid "Mark Mandate As Sent" +#~ msgstr "Mandato enviado" + +#~ msgid "" +#~ "{{ (object.unique_mandate_reference or SEPA Mandate).replace('/','_') }}" +#~ msgstr "" +#~ "{{ (object.unique_mandate_reference or 'Mandato SEPA').replace('/','_') }}" #, python-format #~ msgid "" diff --git a/account_banking_sepa_direct_debit/i18n/es_AR.po b/account_banking_sepa_direct_debit/i18n/es_AR.po index 720e2e88dfa..2261e689454 100644 --- a/account_banking_sepa_direct_debit/i18n/es_AR.po +++ b/account_banking_sepa_direct_debit/i18n/es_AR.po @@ -25,6 +25,29 @@ msgstr "" "'Mandato-%s-%s' % (object.unique_mandate_reference, object.partner_id and " "object.partner_id.name.replace(' ', '_') or '')" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,body_html:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"
\n" +"

\n" +" Hello,\n" +"

\n" +" Your SEPA Mandate for YourCompany is " +"pending to sign.\n" +"

\n" +" Do not hesitate to contact us if you have any questions.\n" +"
\n" +"\n" +" \n" +"
\n" +" --
Mitchell Admin
\n" +"
\n" +"

\n" +"
\n" +" " +msgstr "" + #. module: account_banking_sepa_direct_debit #: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document msgid "Account Number - IBAN:" @@ -199,6 +222,11 @@ msgstr "Configurar Ajustes" msgid "Display Name" msgstr "Mostrar Nombre" +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_mail_compose_message +msgid "Email composition wizard" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_payment_mode__sepa_creditor_identifier msgid "" @@ -262,6 +290,11 @@ msgstr "" "El tipo de mandato no es válido en '%s'. Los válidos son 'Recurrente' o " "'Único'" +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__is_sent +msgid "Is Sent" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__format msgid "Mandate Format" @@ -378,12 +411,29 @@ msgstr "Adeudo directo SEPA de clientes" msgid "SEPA Mandate" msgstr "Mandato SEPA" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,subject:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"SEPA Mandate {{ object.unique_mandate_reference or 'n/a' }} for {{ object." +"company_id.name }} is pending to sign" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:mail.template,name:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "SEPA Mandate: Send by email" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__scheme #: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search msgid "Scheme" msgstr "Esquema" +#. module: account_banking_sepa_direct_debit +#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_form +msgid "Send by Email" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields.selection,name:account_banking_sepa_direct_debit.selection__account_banking_mandate__format__sepa msgid "Sepa Mandate" @@ -531,6 +581,12 @@ msgstr "" "a la entidad para efectuar los adeudos en su cuenta siguiendo las " "instrucciones del acreedor" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,report_name:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"{{ (object.unique_mandate_reference or 'SEPA Mandate').replace('/','_') }}" +msgstr "" + #, python-format #~ msgid "" #~ "Automatically switched from First to Recurring when the " diff --git a/account_banking_sepa_direct_debit/i18n/fr.po b/account_banking_sepa_direct_debit/i18n/fr.po index d3cd8976275..523417c2d52 100644 --- a/account_banking_sepa_direct_debit/i18n/fr.po +++ b/account_banking_sepa_direct_debit/i18n/fr.po @@ -29,6 +29,29 @@ msgstr "" "'Mandate-%s-%s' % (object.unique_mandate_reference, object.partner_id and " "object.partner_id.name.replace(' ', '_') or '')" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,body_html:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"
\n" +"

\n" +" Hello,\n" +"

\n" +" Your SEPA Mandate for YourCompany is " +"pending to sign.\n" +"

\n" +" Do not hesitate to contact us if you have any questions.\n" +"
\n" +"\n" +" \n" +"
\n" +" --
Mitchell Admin
\n" +"
\n" +"

\n" +"
\n" +" " +msgstr "" + #. module: account_banking_sepa_direct_debit #: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document msgid "Account Number - IBAN:" @@ -204,6 +227,11 @@ msgstr "Paramètres de configuration" msgid "Display Name" msgstr "Nom affiché" +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_mail_compose_message +msgid "Email composition wizard" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_payment_mode__sepa_creditor_identifier msgid "" @@ -267,6 +295,11 @@ msgstr "" "Mandat non valide dans '%s'. Les mandats valides sont 'Récurrent' ou 'One-" "Off'" +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__is_sent +msgid "Is Sent" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__format msgid "Mandate Format" @@ -382,12 +415,29 @@ msgstr "Prélèvement SEPA des clients" msgid "SEPA Mandate" msgstr "Mandat de prélèvement SEPA" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,subject:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"SEPA Mandate {{ object.unique_mandate_reference or 'n/a' }} for {{ object." +"company_id.name }} is pending to sign" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:mail.template,name:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "SEPA Mandate: Send by email" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__scheme #: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search msgid "Scheme" msgstr "Structure" +#. module: account_banking_sepa_direct_debit +#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_form +msgid "Send by Email" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields.selection,name:account_banking_sepa_direct_debit.selection__account_banking_mandate__format__sepa msgid "Sepa Mandate" @@ -538,6 +588,12 @@ msgstr "" "votre banque à\n" " débiter votre compte conformément aux instructions du" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,report_name:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"{{ (object.unique_mandate_reference or 'SEPA Mandate').replace('/','_') }}" +msgstr "" + #, python-format #~ msgid "" #~ "Automatically switched from First to Recurring when the " diff --git a/account_banking_sepa_direct_debit/i18n/hr.po b/account_banking_sepa_direct_debit/i18n/hr.po index e99f9f62c05..0007d4801e5 100644 --- a/account_banking_sepa_direct_debit/i18n/hr.po +++ b/account_banking_sepa_direct_debit/i18n/hr.po @@ -26,6 +26,29 @@ msgid "" "object.partner_id.name.replace(' ', '_') or '')" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,body_html:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"
\n" +"

\n" +" Hello,\n" +"

\n" +" Your SEPA Mandate for YourCompany is " +"pending to sign.\n" +"

\n" +" Do not hesitate to contact us if you have any questions.\n" +"
\n" +"\n" +" \n" +"
\n" +" --
Mitchell Admin
\n" +"
\n" +"

\n" +"
\n" +" " +msgstr "" + #. module: account_banking_sepa_direct_debit #: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document msgid "Account Number - IBAN:" @@ -184,6 +207,11 @@ msgstr "" msgid "Display Name" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_mail_compose_message +msgid "Email composition wizard" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_payment_mode__sepa_creditor_identifier msgid "" @@ -231,6 +259,11 @@ msgstr "" msgid "Invalid mandate type in '%s'. Valid ones are 'Recurrent' or 'One-Off'" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__is_sent +msgid "Is Sent" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__format msgid "Mandate Format" @@ -341,12 +374,29 @@ msgstr "" msgid "SEPA Mandate" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,subject:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"SEPA Mandate {{ object.unique_mandate_reference or 'n/a' }} for {{ object." +"company_id.name }} is pending to sign" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:mail.template,name:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "SEPA Mandate: Send by email" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__scheme #: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search msgid "Scheme" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_form +msgid "Send by Email" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields.selection,name:account_banking_sepa_direct_debit.selection__account_banking_mandate__format__sepa msgid "Sepa Mandate" @@ -480,5 +530,11 @@ msgid "" "instructions from" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,report_name:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"{{ (object.unique_mandate_reference or 'SEPA Mandate').replace('/','_') }}" +msgstr "" + #~ msgid "Bank Payment Lines" #~ msgstr "Stavke izvoda" diff --git a/account_banking_sepa_direct_debit/i18n/it.po b/account_banking_sepa_direct_debit/i18n/it.po index c3c8f359f95..48637a35eed 100644 --- a/account_banking_sepa_direct_debit/i18n/it.po +++ b/account_banking_sepa_direct_debit/i18n/it.po @@ -23,6 +23,29 @@ msgid "" "object.partner_id.name.replace(' ', '_') or '')" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,body_html:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"
\n" +"

\n" +" Hello,\n" +"

\n" +" Your SEPA Mandate for YourCompany is " +"pending to sign.\n" +"

\n" +" Do not hesitate to contact us if you have any questions.\n" +"
\n" +"\n" +" \n" +"
\n" +" --
Mitchell Admin
\n" +"
\n" +"

\n" +"
\n" +" " +msgstr "" + #. module: account_banking_sepa_direct_debit #: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document msgid "Account Number - IBAN:" @@ -181,6 +204,11 @@ msgstr "" msgid "Display Name" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_mail_compose_message +msgid "Email composition wizard" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_payment_mode__sepa_creditor_identifier msgid "" @@ -228,6 +256,11 @@ msgstr "" msgid "Invalid mandate type in '%s'. Valid ones are 'Recurrent' or 'One-Off'" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__is_sent +msgid "Is Sent" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__format msgid "Mandate Format" @@ -337,12 +370,29 @@ msgstr "" msgid "SEPA Mandate" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,subject:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"SEPA Mandate {{ object.unique_mandate_reference or 'n/a' }} for {{ object." +"company_id.name }} is pending to sign" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:mail.template,name:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "SEPA Mandate: Send by email" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__scheme #: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search msgid "Scheme" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_form +msgid "Send by Email" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields.selection,name:account_banking_sepa_direct_debit.selection__account_banking_mandate__format__sepa msgid "Sepa Mandate" @@ -475,3 +525,9 @@ msgid "" " debit your account in accordance with the " "instructions from" msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:mail.template,report_name:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"{{ (object.unique_mandate_reference or 'SEPA Mandate').replace('/','_') }}" +msgstr "" diff --git a/account_banking_sepa_direct_debit/i18n/nb_NO.po b/account_banking_sepa_direct_debit/i18n/nb_NO.po index 408d537a1f5..04e365f0be7 100644 --- a/account_banking_sepa_direct_debit/i18n/nb_NO.po +++ b/account_banking_sepa_direct_debit/i18n/nb_NO.po @@ -26,6 +26,29 @@ msgid "" "object.partner_id.name.replace(' ', '_') or '')" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,body_html:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"
\n" +"

\n" +" Hello,\n" +"

\n" +" Your SEPA Mandate for YourCompany is " +"pending to sign.\n" +"

\n" +" Do not hesitate to contact us if you have any questions.\n" +"
\n" +"\n" +" \n" +"
\n" +" --
Mitchell Admin
\n" +"
\n" +"

\n" +"
\n" +" " +msgstr "" + #. module: account_banking_sepa_direct_debit #: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document msgid "Account Number - IBAN:" @@ -184,6 +207,11 @@ msgstr "" msgid "Display Name" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_mail_compose_message +msgid "Email composition wizard" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_payment_mode__sepa_creditor_identifier msgid "" @@ -231,6 +259,11 @@ msgstr "" msgid "Invalid mandate type in '%s'. Valid ones are 'Recurrent' or 'One-Off'" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__is_sent +msgid "Is Sent" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__format msgid "Mandate Format" @@ -341,12 +374,29 @@ msgstr "" msgid "SEPA Mandate" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,subject:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"SEPA Mandate {{ object.unique_mandate_reference or 'n/a' }} for {{ object." +"company_id.name }} is pending to sign" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:mail.template,name:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "SEPA Mandate: Send by email" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__scheme #: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search msgid "Scheme" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_form +msgid "Send by Email" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields.selection,name:account_banking_sepa_direct_debit.selection__account_banking_mandate__format__sepa msgid "Sepa Mandate" @@ -479,3 +529,9 @@ msgid "" " debit your account in accordance with the " "instructions from" msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:mail.template,report_name:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"{{ (object.unique_mandate_reference or 'SEPA Mandate').replace('/','_') }}" +msgstr "" diff --git a/account_banking_sepa_direct_debit/i18n/nl.po b/account_banking_sepa_direct_debit/i18n/nl.po index cfe23b5f25e..1e0c3b1bee7 100644 --- a/account_banking_sepa_direct_debit/i18n/nl.po +++ b/account_banking_sepa_direct_debit/i18n/nl.po @@ -27,6 +27,29 @@ msgid "" "object.partner_id.name.replace(' ', '_') or '')" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,body_html:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"
\n" +"

\n" +" Hello,\n" +"

\n" +" Your SEPA Mandate for YourCompany is " +"pending to sign.\n" +"

\n" +" Do not hesitate to contact us if you have any questions.\n" +"
\n" +"\n" +" \n" +"
\n" +" --
Mitchell Admin
\n" +"
\n" +"

\n" +"
\n" +" " +msgstr "" + #. module: account_banking_sepa_direct_debit #: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document msgid "Account Number - IBAN:" @@ -199,6 +222,11 @@ msgstr "Instellingen" msgid "Display Name" msgstr "Weergavenaam" +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_mail_compose_message +msgid "Email composition wizard" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_payment_mode__sepa_creditor_identifier msgid "" @@ -260,6 +288,11 @@ msgstr "" "Onjuist machtigings type in '%s'. Correcte types zijn 'Herhaald' of " "'Eenmalig'" +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__is_sent +msgid "Is Sent" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__format #, fuzzy @@ -378,12 +411,29 @@ msgstr "SEPA Incasso voor klanten" msgid "SEPA Mandate" msgstr "SEPA Machtiging" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,subject:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"SEPA Mandate {{ object.unique_mandate_reference or 'n/a' }} for {{ object." +"company_id.name }} is pending to sign" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:mail.template,name:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "SEPA Mandate: Send by email" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__scheme #: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search msgid "Scheme" msgstr "Schema" +#. module: account_banking_sepa_direct_debit +#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_form +msgid "Send by Email" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields.selection,name:account_banking_sepa_direct_debit.selection__account_banking_mandate__format__sepa msgid "Sepa Mandate" @@ -527,6 +577,12 @@ msgid "" "instructions from" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,report_name:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"{{ (object.unique_mandate_reference or 'SEPA Mandate').replace('/','_') }}" +msgstr "" + #, python-format #~ msgid "" #~ "Automatically switched from First to Recurring when the " diff --git a/account_banking_sepa_direct_debit/i18n/pt_BR.po b/account_banking_sepa_direct_debit/i18n/pt_BR.po index 8477b03a14c..0c7f48aa618 100644 --- a/account_banking_sepa_direct_debit/i18n/pt_BR.po +++ b/account_banking_sepa_direct_debit/i18n/pt_BR.po @@ -26,6 +26,29 @@ msgid "" "object.partner_id.name.replace(' ', '_') or '')" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,body_html:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"
\n" +"

\n" +" Hello,\n" +"

\n" +" Your SEPA Mandate for YourCompany is " +"pending to sign.\n" +"

\n" +" Do not hesitate to contact us if you have any questions.\n" +"
\n" +"\n" +" \n" +"
\n" +" --
Mitchell Admin
\n" +"
\n" +"

\n" +"
\n" +" " +msgstr "" + #. module: account_banking_sepa_direct_debit #: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document msgid "Account Number - IBAN:" @@ -184,6 +207,11 @@ msgstr "" msgid "Display Name" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_mail_compose_message +msgid "Email composition wizard" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_payment_mode__sepa_creditor_identifier msgid "" @@ -231,6 +259,11 @@ msgstr "" msgid "Invalid mandate type in '%s'. Valid ones are 'Recurrent' or 'One-Off'" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__is_sent +msgid "Is Sent" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__format msgid "Mandate Format" @@ -341,12 +374,29 @@ msgstr "" msgid "SEPA Mandate" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,subject:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"SEPA Mandate {{ object.unique_mandate_reference or 'n/a' }} for {{ object." +"company_id.name }} is pending to sign" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:mail.template,name:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "SEPA Mandate: Send by email" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__scheme #: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search msgid "Scheme" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_form +msgid "Send by Email" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields.selection,name:account_banking_sepa_direct_debit.selection__account_banking_mandate__format__sepa msgid "Sepa Mandate" @@ -480,6 +530,12 @@ msgid "" "instructions from" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,report_name:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"{{ (object.unique_mandate_reference or 'SEPA Mandate').replace('/','_') }}" +msgstr "" + #~ msgid "Bank Payment Lines" #~ msgstr "Linhas de pagamento bancária" diff --git a/account_banking_sepa_direct_debit/i18n/sl.po b/account_banking_sepa_direct_debit/i18n/sl.po index d23e14a72df..ad170e9f029 100644 --- a/account_banking_sepa_direct_debit/i18n/sl.po +++ b/account_banking_sepa_direct_debit/i18n/sl.po @@ -26,6 +26,29 @@ msgid "" "object.partner_id.name.replace(' ', '_') or '')" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,body_html:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"
\n" +"

\n" +" Hello,\n" +"

\n" +" Your SEPA Mandate for YourCompany is " +"pending to sign.\n" +"

\n" +" Do not hesitate to contact us if you have any questions.\n" +"
\n" +"\n" +" \n" +"
\n" +" --
Mitchell Admin
\n" +"
\n" +"

\n" +"
\n" +" " +msgstr "" + #. module: account_banking_sepa_direct_debit #: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document msgid "Account Number - IBAN:" @@ -199,6 +222,11 @@ msgstr "" msgid "Display Name" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_mail_compose_message +msgid "Email composition wizard" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_payment_mode__sepa_creditor_identifier msgid "" @@ -260,6 +288,11 @@ msgstr "Prva" msgid "Invalid mandate type in '%s'. Valid ones are 'Recurrent' or 'One-Off'" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__is_sent +msgid "Is Sent" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__format #, fuzzy @@ -376,12 +409,29 @@ msgstr "" msgid "SEPA Mandate" msgstr "" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,subject:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"SEPA Mandate {{ object.unique_mandate_reference or 'n/a' }} for {{ object." +"company_id.name }} is pending to sign" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:mail.template,name:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "SEPA Mandate: Send by email" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate__scheme #: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search msgid "Scheme" msgstr "Shema" +#. module: account_banking_sepa_direct_debit +#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_form +msgid "Send by Email" +msgstr "" + #. module: account_banking_sepa_direct_debit #: model:ir.model.fields.selection,name:account_banking_sepa_direct_debit.selection__account_banking_mandate__format__sepa msgid "Sepa Mandate" @@ -532,6 +582,12 @@ msgstr "" "svoji banki\n" " naj bremeni vaš račun v skladu z navodili iz" +#. module: account_banking_sepa_direct_debit +#: model:mail.template,report_name:account_banking_sepa_direct_debit.email_template_sepa_mandate +msgid "" +"{{ (object.unique_mandate_reference or 'SEPA Mandate').replace('/','_') }}" +msgstr "" + #~ msgid "Bank Payment Lines" #~ msgstr "Postavke bančnih plačil" From 15acca47e9ae1bb370a1a79b80930abd56828869 Mon Sep 17 00:00:00 2001 From: Denis Roussel Date: Wed, 3 Apr 2024 09:38:10 +0200 Subject: [PATCH 063/115] [IMP] account_payment_sale: Add payment mode in invoicing grouping criteria --- account_payment_sale/models/sale_order.py | 11 +++++++++++ account_payment_sale/tests/test_sale_order.py | 19 +++++++++++++++++++ 2 files changed, 30 insertions(+) diff --git a/account_payment_sale/models/sale_order.py b/account_payment_sale/models/sale_order.py index 5a931e65527..ab66f7b49de 100644 --- a/account_payment_sale/models/sale_order.py +++ b/account_payment_sale/models/sale_order.py @@ -41,3 +41,14 @@ def _prepare_invoice(self): vals = super()._prepare_invoice() self._get_payment_mode_vals(vals) return vals + + @api.model + def _get_invoice_grouping_keys(self) -> list: + """ + When several sale orders are generating invoices, + we want to add the payment mode in grouping criteria. + """ + keys = super()._get_invoice_grouping_keys() + if "payment_mode_id" not in keys: + keys.append("payment_mode_id") + return keys diff --git a/account_payment_sale/tests/test_sale_order.py b/account_payment_sale/tests/test_sale_order.py index 40a4fc2f098..70ee0d72567 100644 --- a/account_payment_sale/tests/test_sale_order.py +++ b/account_payment_sale/tests/test_sale_order.py @@ -95,3 +95,22 @@ def test_sale_to_invoice_payment_mode_via_payment(self): self.assertEqual(len(invoice), 1) self.assertEqual(invoice.payment_mode_id, self.payment_mode_2) self.assertFalse(invoice.partner_bank_id) + + def test_several_sale_to_invoice_payment_mode(self): + """ + Data: + A partner with a specific payment_mode + A sale order created with the payment_mode of the partner + A sale order created with another payment mode + Test case: + Create the invoice from the sale orders + Expected result: + Two invoices should be generated + """ + payment_mode_2 = self.env.ref("account_payment_mode.payment_mode_outbound_dd1") + order_1 = self.create_sale_order() + order_2 = self.create_sale_order(payment_mode_2) + orders = order_1 | order_2 + orders.action_confirm() + invoices = orders._create_invoices() + self.assertEqual(2, len(invoices)) From a15f1a5595050fc34e1fe4a11279d3a9b16aaab1 Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Fri, 5 Apr 2024 07:37:34 +0000 Subject: [PATCH 064/115] [BOT] post-merge updates --- README.md | 2 +- account_payment_sale/README.rst | 2 +- account_payment_sale/__manifest__.py | 2 +- account_payment_sale/static/description/index.html | 3 +-- 4 files changed, 4 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index feaac10d776..aaaebd91db3 100644 --- a/README.md +++ b/README.md @@ -36,7 +36,7 @@ addon | version | maintainers | summary [account_payment_partner](account_payment_partner/) | 16.0.1.2.2 | | Adds payment mode on partners and invoices [account_payment_purchase](account_payment_purchase/) | 16.0.2.0.1 | | Adds Bank Account and Payment Mode on Purchase Orders [account_payment_purchase_stock](account_payment_purchase_stock/) | 16.0.1.0.0 | | Integrate Account Payment Purchase with Stock -[account_payment_sale](account_payment_sale/) | 16.0.1.0.0 | | Adds payment mode on sale orders +[account_payment_sale](account_payment_sale/) | 16.0.1.0.1 | | Adds payment mode on sale orders [//]: # (end addons) diff --git a/account_payment_sale/README.rst b/account_payment_sale/README.rst index 9dc545f23f8..fc9035dde29 100644 --- a/account_payment_sale/README.rst +++ b/account_payment_sale/README.rst @@ -7,7 +7,7 @@ Account Payment Sale !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:109e105c5407b9d18daba981159dfae48d1c20be7f63f36d25fccfdc56493f1f + !! source digest: sha256:e5bda32cff244c227eb68ecbf54db959aeb35be01fd1b7094e599a0c80f88fc1 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png diff --git a/account_payment_sale/__manifest__.py b/account_payment_sale/__manifest__.py index e2a8d8c2962..6694f583b44 100644 --- a/account_payment_sale/__manifest__.py +++ b/account_payment_sale/__manifest__.py @@ -4,7 +4,7 @@ { "name": "Account Payment Sale", - "version": "16.0.1.0.0", + "version": "16.0.1.0.1", "category": "Banking addons", "license": "AGPL-3", "summary": "Adds payment mode on sale orders", diff --git a/account_payment_sale/static/description/index.html b/account_payment_sale/static/description/index.html index 6b32defdc17..1859ab356e9 100644 --- a/account_payment_sale/static/description/index.html +++ b/account_payment_sale/static/description/index.html @@ -1,4 +1,3 @@ - @@ -367,7 +366,7 @@

Account Payment Sale

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:109e105c5407b9d18daba981159dfae48d1c20be7f63f36d25fccfdc56493f1f +!! source digest: sha256:e5bda32cff244c227eb68ecbf54db959aeb35be01fd1b7094e599a0c80f88fc1 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

Beta License: AGPL-3 OCA/bank-payment Translate me on Weblate Try me on Runboat

This modules adds one field on sale orders: Payment Mode. From 97ceaedad3f0fe63103213eca87313d7e55ebbd4 Mon Sep 17 00:00:00 2001 From: Adrien Peiffer Date: Wed, 21 Sep 2022 11:15:51 +0200 Subject: [PATCH 065/115] Add account_payment_order_transfer_journal. --- .../README.rst | 78 ++++ .../__init__.py | 1 + .../__manifest__.py | 17 + .../models/__init__.py | 2 + .../models/account_journal.py | 15 + .../models/account_payment_order.py | 15 + .../readme/CONTRIBUTORS.rst | 1 + .../readme/DESCRIPTION.rst | 1 + .../readme/USAGE.rst | 1 + .../static/description/icon.png | Bin 0 -> 9455 bytes .../static/description/index.html | 424 ++++++++++++++++++ .../tests/__init__.py | 1 + .../tests/test_payment_order.py | 118 +++++ .../views/account_journal.xml | 21 + 14 files changed, 695 insertions(+) create mode 100644 account_payment_order_transfer_journal/README.rst create mode 100644 account_payment_order_transfer_journal/__init__.py create mode 100644 account_payment_order_transfer_journal/__manifest__.py create mode 100644 account_payment_order_transfer_journal/models/__init__.py create mode 100644 account_payment_order_transfer_journal/models/account_journal.py create mode 100644 account_payment_order_transfer_journal/models/account_payment_order.py create mode 100644 account_payment_order_transfer_journal/readme/CONTRIBUTORS.rst create mode 100644 account_payment_order_transfer_journal/readme/DESCRIPTION.rst create mode 100644 account_payment_order_transfer_journal/readme/USAGE.rst create mode 100644 account_payment_order_transfer_journal/static/description/icon.png create mode 100644 account_payment_order_transfer_journal/static/description/index.html create mode 100644 account_payment_order_transfer_journal/tests/__init__.py create mode 100644 account_payment_order_transfer_journal/tests/test_payment_order.py create mode 100644 account_payment_order_transfer_journal/views/account_journal.xml diff --git a/account_payment_order_transfer_journal/README.rst b/account_payment_order_transfer_journal/README.rst new file mode 100644 index 00000000000..2a16d2735aa --- /dev/null +++ b/account_payment_order_transfer_journal/README.rst @@ -0,0 +1,78 @@ +======================================= +Account Payement Order Transfer Journal +======================================= + +.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! This file is generated by oca-gen-addon-readme !! + !! changes will be overwritten. !! + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png + :target: https://odoo-community.org/page/development-status + :alt: Beta +.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png + :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html + :alt: License: AGPL-3 +.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fbank--payment-lightgray.png?logo=github + :target: https://github.com/OCA/bank-payment/tree/14.0/account_payment_order_transfer_journal + :alt: OCA/bank-payment +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/bank-payment-14-0/bank-payment-14-0-account_payment_order_transfer_journal + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png + :target: https://runbot.odoo-community.org/runbot/173/14.0 + :alt: Try me on Runbot + +|badge1| |badge2| |badge3| |badge4| |badge5| + +This module allow to generate payment order entries on a transfer journal + +**Table of contents** + +.. contents:: + :local: + +Usage +===== + +Set transfer jounrnal directly on the bank journal. If there is no transfer journal, the bank journal itself will be used. + +Bug Tracker +=========== + +Bugs are tracked on `GitHub Issues `_. +In case of trouble, please check there if your issue has already been reported. +If you spotted it first, help us smashing it by providing a detailed and welcomed +`feedback `_. + +Do not contact contributors directly about support or help with technical issues. + +Credits +======= + +Authors +~~~~~~~ + +* ACSONE SA/NV + +Contributors +~~~~~~~~~~~~ + +* Adrien Peiffer (https://acsone.eu) + +Maintainers +~~~~~~~~~~~ + +This module is maintained by the OCA. + +.. image:: https://odoo-community.org/logo.png + :alt: Odoo Community Association + :target: https://odoo-community.org + +OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use. + +This module is part of the `OCA/bank-payment `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/account_payment_order_transfer_journal/__init__.py b/account_payment_order_transfer_journal/__init__.py new file mode 100644 index 00000000000..0650744f6bc --- /dev/null +++ b/account_payment_order_transfer_journal/__init__.py @@ -0,0 +1 @@ +from . import models diff --git a/account_payment_order_transfer_journal/__manifest__.py b/account_payment_order_transfer_journal/__manifest__.py new file mode 100644 index 00000000000..ec4fc1a6e3e --- /dev/null +++ b/account_payment_order_transfer_journal/__manifest__.py @@ -0,0 +1,17 @@ +# Copyright 2022 ACSONE SA/NV +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +{ + "name": "Account Payement Order Transfer Journal", + "summary": """ + Add the possibility to book payement order operations on a transfert journal.""", + "version": "14.0.1.0.0", + "license": "AGPL-3", + "author": "ACSONE SA/NV,Odoo Community Association (OCA)", + "website": "https://github.com/OCA/bank-payment", + "depends": ["account_payment_order"], + "data": [ + "views/account_journal.xml", + ], + "demo": [], +} diff --git a/account_payment_order_transfer_journal/models/__init__.py b/account_payment_order_transfer_journal/models/__init__.py new file mode 100644 index 00000000000..eb04dbf3585 --- /dev/null +++ b/account_payment_order_transfer_journal/models/__init__.py @@ -0,0 +1,2 @@ +from . import account_journal +from . import account_payment_order diff --git a/account_payment_order_transfer_journal/models/account_journal.py b/account_payment_order_transfer_journal/models/account_journal.py new file mode 100644 index 00000000000..466f8c5b5a6 --- /dev/null +++ b/account_payment_order_transfer_journal/models/account_journal.py @@ -0,0 +1,15 @@ +# Copyright 2022 ACSONE SA/NV +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo import fields, models + + +class AccountJournal(models.Model): + + _inherit = "account.journal" + + transfer_journal_id = fields.Many2one( + comodel_name="account.journal", + string="Transfer journal on payment/debit orders", + help="Journal to write payment entries when confirming payment/debit orders", + ) diff --git a/account_payment_order_transfer_journal/models/account_payment_order.py b/account_payment_order_transfer_journal/models/account_payment_order.py new file mode 100644 index 00000000000..9a20cbac79a --- /dev/null +++ b/account_payment_order_transfer_journal/models/account_payment_order.py @@ -0,0 +1,15 @@ +# Copyright 2022 ACSONE SA/NV +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo import models + + +class AccountPaymentOrder(models.Model): + + _inherit = "account.payment.order" + + def _prepare_move(self, bank_lines=None): + res = super()._prepare_move(bank_lines=bank_lines) + if self.journal_id.transfer_journal_id: + res["journal_id"] = self.journal_id.transfer_journal_id.id + return res diff --git a/account_payment_order_transfer_journal/readme/CONTRIBUTORS.rst b/account_payment_order_transfer_journal/readme/CONTRIBUTORS.rst new file mode 100644 index 00000000000..94a5ccf2090 --- /dev/null +++ b/account_payment_order_transfer_journal/readme/CONTRIBUTORS.rst @@ -0,0 +1 @@ +* Adrien Peiffer (https://acsone.eu) diff --git a/account_payment_order_transfer_journal/readme/DESCRIPTION.rst b/account_payment_order_transfer_journal/readme/DESCRIPTION.rst new file mode 100644 index 00000000000..048a922ee44 --- /dev/null +++ b/account_payment_order_transfer_journal/readme/DESCRIPTION.rst @@ -0,0 +1 @@ +This module allow to generate payment order entries on a transfer journal diff --git a/account_payment_order_transfer_journal/readme/USAGE.rst b/account_payment_order_transfer_journal/readme/USAGE.rst new file mode 100644 index 00000000000..ae1960c7837 --- /dev/null +++ b/account_payment_order_transfer_journal/readme/USAGE.rst @@ -0,0 +1 @@ +Set transfer jounrnal directly on the bank journal. If there is no transfer journal, the bank journal itself will be used. diff --git a/account_payment_order_transfer_journal/static/description/icon.png b/account_payment_order_transfer_journal/static/description/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..3a0328b516c4980e8e44cdb63fd945757ddd132d GIT binary patch literal 9455 zcmW++2RxMjAAjx~&dlBk9S+%}OXg)AGE&Cb*&}d0jUxM@u(PQx^-s)697TX`ehR4?GS^qbkof1cslKgkU)h65qZ9Oc=ml_0temigYLJfnz{IDzUf>bGs4N!v3=Z3jMq&A#7%rM5eQ#dc?k~! zVpnB`o+K7|Al`Q_U;eD$B zfJtP*jH`siUq~{KE)`jP2|#TUEFGRryE2`i0**z#*^6~AI|YzIWy$Cu#CSLW3q=GA z6`?GZymC;dCPk~rBS%eCb`5OLr;RUZ;D`}um=H)BfVIq%7VhiMr)_#G0N#zrNH|__ zc+blN2UAB0=617@>_u;MPHN;P;N#YoE=)R#i$k_`UAA>WWCcEVMh~L_ zj--gtp&|K1#58Yz*AHCTMziU1Jzt_jG0I@qAOHsk$2}yTmVkBp_eHuY$A9)>P6o~I z%aQ?!(GqeQ-Y+b0I(m9pwgi(IIZZzsbMv+9w{PFtd_<_(LA~0H(xz{=FhLB@(1&qHA5EJw1>>=%q2f&^X>IQ{!GJ4e9U z&KlB)z(84HmNgm2hg2C0>WM{E(DdPr+EeU_N@57;PC2&DmGFW_9kP&%?X4}+xWi)( z;)z%wI5>D4a*5XwD)P--sPkoY(a~WBw;E~AW`Yue4kFa^LM3X`8x|}ZUeMnqr}>kH zG%WWW>3ml$Yez?i%)2pbKPI7?5o?hydokgQyZsNEr{a|mLdt;X2TX(#B1j35xPnPW z*bMSSOauW>o;*=kO8ojw91VX!qoOQb)zHJ!odWB}d+*K?#sY_jqPdg{Sm2HdYzdEx zOGVPhVRTGPtv0o}RfVP;Nd(|CB)I;*t&QO8h zFfekr30S!-LHmV_Su-W+rEwYXJ^;6&3|L$mMC8*bQptyOo9;>Qb9Q9`ySe3%V$A*9 zeKEe+b0{#KWGp$F+tga)0RtI)nhMa-K@JS}2krK~n8vJ=Ngm?R!9G<~RyuU0d?nz# z-5EK$o(!F?hmX*2Yt6+coY`6jGbb7tF#6nHA zuKk=GGJ;ZwON1iAfG$E#Y7MnZVmrY|j0eVI(DN_MNFJmyZ|;w4tf@=CCDZ#5N_0K= z$;R~bbk?}TpfDjfB&aiQ$VA}s?P}xPERJG{kxk5~R`iRS(SK5d+Xs9swCozZISbnS zk!)I0>t=A<-^z(cmSFz3=jZ23u13X><0b)P)^1T_))Kr`e!-pb#q&J*Q`p+B6la%C zuVl&0duN<;uOsB3%T9Fp8t{ED108<+W(nOZd?gDnfNBC3>M8WE61$So|P zVvqH0SNtDTcsUdzaMDpT=Ty0pDHHNL@Z0w$Y`XO z2M-_r1S+GaH%pz#Uy0*w$Vdl=X=rQXEzO}d6J^R6zjM1u&c9vYLvLp?W7w(?np9x1 zE_0JSAJCPB%i7p*Wvg)pn5T`8k3-uR?*NT|J`eS#_#54p>!p(mLDvmc-3o0mX*mp_ zN*AeS<>#^-{S%W<*mz^!X$w_2dHWpcJ6^j64qFBft-o}o_Vx80o0>}Du;>kLts;$8 zC`7q$QI(dKYG`Wa8#wl@V4jVWBRGQ@1dr-hstpQL)Tl+aqVpGpbSfN>5i&QMXfiZ> zaA?T1VGe?rpQ@;+pkrVdd{klI&jVS@I5_iz!=UMpTsa~mBga?1r}aRBm1WS;TT*s0f0lY=JBl66Upy)-k4J}lh=P^8(SXk~0xW=T9v*B|gzIhN z>qsO7dFd~mgxAy4V?&)=5ieYq?zi?ZEoj)&2o)RLy=@hbCRcfT5jigwtQGE{L*8<@Yd{zg;CsL5mvzfDY}P-wos_6PfprFVaeqNE%h zKZhLtcQld;ZD+>=nqN~>GvROfueSzJD&BE*}XfU|H&(FssBqY=hPCt`d zH?@s2>I(|;fcW&YM6#V#!kUIP8$Nkdh0A(bEVj``-AAyYgwY~jB zT|I7Bf@%;7aL7Wf4dZ%VqF$eiaC38OV6oy3Z#TER2G+fOCd9Iaoy6aLYbPTN{XRPz z;U!V|vBf%H!}52L2gH_+j;`bTcQRXB+y9onc^wLm5wi3-Be}U>k_u>2Eg$=k!(l@I zcCg+flakT2Nej3i0yn+g+}%NYb?ta;R?(g5SnwsQ49U8Wng8d|{B+lyRcEDvR3+`O{zfmrmvFrL6acVP%yG98X zo&+VBg@px@i)%o?dG(`T;n*$S5*rnyiR#=wW}}GsAcfyQpE|>a{=$Hjg=-*_K;UtD z#z-)AXwSRY?OPefw^iI+ z)AXz#PfEjlwTes|_{sB?4(O@fg0AJ^g8gP}ex9Ucf*@_^J(s_5jJV}c)s$`Myn|Kd z$6>}#q^n{4vN@+Os$m7KV+`}c%4)4pv@06af4-x5#wj!KKb%caK{A&Y#Rfs z-po?Dcb1({W=6FKIUirH&(yg=*6aLCekcKwyfK^JN5{wcA3nhO(o}SK#!CINhI`-I z1)6&n7O&ZmyFMuNwvEic#IiOAwNkR=u5it{B9n2sAJV5pNhar=j5`*N!Na;c7g!l$ z3aYBqUkqqTJ=Re-;)s!EOeij=7SQZ3Hq}ZRds%IM*PtM$wV z@;rlc*NRK7i3y5BETSKuumEN`Xu_8GP1Ri=OKQ$@I^ko8>H6)4rjiG5{VBM>B|%`&&s^)jS|-_95&yc=GqjNo{zFkw%%HHhS~e=s zD#sfS+-?*t|J!+ozP6KvtOl!R)@@-z24}`9{QaVLD^9VCSR2b`b!KC#o;Ki<+wXB6 zx3&O0LOWcg4&rv4QG0)4yb}7BFSEg~=IR5#ZRj8kg}dS7_V&^%#Do==#`u zpy6{ox?jWuR(;pg+f@mT>#HGWHAJRRDDDv~@(IDw&R>9643kK#HN`!1vBJHnC+RM&yIh8{gG2q zA%e*U3|N0XSRa~oX-3EAneep)@{h2vvd3Xvy$7og(sayr@95+e6~Xvi1tUqnIxoIH zVWo*OwYElb#uyW{Imam6f2rGbjR!Y3`#gPqkv57dB6K^wRGxc9B(t|aYDGS=m$&S!NmCtrMMaUg(c zc2qC=2Z`EEFMW-me5B)24AqF*bV5Dr-M5ig(l-WPS%CgaPzs6p_gnCIvTJ=Y<6!gT zVt@AfYCzjjsMEGi=rDQHo0yc;HqoRNnNFeWZgcm?f;cp(6CNylj36DoL(?TS7eU#+ z7&mfr#y))+CJOXQKUMZ7QIdS9@#-}7y2K1{8)cCt0~-X0O!O?Qx#E4Og+;A2SjalQ zs7r?qn0H044=sDN$SRG$arw~n=+T_DNdSrarmu)V6@|?1-ZB#hRn`uilTGPJ@fqEy zGt(f0B+^JDP&f=r{#Y_wi#AVDf-y!RIXU^0jXsFpf>=Ji*TeqSY!H~AMbJdCGLhC) zn7Rx+sXw6uYj;WRYrLd^5IZq@6JI1C^YkgnedZEYy<&4(z%Q$5yv#Boo{AH8n$a zhb4Y3PWdr269&?V%uI$xMcUrMzl=;w<_nm*qr=c3Rl@i5wWB;e-`t7D&c-mcQl7x! zZWB`UGcw=Y2=}~wzrfLx=uet<;m3~=8I~ZRuzvMQUQdr+yTV|ATf1Uuomr__nDf=X zZ3WYJtHp_ri(}SQAPjv+Y+0=fH4krOP@S&=zZ-t1jW1o@}z;xk8 z(Nz1co&El^HK^NrhVHa-_;&88vTU>_J33=%{if;BEY*J#1n59=07jrGQ#IP>@u#3A z;!q+E1Rj3ZJ+!4bq9F8PXJ@yMgZL;>&gYA0%_Kbi8?S=XGM~dnQZQ!yBSgcZhY96H zrWnU;k)qy`rX&&xlDyA%(a1Hhi5CWkmg(`Gb%m(HKi-7Z!LKGRP_B8@`7&hdDy5n= z`OIxqxiVfX@OX1p(mQu>0Ai*v_cTMiw4qRt3~NBvr9oBy0)r>w3p~V0SCm=An6@3n)>@z!|o-$HvDK z|3D2ZMJkLE5loMKl6R^ez@Zz%S$&mbeoqH5`Bb){Ei21q&VP)hWS2tjShfFtGE+$z zzCR$P#uktu+#!w)cX!lWN1XU%K-r=s{|j?)Akf@q#3b#{6cZCuJ~gCxuMXRmI$nGtnH+-h z+GEi!*X=AP<|fG`1>MBdTb?28JYc=fGvAi2I<$B(rs$;eoJCyR6_bc~p!XR@O-+sD z=eH`-ye})I5ic1eL~TDmtfJ|8`0VJ*Yr=hNCd)G1p2MMz4C3^Mj?7;!w|Ly%JqmuW zlIEW^Ft%z?*|fpXda>Jr^1noFZEwFgVV%|*XhH@acv8rdGxeEX{M$(vG{Zw+x(ei@ zmfXb22}8-?Fi`vo-YVrTH*C?a8%M=Hv9MqVH7H^J$KsD?>!SFZ;ZsvnHr_gn=7acz z#W?0eCdVhVMWN12VV^$>WlQ?f;P^{(&pYTops|btm6aj>_Uz+hqpGwB)vWp0Cf5y< zft8-je~nn?W11plq}N)4A{l8I7$!ks_x$PXW-2XaRFswX_BnF{R#6YIwMhAgd5F9X zGmwdadS6(a^fjHtXg8=l?Rc0Sm%hk6E9!5cLVloEy4eh(=FwgP`)~I^5~pBEWo+F6 zSf2ncyMurJN91#cJTy_u8Y}@%!bq1RkGC~-bV@SXRd4F{R-*V`bS+6;W5vZ(&+I<9$;-V|eNfLa5n-6% z2(}&uGRF;p92eS*sE*oR$@pexaqr*meB)VhmIg@h{uzkk$9~qh#cHhw#>O%)b@+(| z^IQgqzuj~Sk(J;swEM-3TrJAPCq9k^^^`q{IItKBRXYe}e0Tdr=Huf7da3$l4PdpwWDop%^}n;dD#K4s#DYA8SHZ z&1!riV4W4R7R#C))JH1~axJ)RYnM$$lIR%6fIVA@zV{XVyx}C+a-Dt8Y9M)^KU0+H zR4IUb2CJ{Hg>CuaXtD50jB(_Tcx=Z$^WYu2u5kubqmwp%drJ6 z?Fo40g!Qd<-l=TQxqHEOuPX0;^z7iX?Ke^a%XT<13TA^5`4Xcw6D@Ur&VT&CUe0d} z1GjOVF1^L@>O)l@?bD~$wzgf(nxX1OGD8fEV?TdJcZc2KoUe|oP1#=$$7ee|xbY)A zDZq+cuTpc(fFdj^=!;{k03C69lMQ(|>uhRfRu%+!k&YOi-3|1QKB z z?n?eq1XP>p-IM$Z^C;2L3itnbJZAip*Zo0aw2bs8@(s^~*8T9go!%dHcAz2lM;`yp zD=7&xjFV$S&5uDaiScyD?B-i1ze`+CoRtz`Wn+Zl&#s4&}MO{@N!ufrzjG$B79)Y2d3tBk&)TxUTw@QS0TEL_?njX|@vq?Uz(nBFK5Pq7*xj#u*R&i|?7+6# z+|r_n#SW&LXhtheZdah{ZVoqwyT{D>MC3nkFF#N)xLi{p7J1jXlmVeb;cP5?e(=f# zuT7fvjSbjS781v?7{)-X3*?>tq?)Yd)~|1{BDS(pqC zC}~H#WXlkUW*H5CDOo<)#x7%RY)A;ShGhI5s*#cRDA8YgqG(HeKDx+#(ZQ?386dv! zlXCO)w91~Vw4AmOcATuV653fa9R$fyK8ul%rG z-wfS zihugoZyr38Im?Zuh6@RcF~t1anQu7>#lPpb#}4cOA!EM11`%f*07RqOVkmX{p~KJ9 z^zP;K#|)$`^Rb{rnHGH{~>1(fawV0*Z#)}M`m8-?ZJV<+e}s9wE# z)l&az?w^5{)`S(%MRzxdNqrs1n*-=jS^_jqE*5XDrA0+VE`5^*p3CuM<&dZEeCjoz zR;uu_H9ZPZV|fQq`Cyw4nscrVwi!fE6ciMmX$!_hN7uF;jjKG)d2@aC4ropY)8etW=xJvni)8eHi`H$%#zn^WJ5NLc-rqk|u&&4Z6fD_m&JfSI1Bvb?b<*n&sfl0^t z=HnmRl`XrFvMKB%9}>PaA`m-fK6a0(8=qPkWS5bb4=v?XcWi&hRY?O5HdulRi4?fN zlsJ*N-0Qw+Yic@s0(2uy%F@ib;GjXt01Fmx5XbRo6+n|pP(&nodMoap^z{~q ziEeaUT@Mxe3vJSfI6?uLND(CNr=#^W<1b}jzW58bIfyWTDle$mmS(|x-0|2UlX+9k zQ^EX7Nw}?EzVoBfT(-LT|=9N@^hcn-_p&sqG z&*oVs2JSU+N4ZD`FhCAWaS;>|wH2G*Id|?pa#@>tyxX`+4HyIArWDvVrX)2WAOQff z0qyHu&-S@i^MS-+j--!pr4fPBj~_8({~e1bfcl0wI1kaoN>mJL6KUPQm5N7lB(ui1 zE-o%kq)&djzWJ}ob<-GfDlkB;F31j-VHKvQUGQ3sp`CwyGJk_i!y^sD0fqC@$9|jO zOqN!r!8-p==F@ZVP=U$qSpY(gQ0)59P1&t@y?5rvg<}E+GB}26NYPp4f2YFQrQtot5mn3wu_qprZ=>Ig-$ zbW26Ws~IgY>}^5w`vTB(G`PTZaDiGBo5o(tp)qli|NeV( z@H_=R8V39rt5J5YB2Ky?4eJJ#b`_iBe2ot~6%7mLt5t8Vwi^Jy7|jWXqa3amOIoRb zOr}WVFP--DsS`1WpN%~)t3R!arKF^Q$e12KEqU36AWwnCBICpH4XCsfnyrHr>$I$4 z!DpKX$OKLWarN7nv@!uIA+~RNO)l$$w}p(;b>mx8pwYvu;dD_unryX_NhT8*Tj>BTrTTL&!?O+%Rv;b?B??gSzdp?6Uug9{ zd@V08Z$BdI?fpoCS$)t4mg4rT8Q_I}h`0d-vYZ^|dOB*Q^S|xqTV*vIg?@fVFSmMpaw0qtTRbx} z({Pg?#{2`sc9)M5N$*N|4;^t$+QP?#mov zGVC@I*lBVrOU-%2y!7%)fAKjpEFsgQc4{amtiHb95KQEwvf<(3T<9-Zm$xIew#P22 zc2Ix|App^>v6(3L_MCU0d3W##AB0M~3D00EWoKZqsJYT(#@w$Y_H7G22M~ApVFTRHMI_3be)Lkn#0F*V8Pq zc}`Cjy$bE;FJ6H7p=0y#R>`}-m4(0F>%@P|?7fx{=R^uFdISRnZ2W_xQhD{YuR3t< z{6yxu=4~JkeA;|(J6_nv#>Nvs&FuLA&PW^he@t(UwFFE8)|a!R{`E`K`i^ZnyE4$k z;(749Ix|oi$c3QbEJ3b~D_kQsPz~fIUKym($a_7dJ?o+40*OLl^{=&oq$<#Q(yyrp z{J-FAniyAw9tPbe&IhQ|a`DqFTVQGQ&Gq3!C2==4x{6EJwiPZ8zub-iXoUtkJiG{} zPaR&}_fn8_z~(=;5lD-aPWD3z8PZS@AaUiomF!G8I}Mf>e~0g#BelA-5#`cj;O5>N Xviia!U7SGha1wx#SCgwmn*{w2TRX*I literal 0 HcmV?d00001 diff --git a/account_payment_order_transfer_journal/static/description/index.html b/account_payment_order_transfer_journal/static/description/index.html new file mode 100644 index 00000000000..2c5ec388bd7 --- /dev/null +++ b/account_payment_order_transfer_journal/static/description/index.html @@ -0,0 +1,424 @@ + + + + + + +Account Payement Order Transfer Journal + + + +

+

Account Payement Order Transfer Journal

+ + +

Beta License: AGPL-3 OCA/bank-payment Translate me on Weblate Try me on Runbot

+

This module allow to generate payment order entries on a transfer journal

+

Table of contents

+ +
+

Usage

+

Set transfer jounrnal directly on the bank journal. If there is no transfer journal, the bank journal itself will be used.

+
+
+

Bug Tracker

+

Bugs are tracked on GitHub Issues. +In case of trouble, please check there if your issue has already been reported. +If you spotted it first, help us smashing it by providing a detailed and welcomed +feedback.

+

Do not contact contributors directly about support or help with technical issues.

+
+
+

Credits

+
+

Authors

+
    +
  • ACSONE SA/NV
  • +
+
+ +
+

Maintainers

+

This module is maintained by the OCA.

+Odoo Community Association +

OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use.

+

This module is part of the OCA/bank-payment project on GitHub.

+

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

+
+
+
+ + diff --git a/account_payment_order_transfer_journal/tests/__init__.py b/account_payment_order_transfer_journal/tests/__init__.py new file mode 100644 index 00000000000..528bf29603f --- /dev/null +++ b/account_payment_order_transfer_journal/tests/__init__.py @@ -0,0 +1 @@ +from . import test_payment_order diff --git a/account_payment_order_transfer_journal/tests/test_payment_order.py b/account_payment_order_transfer_journal/tests/test_payment_order.py new file mode 100644 index 00000000000..aa4c1309c0e --- /dev/null +++ b/account_payment_order_transfer_journal/tests/test_payment_order.py @@ -0,0 +1,118 @@ +# Copyright 2022 ACSONE SA/NV +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from datetime import datetime, timedelta + +from odoo import fields +from odoo.tests.common import TransactionCase + + +class TestPaymentOrder(TransactionCase): + def setUp(self): + super().setUp() + self.company = self.env.ref("base.main_company") + self.env.user.company_id = self.company.id + self.partner = self.env["res.partner"].create( + { + "name": "Test Partner", + } + ) + self.product = self.env["product.product"].create({"name": "Test"}) + self.invoice_line_account = self.env["account.account"].create( + { + "name": "Test account", + "code": "TEST1", + "user_type_id": self.env.ref("account.data_account_type_expenses").id, + } + ) + self.bank_journal = self.env["account.journal"].search( + [("company_id", "=", self.company.id), ("type", "=", "bank")], limit=1 + ) + self.transfer_journal = self.env["account.journal"].search( + [("company_id", "=", self.company.id), ("type", "=", "general")], + limit=1, + ) + + self.mode = self.env["account.payment.mode"].create( + { + "name": "Test Credit Transfer to Suppliers", + "company_id": self.company.id, + "payment_method_id": self.env.ref( + "account.account_payment_method_manual_out" + ).id, + "fixed_journal_id": self.bank_journal.id, + "bank_account_link": "fixed", + } + ) + self.invoice = self._create_supplier_invoice("F1242") + # Make sure no other payment orders are in the DB + self.domain = [ + ("state", "=", "draft"), + ("payment_type", "=", "outbound"), + ("company_id", "=", self.env.user.company_id.id), + ] + self.env["account.payment.order"].search(self.domain).unlink() + + def _create_supplier_invoice(self, ref): + invoice = self.env["account.move"].create( + { + "partner_id": self.partner.id, + "move_type": "in_invoice", + "ref": ref, + "payment_mode_id": self.mode.id, + "invoice_date": fields.Date.today(), + "invoice_line_ids": [ + ( + 0, + None, + { + "product_id": self.product.id, + "quantity": 1.0, + "price_unit": 100.0, + "name": "product that cost 100", + "account_id": self.invoice_line_account.id, + }, + ) + ], + } + ) + + return invoice + + def test_payment_order_transfer_jounral(self): + self.invoice.action_post() + self.bank_journal.transfer_journal_id = self.transfer_journal + order_vals = { + "payment_type": "outbound", + "payment_mode_id": self.mode.id, + } + order = self.env["account.payment.order"].create(order_vals) + order.payment_mode_id = self.mode.id + order.payment_mode_id_change() + self.assertEqual(order.journal_id.id, self.bank_journal.id) + + self.assertEqual(len(order.payment_line_ids), 0) + line_create = ( + self.env["account.payment.line.create"] + .with_context(active_model="account.payment.order", active_id=order.id) + .create( + {"date_type": "move", "move_date": datetime.now() + timedelta(days=1)} + ) + ) + line_create.payment_mode = "any" + line_create.move_line_filters_change() + line_create.populate() + line_create.create_payment_lines() + line_created_due = ( + self.env["account.payment.line.create"] + .with_context(active_model="account.payment.order", active_id=order.id) + .create( + {"date_type": "due", "due_date": datetime.now() + timedelta(days=1)} + ) + ) + line_created_due.populate() + line_created_due.create_payment_lines() + order.draft2open() + order.open2generated() + order.generated2uploaded() + self.assertEqual(order.move_ids[0].journal_id, self.transfer_journal) diff --git a/account_payment_order_transfer_journal/views/account_journal.xml b/account_payment_order_transfer_journal/views/account_journal.xml new file mode 100644 index 00000000000..c23e15953b2 --- /dev/null +++ b/account_payment_order_transfer_journal/views/account_journal.xml @@ -0,0 +1,21 @@ + + + + + + account.journal.form (in account_payment_order_transfer_journal) + account.journal + + + + + + + + + + + From 059442eac29f64be132f22282534e4bf643af169 Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Thu, 29 Jun 2023 10:08:56 +0200 Subject: [PATCH 066/115] [IMP] account_payment_order_transfer_journal: pre-commit stuff --- .../odoo/addons/account_payment_order_transfer_journal | 1 + setup/account_payment_order_transfer_journal/setup.py | 6 ++++++ 2 files changed, 7 insertions(+) create mode 120000 setup/account_payment_order_transfer_journal/odoo/addons/account_payment_order_transfer_journal create mode 100644 setup/account_payment_order_transfer_journal/setup.py diff --git a/setup/account_payment_order_transfer_journal/odoo/addons/account_payment_order_transfer_journal b/setup/account_payment_order_transfer_journal/odoo/addons/account_payment_order_transfer_journal new file mode 120000 index 00000000000..08e22498842 --- /dev/null +++ b/setup/account_payment_order_transfer_journal/odoo/addons/account_payment_order_transfer_journal @@ -0,0 +1 @@ +../../../../account_payment_order_transfer_journal \ No newline at end of file diff --git a/setup/account_payment_order_transfer_journal/setup.py b/setup/account_payment_order_transfer_journal/setup.py new file mode 100644 index 00000000000..28c57bb6403 --- /dev/null +++ b/setup/account_payment_order_transfer_journal/setup.py @@ -0,0 +1,6 @@ +import setuptools + +setuptools.setup( + setup_requires=['setuptools-odoo'], + odoo_addon=True, +) From 56f905d9984d808bd1786e89df632a493998cf17 Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Thu, 29 Jun 2023 11:20:47 +0200 Subject: [PATCH 067/115] [MIG] account_payment_order_transfer_journal: Migration to 16.0 --- .../__manifest__.py | 9 ++++---- .../models/__init__.py | 2 +- .../models/account_payment_line.py | 14 +++++++++++++ .../models/account_payment_order.py | 15 ------------- .../readme/CONTRIBUTORS.rst | 1 + .../views/account_journal.xml | 21 ------------------- .../views/account_journal_views.xml | 17 +++++++++++++++ 7 files changed, 38 insertions(+), 41 deletions(-) create mode 100644 account_payment_order_transfer_journal/models/account_payment_line.py delete mode 100644 account_payment_order_transfer_journal/models/account_payment_order.py delete mode 100644 account_payment_order_transfer_journal/views/account_journal.xml create mode 100644 account_payment_order_transfer_journal/views/account_journal_views.xml diff --git a/account_payment_order_transfer_journal/__manifest__.py b/account_payment_order_transfer_journal/__manifest__.py index ec4fc1a6e3e..e107d39d0d2 100644 --- a/account_payment_order_transfer_journal/__manifest__.py +++ b/account_payment_order_transfer_journal/__manifest__.py @@ -1,17 +1,18 @@ # Copyright 2022 ACSONE SA/NV +# Copyright 2023 Noviat # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). { "name": "Account Payement Order Transfer Journal", "summary": """ - Add the possibility to book payement order operations on a transfert journal.""", - "version": "14.0.1.0.0", + Add the possibility to book payment order operations on a transfert journal.""", + "version": "16.0.1.0.0", "license": "AGPL-3", - "author": "ACSONE SA/NV,Odoo Community Association (OCA)", + "author": "ACSONE SA/NV,Noviat,Odoo Community Association (OCA)", "website": "https://github.com/OCA/bank-payment", "depends": ["account_payment_order"], "data": [ - "views/account_journal.xml", + "views/account_journal_views.xml", ], "demo": [], } diff --git a/account_payment_order_transfer_journal/models/__init__.py b/account_payment_order_transfer_journal/models/__init__.py index eb04dbf3585..d1408893fcc 100644 --- a/account_payment_order_transfer_journal/models/__init__.py +++ b/account_payment_order_transfer_journal/models/__init__.py @@ -1,2 +1,2 @@ from . import account_journal -from . import account_payment_order +from . import account_payment_line diff --git a/account_payment_order_transfer_journal/models/account_payment_line.py b/account_payment_order_transfer_journal/models/account_payment_line.py new file mode 100644 index 00000000000..a26ceb68e27 --- /dev/null +++ b/account_payment_order_transfer_journal/models/account_payment_line.py @@ -0,0 +1,14 @@ +# Copyright 2023 Noviat +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo import models + + +class AccountPaymentLine(models.Model): + _inherit = "account.payment.line" + + def _prepare_account_payment_vals(self): + vals = super()._prepare_account_payment_vals() + if self.order_id.journal_id.transfer_journal_id: + vals["journal_id"] = self.order_id.journal_id.transfer_journal_id.id + return vals diff --git a/account_payment_order_transfer_journal/models/account_payment_order.py b/account_payment_order_transfer_journal/models/account_payment_order.py deleted file mode 100644 index 9a20cbac79a..00000000000 --- a/account_payment_order_transfer_journal/models/account_payment_order.py +++ /dev/null @@ -1,15 +0,0 @@ -# Copyright 2022 ACSONE SA/NV -# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). - -from odoo import models - - -class AccountPaymentOrder(models.Model): - - _inherit = "account.payment.order" - - def _prepare_move(self, bank_lines=None): - res = super()._prepare_move(bank_lines=bank_lines) - if self.journal_id.transfer_journal_id: - res["journal_id"] = self.journal_id.transfer_journal_id.id - return res diff --git a/account_payment_order_transfer_journal/readme/CONTRIBUTORS.rst b/account_payment_order_transfer_journal/readme/CONTRIBUTORS.rst index 94a5ccf2090..074a9b413ec 100644 --- a/account_payment_order_transfer_journal/readme/CONTRIBUTORS.rst +++ b/account_payment_order_transfer_journal/readme/CONTRIBUTORS.rst @@ -1 +1,2 @@ * Adrien Peiffer (https://acsone.eu) +* Luc De Meyer (https://noviat.com) diff --git a/account_payment_order_transfer_journal/views/account_journal.xml b/account_payment_order_transfer_journal/views/account_journal.xml deleted file mode 100644 index c23e15953b2..00000000000 --- a/account_payment_order_transfer_journal/views/account_journal.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - account.journal.form (in account_payment_order_transfer_journal) - account.journal - - - - - - - - - - - diff --git a/account_payment_order_transfer_journal/views/account_journal_views.xml b/account_payment_order_transfer_journal/views/account_journal_views.xml new file mode 100644 index 00000000000..c7e5da023af --- /dev/null +++ b/account_payment_order_transfer_journal/views/account_journal_views.xml @@ -0,0 +1,17 @@ + + + + + account.journal.form (in account_payment_order_transfer_journal) + account.journal + + + + + + + + + From 8dd8e05b26124656369b0c1f8ed464d6a765d577 Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Thu, 29 Jun 2023 14:49:56 +0200 Subject: [PATCH 068/115] account_payment_order_transfer_journal - add 'general' filter on transfer journal --- .../models/account_journal.py | 3 ++- .../views/account_journal_views.xml | 5 +++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/account_payment_order_transfer_journal/models/account_journal.py b/account_payment_order_transfer_journal/models/account_journal.py index 466f8c5b5a6..ae65d51eb1f 100644 --- a/account_payment_order_transfer_journal/models/account_journal.py +++ b/account_payment_order_transfer_journal/models/account_journal.py @@ -1,15 +1,16 @@ # Copyright 2022 ACSONE SA/NV +# Copyright 2023 Noviat # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). from odoo import fields, models class AccountJournal(models.Model): - _inherit = "account.journal" transfer_journal_id = fields.Many2one( comodel_name="account.journal", string="Transfer journal on payment/debit orders", + domain="[('type', '=', 'general')]", help="Journal to write payment entries when confirming payment/debit orders", ) diff --git a/account_payment_order_transfer_journal/views/account_journal_views.xml b/account_payment_order_transfer_journal/views/account_journal_views.xml index c7e5da023af..f26d125b503 100644 --- a/account_payment_order_transfer_journal/views/account_journal_views.xml +++ b/account_payment_order_transfer_journal/views/account_journal_views.xml @@ -8,6 +8,11 @@ account.journal + + {'invisible': [('transfer_journal_id', '!=', False)]} + From 7aebbd4a57f2ed0072b116487dfcac697fcb999a Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Thu, 29 Jun 2023 15:53:14 +0200 Subject: [PATCH 069/115] unit test --- .../tests/test_payment_order.py | 130 +++++------------- 1 file changed, 32 insertions(+), 98 deletions(-) diff --git a/account_payment_order_transfer_journal/tests/test_payment_order.py b/account_payment_order_transfer_journal/tests/test_payment_order.py index aa4c1309c0e..c249d267ca8 100644 --- a/account_payment_order_transfer_journal/tests/test_payment_order.py +++ b/account_payment_order_transfer_journal/tests/test_payment_order.py @@ -1,118 +1,52 @@ -# Copyright 2022 ACSONE SA/NV +# Copyright 2023 Noviat # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). -from datetime import datetime, timedelta - +import odoo.tests from odoo import fields -from odoo.tests.common import TransactionCase +from odoo.addons.account.tests.common import AccountTestInvoicingCommon -class TestPaymentOrder(TransactionCase): - def setUp(self): - super().setUp() - self.company = self.env.ref("base.main_company") - self.env.user.company_id = self.company.id - self.partner = self.env["res.partner"].create( - { - "name": "Test Partner", - } - ) - self.product = self.env["product.product"].create({"name": "Test"}) - self.invoice_line_account = self.env["account.account"].create( - { - "name": "Test account", - "code": "TEST1", - "user_type_id": self.env.ref("account.data_account_type_expenses").id, - } - ) - self.bank_journal = self.env["account.journal"].search( - [("company_id", "=", self.company.id), ("type", "=", "bank")], limit=1 - ) - self.transfer_journal = self.env["account.journal"].search( - [("company_id", "=", self.company.id), ("type", "=", "general")], - limit=1, - ) - self.mode = self.env["account.payment.mode"].create( +@odoo.tests.tagged("post_install", "-at_install") +class TestPaymentOrderTranserJournal(AccountTestInvoicingCommon): + @classmethod + def setUpClass(cls): + super().setUpClass() + today = fields.Date.today() + cls.in_invoice = cls.init_invoice( + "in_invoice", invoice_date=today, products=cls.product_a + ) + cls.bank_journal = cls.company_data["default_journal_bank"] + cls.misc_journal = cls.company_data["default_journal_misc"] + cls.payment_mode = cls.env["account.payment.mode"].create( { "name": "Test Credit Transfer to Suppliers", - "company_id": self.company.id, - "payment_method_id": self.env.ref( + "company_id": cls.env.company.id, + "payment_method_id": cls.env.ref( "account.account_payment_method_manual_out" ).id, - "fixed_journal_id": self.bank_journal.id, + "fixed_journal_id": cls.bank_journal.id, "bank_account_link": "fixed", } ) - self.invoice = self._create_supplier_invoice("F1242") - # Make sure no other payment orders are in the DB - self.domain = [ - ("state", "=", "draft"), - ("payment_type", "=", "outbound"), - ("company_id", "=", self.env.user.company_id.id), - ] - self.env["account.payment.order"].search(self.domain).unlink() - def _create_supplier_invoice(self, ref): - invoice = self.env["account.move"].create( - { - "partner_id": self.partner.id, - "move_type": "in_invoice", - "ref": ref, - "payment_mode_id": self.mode.id, - "invoice_date": fields.Date.today(), - "invoice_line_ids": [ - ( - 0, - None, - { - "product_id": self.product.id, - "quantity": 1.0, - "price_unit": 100.0, - "name": "product that cost 100", - "account_id": self.invoice_line_account.id, - }, - ) - ], - } + def test_payment_order_transfer_journal(self): + self.in_invoice._post() + self.bank_journal.transfer_journal_id = self.misc_journal + ap_aml = self.in_invoice.line_ids.filtered( + lambda r: r.account_type == "liability_payable" ) - - return invoice - - def test_payment_order_transfer_jounral(self): - self.invoice.action_post() - self.bank_journal.transfer_journal_id = self.transfer_journal + payline_vals = { + "move_line_id": ap_aml.id, + "partner_id": self.in_invoice.partner_id.id, + "communication": "F0123", + "amount_currency": -ap_aml.amount_currency, + } order_vals = { "payment_type": "outbound", - "payment_mode_id": self.mode.id, + "payment_mode_id": self.payment_mode.id, + "payment_line_ids": [(0, 0, payline_vals)], } order = self.env["account.payment.order"].create(order_vals) - order.payment_mode_id = self.mode.id - order.payment_mode_id_change() - self.assertEqual(order.journal_id.id, self.bank_journal.id) - - self.assertEqual(len(order.payment_line_ids), 0) - line_create = ( - self.env["account.payment.line.create"] - .with_context(active_model="account.payment.order", active_id=order.id) - .create( - {"date_type": "move", "move_date": datetime.now() + timedelta(days=1)} - ) - ) - line_create.payment_mode = "any" - line_create.move_line_filters_change() - line_create.populate() - line_create.create_payment_lines() - line_created_due = ( - self.env["account.payment.line.create"] - .with_context(active_model="account.payment.order", active_id=order.id) - .create( - {"date_type": "due", "due_date": datetime.now() + timedelta(days=1)} - ) - ) - line_created_due.populate() - line_created_due.create_payment_lines() order.draft2open() - order.open2generated() - order.generated2uploaded() - self.assertEqual(order.move_ids[0].journal_id, self.transfer_journal) + self.assertEqual(order.mapped("move_ids.journal_id"), self.misc_journal) From 7ea2fa398c7483679d9d21858f5ba26f0ec33b97 Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Tue, 7 Nov 2023 13:25:47 +0100 Subject: [PATCH 070/115] [IMP] move transfer jpurnal setting from journal to payment mode --- .../README.rst | 28 ++++++----- .../__manifest__.py | 2 +- .../models/__init__.py | 2 +- .../models/account_payment_line.py | 4 +- ...unt_journal.py => account_payment_mode.py} | 5 +- .../readme/USAGE.rst | 3 +- .../static/description/index.html | 47 ++++++++++--------- .../tests/test_payment_order.py | 2 +- .../views/account_journal_views.xml | 22 --------- .../views/account_payment_mode_views.xml | 18 +++++++ 10 files changed, 70 insertions(+), 63 deletions(-) rename account_payment_order_transfer_journal/models/{account_journal.py => account_payment_mode.py} (80%) delete mode 100644 account_payment_order_transfer_journal/views/account_journal_views.xml create mode 100644 account_payment_order_transfer_journal/views/account_payment_mode_views.xml diff --git a/account_payment_order_transfer_journal/README.rst b/account_payment_order_transfer_journal/README.rst index 2a16d2735aa..7e2c93797f4 100644 --- a/account_payment_order_transfer_journal/README.rst +++ b/account_payment_order_transfer_journal/README.rst @@ -2,10 +2,13 @@ Account Payement Order Transfer Journal ======================================= -.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +.. + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! source digest: sha256:e52099ef175e833fe269292c0e7ed67f491c0f1006c5f05c122147f541a3369c + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png :target: https://odoo-community.org/page/development-status @@ -14,16 +17,16 @@ Account Payement Order Transfer Journal :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fbank--payment-lightgray.png?logo=github - :target: https://github.com/OCA/bank-payment/tree/14.0/account_payment_order_transfer_journal + :target: https://github.com/OCA/bank-payment/tree/16.0/account_payment_order_transfer_journal :alt: OCA/bank-payment .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/bank-payment-14-0/bank-payment-14-0-account_payment_order_transfer_journal + :target: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_payment_order_transfer_journal :alt: Translate me on Weblate -.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png - :target: https://runbot.odoo-community.org/runbot/173/14.0 - :alt: Try me on Runbot +.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png + :target: https://runboat.odoo-community.org/builds?repo=OCA/bank-payment&target_branch=16.0 + :alt: Try me on Runboat -|badge1| |badge2| |badge3| |badge4| |badge5| +|badge1| |badge2| |badge3| |badge4| |badge5| This module allow to generate payment order entries on a transfer journal @@ -35,15 +38,16 @@ This module allow to generate payment order entries on a transfer journal Usage ===== -Set transfer jounrnal directly on the bank journal. If there is no transfer journal, the bank journal itself will be used. +Set transfer jounrnal via Accounting Settings or on the payment mode. +If there is no transfer journal, the bank journal itself will be used. Bug Tracker =========== Bugs are tracked on `GitHub Issues `_. In case of trouble, please check there if your issue has already been reported. -If you spotted it first, help us smashing it by providing a detailed and welcomed -`feedback `_. +If you spotted it first, help us to smash it by providing a detailed and welcomed +`feedback `_. Do not contact contributors directly about support or help with technical issues. @@ -54,11 +58,13 @@ Authors ~~~~~~~ * ACSONE SA/NV +* Noviat Contributors ~~~~~~~~~~~~ * Adrien Peiffer (https://acsone.eu) +* Luc De Meyer (https://noviat.com) Maintainers ~~~~~~~~~~~ @@ -73,6 +79,6 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use. -This module is part of the `OCA/bank-payment `_ project on GitHub. +This module is part of the `OCA/bank-payment `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/account_payment_order_transfer_journal/__manifest__.py b/account_payment_order_transfer_journal/__manifest__.py index e107d39d0d2..ee51320ceb5 100644 --- a/account_payment_order_transfer_journal/__manifest__.py +++ b/account_payment_order_transfer_journal/__manifest__.py @@ -12,7 +12,7 @@ "website": "https://github.com/OCA/bank-payment", "depends": ["account_payment_order"], "data": [ - "views/account_journal_views.xml", + "views/account_payment_mode_views.xml", ], "demo": [], } diff --git a/account_payment_order_transfer_journal/models/__init__.py b/account_payment_order_transfer_journal/models/__init__.py index d1408893fcc..e35c609e84b 100644 --- a/account_payment_order_transfer_journal/models/__init__.py +++ b/account_payment_order_transfer_journal/models/__init__.py @@ -1,2 +1,2 @@ -from . import account_journal from . import account_payment_line +from . import account_payment_mode diff --git a/account_payment_order_transfer_journal/models/account_payment_line.py b/account_payment_order_transfer_journal/models/account_payment_line.py index a26ceb68e27..2326a12a397 100644 --- a/account_payment_order_transfer_journal/models/account_payment_line.py +++ b/account_payment_order_transfer_journal/models/account_payment_line.py @@ -9,6 +9,6 @@ class AccountPaymentLine(models.Model): def _prepare_account_payment_vals(self): vals = super()._prepare_account_payment_vals() - if self.order_id.journal_id.transfer_journal_id: - vals["journal_id"] = self.order_id.journal_id.transfer_journal_id.id + if self.order_id.payment_mode_id.transfer_journal_id: + vals["journal_id"] = self.order_id.payment_mode_id.transfer_journal_id.id return vals diff --git a/account_payment_order_transfer_journal/models/account_journal.py b/account_payment_order_transfer_journal/models/account_payment_mode.py similarity index 80% rename from account_payment_order_transfer_journal/models/account_journal.py rename to account_payment_order_transfer_journal/models/account_payment_mode.py index ae65d51eb1f..c1e7226b05b 100644 --- a/account_payment_order_transfer_journal/models/account_journal.py +++ b/account_payment_order_transfer_journal/models/account_payment_mode.py @@ -1,12 +1,11 @@ -# Copyright 2022 ACSONE SA/NV # Copyright 2023 Noviat # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). from odoo import fields, models -class AccountJournal(models.Model): - _inherit = "account.journal" +class AccountPaymentMode(models.Model): + _inherit = "account.payment.mode" transfer_journal_id = fields.Many2one( comodel_name="account.journal", diff --git a/account_payment_order_transfer_journal/readme/USAGE.rst b/account_payment_order_transfer_journal/readme/USAGE.rst index ae1960c7837..b638f380c8b 100644 --- a/account_payment_order_transfer_journal/readme/USAGE.rst +++ b/account_payment_order_transfer_journal/readme/USAGE.rst @@ -1 +1,2 @@ -Set transfer jounrnal directly on the bank journal. If there is no transfer journal, the bank journal itself will be used. +Set transfer jounrnal via Accounting Settings or on the payment mode. +If there is no transfer journal, the bank journal itself will be used. diff --git a/account_payment_order_transfer_journal/static/description/index.html b/account_payment_order_transfer_journal/static/description/index.html index 2c5ec388bd7..668f0b6fdfe 100644 --- a/account_payment_order_transfer_journal/static/description/index.html +++ b/account_payment_order_transfer_journal/static/description/index.html @@ -1,20 +1,20 @@ - + - + Account Payement Order Transfer Journal - - -
-

Account Payement Order Transfer Journal

- - -

Beta License: AGPL-3 OCA/bank-payment Translate me on Weblate Try me on Runboat

-

This module allow to generate payment order entries on a transfer journal

-

Table of contents

- -
-

Usage

-

Set transfer jounrnal via Accounting Settings or on the Payment Mode. -If there is no transfer journal, the bank journal itself will be used.

-
-
-

Bug Tracker

-

Bugs are tracked on GitHub Issues. -In case of trouble, please check there if your issue has already been reported. -If you spotted it first, help us to smash it by providing a detailed and welcomed -feedback.

-

Do not contact contributors directly about support or help with technical issues.

-
-
-

Credits

-
-

Authors

-
    -
  • ACSONE SA/NV
  • -
  • Noviat
  • -
-
- -
-

Maintainers

-

This module is maintained by the OCA.

-Odoo Community Association -

OCA, or the Odoo Community Association, is a nonprofit organization whose -mission is to support the collaborative development of Odoo features and -promote its widespread use.

-

This module is part of the OCA/bank-payment project on GitHub.

-

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

-
-
-
- - diff --git a/account_payment_order_transfer_journal/tests/__init__.py b/account_payment_order_transfer_journal/tests/__init__.py deleted file mode 100644 index 528bf29603f..00000000000 --- a/account_payment_order_transfer_journal/tests/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from . import test_payment_order diff --git a/account_payment_order_transfer_journal/views/account_payment_mode_views.xml b/account_payment_order_transfer_journal/views/account_payment_mode_views.xml deleted file mode 100644 index 8a81b4e3d31..00000000000 --- a/account_payment_order_transfer_journal/views/account_payment_mode_views.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - account.payment.mode.form.transfer_journal) - account.payment.mode - - - - - - - - - diff --git a/account_payment_order_transfer_journal/wizards/__init__.py b/account_payment_order_transfer_journal/wizards/__init__.py deleted file mode 100644 index 0deb68c4680..00000000000 --- a/account_payment_order_transfer_journal/wizards/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from . import res_config_settings diff --git a/setup/account_payment_order_transfer_journal/odoo/addons/account_payment_order_transfer_journal b/setup/account_payment_order_transfer_journal/odoo/addons/account_payment_order_transfer_journal deleted file mode 120000 index 08e22498842..00000000000 --- a/setup/account_payment_order_transfer_journal/odoo/addons/account_payment_order_transfer_journal +++ /dev/null @@ -1 +0,0 @@ -../../../../account_payment_order_transfer_journal \ No newline at end of file diff --git a/setup/account_payment_order_transfer_journal/setup.py b/setup/account_payment_order_transfer_journal/setup.py deleted file mode 100644 index 28c57bb6403..00000000000 --- a/setup/account_payment_order_transfer_journal/setup.py +++ /dev/null @@ -1,6 +0,0 @@ -import setuptools - -setuptools.setup( - setup_requires=['setuptools-odoo'], - odoo_addon=True, -) From 7c7fbfa999ab69edebd5713292358f5a7c528036 Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Sun, 14 Apr 2024 19:54:17 +0200 Subject: [PATCH 073/115] [FIX]account_payment_order transfer journal The transfer journal functionality has been broken by commit https://github.com/odoo/odoo/commit/65a19492a8044be4f05a8200a6956c3e50b69eab This fix adds transfer journal support to this constraint. --- account_payment_order/models/account_payment.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/account_payment_order/models/account_payment.py b/account_payment_order/models/account_payment.py index d1febc96a90..45075eb2d6d 100644 --- a/account_payment_order/models/account_payment.py +++ b/account_payment_order/models/account_payment.py @@ -35,3 +35,16 @@ def _compute_payment_method_line_fields(self): ) ) return res + + @api.constrains("payment_method_line_id") + def _check_payment_method_line_id(self): + for pay in self: + transfer_journal = ( + pay.payment_order_id.payment_mode_id.transfer_journal_id + or pay.company_id.transfer_journal_id + ) + if pay.journal_id == transfer_journal: + continue + else: + super(AccountPayment, pay)._check_payment_method_line_id() + return From 2f78e0bb85d7d35d26977826e1955c89f1ae3542 Mon Sep 17 00:00:00 2001 From: oca-ci Date: Fri, 19 Apr 2024 14:53:10 +0000 Subject: [PATCH 074/115] [UPD] Update account_banking_pain_base.pot --- account_banking_pain_base/i18n/account_banking_pain_base.pot | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/account_banking_pain_base/i18n/account_banking_pain_base.pot b/account_banking_pain_base/i18n/account_banking_pain_base.pot index 1a9d525cf2b..96d4bbce9e8 100644 --- a/account_banking_pain_base/i18n/account_banking_pain_base.pot +++ b/account_banking_pain_base/i18n/account_banking_pain_base.pot @@ -755,7 +755,7 @@ msgid "SEPA zone" msgstr "" #. module: account_banking_pain_base -#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.res_config_settings_view_form msgid "SEPA/PAIN" msgstr "" From 84920a2efc59ad8821063abe6bfa499763f3a966 Mon Sep 17 00:00:00 2001 From: oca-ci Date: Fri, 19 Apr 2024 14:53:11 +0000 Subject: [PATCH 075/115] [UPD] Update account_banking_sepa_direct_debit.pot --- .../i18n/account_banking_sepa_direct_debit.pot | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/account_banking_sepa_direct_debit/i18n/account_banking_sepa_direct_debit.pot b/account_banking_sepa_direct_debit/i18n/account_banking_sepa_direct_debit.pot index 39c5e7181f9..5afc2de2ae4 100644 --- a/account_banking_sepa_direct_debit/i18n/account_banking_sepa_direct_debit.pot +++ b/account_banking_sepa_direct_debit/i18n/account_banking_sepa_direct_debit.pot @@ -477,7 +477,7 @@ msgid "Unique Mandate Reference" msgstr "" #. module: account_banking_sepa_direct_debit -#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.res_config_settings_view_form msgid "Write the ICS of your company" msgstr "" From f283a2ffe0b70363ca22f4f00cf184f567c309d3 Mon Sep 17 00:00:00 2001 From: oca-ci Date: Fri, 19 Apr 2024 14:53:12 +0000 Subject: [PATCH 076/115] [UPD] Update account_payment_order.pot --- .../i18n/account_payment_order.pot | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/account_payment_order/i18n/account_payment_order.pot b/account_payment_order/i18n/account_payment_order.pot index a2adc246967..35c89693a9a 100644 --- a/account_payment_order/i18n/account_payment_order.pot +++ b/account_payment_order/i18n/account_payment_order.pot @@ -275,6 +275,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -286,6 +291,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -608,6 +618,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -949,6 +966,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1196,6 +1214,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type From cbe580f818dff07d75ebe27ae8728c82ed307535 Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Fri, 19 Apr 2024 14:56:53 +0000 Subject: [PATCH 077/115] [BOT] post-merge updates --- README.md | 6 +++--- account_banking_pain_base/README.rst | 2 +- account_banking_pain_base/__manifest__.py | 2 +- account_banking_pain_base/static/description/index.html | 3 +-- account_banking_sepa_direct_debit/README.rst | 2 +- account_banking_sepa_direct_debit/__manifest__.py | 2 +- .../static/description/index.html | 2 +- account_payment_order/README.rst | 2 +- account_payment_order/__manifest__.py | 2 +- account_payment_order/static/description/index.html | 3 +-- 10 files changed, 12 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index aaaebd91db3..1bc60c2a8ae 100644 --- a/README.md +++ b/README.md @@ -25,12 +25,12 @@ addon | version | maintainers | summary [account_banking_mandate_contact](account_banking_mandate_contact/) | 16.0.1.0.1 | | Assign specific banking mandates in contact level [account_banking_mandate_sale](account_banking_mandate_sale/) | 16.0.1.0.0 | [![alexis-via](https://github.com/alexis-via.png?size=30px)](https://github.com/alexis-via) | Adds mandates on sale orders [account_banking_mandate_sale_contact](account_banking_mandate_sale_contact/) | 16.0.1.0.1 | [![tisho99](https://github.com/tisho99.png?size=30px)](https://github.com/tisho99) | Add a specific contact mandate to sale orders -[account_banking_pain_base](account_banking_pain_base/) | 16.0.1.1.0 | | Base module for PAIN file generation +[account_banking_pain_base](account_banking_pain_base/) | 16.0.1.2.0 | | Base module for PAIN file generation [account_banking_sepa_credit_transfer](account_banking_sepa_credit_transfer/) | 16.0.1.1.1 | | Create SEPA XML files for Credit Transfers -[account_banking_sepa_direct_debit](account_banking_sepa_direct_debit/) | 16.0.1.2.0 | | Create SEPA files for Direct Debit +[account_banking_sepa_direct_debit](account_banking_sepa_direct_debit/) | 16.0.1.3.0 | | Create SEPA files for Direct Debit [account_payment_method_fs_storage](account_payment_method_fs_storage/) | 16.0.1.0.1 | | Add the possibility to specify on the payment method, a storage where files generated will be pushed to upon payment [account_payment_mode](account_payment_mode/) | 16.0.1.2.0 | | Account Payment Mode -[account_payment_order](account_payment_order/) | 16.0.1.7.0 | | Account Payment Order +[account_payment_order](account_payment_order/) | 16.0.1.8.0 | | Account Payment Order [account_payment_order_grouped_output](account_payment_order_grouped_output/) | 16.0.1.0.2 | | Account Payment Order - Generate grouped moves [account_payment_order_notification](account_payment_order_notification/) | 16.0.1.0.0 | [![victoralmau](https://github.com/victoralmau.png?size=30px)](https://github.com/victoralmau) | Account Payment Order Notification [account_payment_partner](account_payment_partner/) | 16.0.1.2.2 | | Adds payment mode on partners and invoices diff --git a/account_banking_pain_base/README.rst b/account_banking_pain_base/README.rst index ab9b5bba3fb..b7dbd2d0ca3 100644 --- a/account_banking_pain_base/README.rst +++ b/account_banking_pain_base/README.rst @@ -7,7 +7,7 @@ Account Banking PAIN Base Module !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:cb0a3e1e489965d9fd1e4540fb54b404f630887d8a913484c222034edbe91786 + !! source digest: sha256:a642e5102cbaa72fea6e0bc93a45960a388aa4266c653a467fb86c13e47f9d1b !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png diff --git a/account_banking_pain_base/__manifest__.py b/account_banking_pain_base/__manifest__.py index 192f16ed0b5..c00bebceab0 100644 --- a/account_banking_pain_base/__manifest__.py +++ b/account_banking_pain_base/__manifest__.py @@ -7,7 +7,7 @@ { "name": "Account Banking PAIN Base Module", "summary": "Base module for PAIN file generation", - "version": "16.0.1.1.0", + "version": "16.0.1.2.0", "license": "AGPL-3", "author": "Akretion, Noviat, Tecnativa, Odoo Community Association (OCA)", "website": "https://github.com/OCA/bank-payment", diff --git a/account_banking_pain_base/static/description/index.html b/account_banking_pain_base/static/description/index.html index 3b6dfae0b28..2b142507c05 100644 --- a/account_banking_pain_base/static/description/index.html +++ b/account_banking_pain_base/static/description/index.html @@ -1,4 +1,3 @@ - @@ -367,7 +366,7 @@

Account Banking PAIN Base Module

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:cb0a3e1e489965d9fd1e4540fb54b404f630887d8a913484c222034edbe91786 +!! source digest: sha256:a642e5102cbaa72fea6e0bc93a45960a388aa4266c653a467fb86c13e47f9d1b !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

Beta License: AGPL-3 OCA/bank-payment Translate me on Weblate Try me on Runboat

This module contains fields and functions that are used by the module for SEPA diff --git a/account_banking_sepa_direct_debit/README.rst b/account_banking_sepa_direct_debit/README.rst index 62c83474c1f..7858e7a47f0 100644 --- a/account_banking_sepa_direct_debit/README.rst +++ b/account_banking_sepa_direct_debit/README.rst @@ -7,7 +7,7 @@ Account Banking SEPA Direct Debit !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:a433755fd2d5cc4c242b073380fd215deb68ea43af0cdef7207c68febe5f8c10 + !! source digest: sha256:1e8b52e7e0251e8940335e73a25767ae9fdf9a37a0d3bbb9abacab7b9b5118ce !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png diff --git a/account_banking_sepa_direct_debit/__manifest__.py b/account_banking_sepa_direct_debit/__manifest__.py index 8e63a908ac0..913a71ff4a3 100644 --- a/account_banking_sepa_direct_debit/__manifest__.py +++ b/account_banking_sepa_direct_debit/__manifest__.py @@ -7,7 +7,7 @@ { "name": "Account Banking SEPA Direct Debit", "summary": "Create SEPA files for Direct Debit", - "version": "16.0.1.2.0", + "version": "16.0.1.3.0", "license": "AGPL-3", "author": "Akretion, Tecnativa, Odoo Community Association (OCA)", "website": "https://github.com/OCA/bank-payment", diff --git a/account_banking_sepa_direct_debit/static/description/index.html b/account_banking_sepa_direct_debit/static/description/index.html index a8dc50e2fb9..70594b01f84 100644 --- a/account_banking_sepa_direct_debit/static/description/index.html +++ b/account_banking_sepa_direct_debit/static/description/index.html @@ -366,7 +366,7 @@

Account Banking SEPA Direct Debit

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:a433755fd2d5cc4c242b073380fd215deb68ea43af0cdef7207c68febe5f8c10 +!! source digest: sha256:1e8b52e7e0251e8940335e73a25767ae9fdf9a37a0d3bbb9abacab7b9b5118ce !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

Beta License: AGPL-3 OCA/bank-payment Translate me on Weblate Try me on Runboat

Create SEPA files for Direct Debit

diff --git a/account_payment_order/README.rst b/account_payment_order/README.rst index dca6249b4a2..fe9f25a974a 100644 --- a/account_payment_order/README.rst +++ b/account_payment_order/README.rst @@ -7,7 +7,7 @@ Account Payment Order !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:333c07fd51f51a7fe368eacbce8df286cd0089528fcd8548d494fd76ee6272b5 + !! source digest: sha256:7770aeb8f31eacf1b549225db47abcb160f8c5324d0a12eb9e828a6e843b0b45 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Mature-brightgreen.png diff --git a/account_payment_order/__manifest__.py b/account_payment_order/__manifest__.py index ddf8ae821da..c507a709b7c 100644 --- a/account_payment_order/__manifest__.py +++ b/account_payment_order/__manifest__.py @@ -9,7 +9,7 @@ { "name": "Account Payment Order", - "version": "16.0.1.7.0", + "version": "16.0.1.8.0", "license": "AGPL-3", "author": "ACSONE SA/NV, " "Therp BV, " diff --git a/account_payment_order/static/description/index.html b/account_payment_order/static/description/index.html index d0dcc7aa6fc..6ecf21f28a9 100644 --- a/account_payment_order/static/description/index.html +++ b/account_payment_order/static/description/index.html @@ -1,4 +1,3 @@ - @@ -367,7 +366,7 @@

Account Payment Order

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:333c07fd51f51a7fe368eacbce8df286cd0089528fcd8548d494fd76ee6272b5 +!! source digest: sha256:7770aeb8f31eacf1b549225db47abcb160f8c5324d0a12eb9e828a6e843b0b45 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

Mature License: AGPL-3 OCA/bank-payment Translate me on Weblate Try me on Runboat

This module adds support for payment orders and debit orders.

From 020d44e95386b89de5f761406bcf7a8af6142832 Mon Sep 17 00:00:00 2001 From: Weblate Date: Fri, 19 Apr 2024 14:57:13 +0000 Subject: [PATCH 078/115] Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Translation: bank-payment-16.0/bank-payment-16.0-account_banking_pain_base Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_banking_pain_base/ --- account_banking_pain_base/i18n/ca.po | 2 +- account_banking_pain_base/i18n/de.po | 2 +- account_banking_pain_base/i18n/es.po | 2 +- account_banking_pain_base/i18n/es_AR.po | 2 +- account_banking_pain_base/i18n/fr.po | 2 +- account_banking_pain_base/i18n/hr.po | 2 +- account_banking_pain_base/i18n/it.po | 2 +- account_banking_pain_base/i18n/nb_NO.po | 2 +- account_banking_pain_base/i18n/nl.po | 2 +- account_banking_pain_base/i18n/pt_BR.po | 2 +- account_banking_pain_base/i18n/sl.po | 2 +- account_banking_pain_base/i18n/sv.po | 2 +- 12 files changed, 12 insertions(+), 12 deletions(-) diff --git a/account_banking_pain_base/i18n/ca.po b/account_banking_pain_base/i18n/ca.po index 3768cd9a2ab..33782491df5 100644 --- a/account_banking_pain_base/i18n/ca.po +++ b/account_banking_pain_base/i18n/ca.po @@ -760,7 +760,7 @@ msgid "SEPA zone" msgstr "" #. module: account_banking_pain_base -#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.res_config_settings_view_form msgid "SEPA/PAIN" msgstr "" diff --git a/account_banking_pain_base/i18n/de.po b/account_banking_pain_base/i18n/de.po index 72b6ee536b7..2ae657bc61a 100644 --- a/account_banking_pain_base/i18n/de.po +++ b/account_banking_pain_base/i18n/de.po @@ -799,7 +799,7 @@ msgid "SEPA zone" msgstr "" #. module: account_banking_pain_base -#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.res_config_settings_view_form msgid "SEPA/PAIN" msgstr "SEPA/PAIN" diff --git a/account_banking_pain_base/i18n/es.po b/account_banking_pain_base/i18n/es.po index 563010b89e6..b502490d116 100644 --- a/account_banking_pain_base/i18n/es.po +++ b/account_banking_pain_base/i18n/es.po @@ -786,7 +786,7 @@ msgid "SEPA zone" msgstr "Zona SEPA" #. module: account_banking_pain_base -#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.res_config_settings_view_form msgid "SEPA/PAIN" msgstr "SEPA/PAIN" diff --git a/account_banking_pain_base/i18n/es_AR.po b/account_banking_pain_base/i18n/es_AR.po index a27e226be70..e8fbfdfba27 100644 --- a/account_banking_pain_base/i18n/es_AR.po +++ b/account_banking_pain_base/i18n/es_AR.po @@ -784,7 +784,7 @@ msgid "SEPA zone" msgstr "" #. module: account_banking_pain_base -#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.res_config_settings_view_form msgid "SEPA/PAIN" msgstr "SEPA/PAIN" diff --git a/account_banking_pain_base/i18n/fr.po b/account_banking_pain_base/i18n/fr.po index 9a0b7091ac1..d758a60785c 100644 --- a/account_banking_pain_base/i18n/fr.po +++ b/account_banking_pain_base/i18n/fr.po @@ -789,7 +789,7 @@ msgid "SEPA zone" msgstr "" #. module: account_banking_pain_base -#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.res_config_settings_view_form msgid "SEPA/PAIN" msgstr "SEPA/PAIN" diff --git a/account_banking_pain_base/i18n/hr.po b/account_banking_pain_base/i18n/hr.po index d5d65b4daeb..4918af4511e 100644 --- a/account_banking_pain_base/i18n/hr.po +++ b/account_banking_pain_base/i18n/hr.po @@ -764,7 +764,7 @@ msgid "SEPA zone" msgstr "" #. module: account_banking_pain_base -#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.res_config_settings_view_form msgid "SEPA/PAIN" msgstr "" diff --git a/account_banking_pain_base/i18n/it.po b/account_banking_pain_base/i18n/it.po index 16e067e51ff..4d4f29ee0ae 100644 --- a/account_banking_pain_base/i18n/it.po +++ b/account_banking_pain_base/i18n/it.po @@ -802,7 +802,7 @@ msgid "SEPA zone" msgstr "" #. module: account_banking_pain_base -#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.res_config_settings_view_form msgid "SEPA/PAIN" msgstr "" diff --git a/account_banking_pain_base/i18n/nb_NO.po b/account_banking_pain_base/i18n/nb_NO.po index ee455f38821..e2a1bc6b685 100644 --- a/account_banking_pain_base/i18n/nb_NO.po +++ b/account_banking_pain_base/i18n/nb_NO.po @@ -771,7 +771,7 @@ msgid "SEPA zone" msgstr "" #. module: account_banking_pain_base -#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.res_config_settings_view_form msgid "SEPA/PAIN" msgstr "" diff --git a/account_banking_pain_base/i18n/nl.po b/account_banking_pain_base/i18n/nl.po index 0e8e24e015d..fb0f0b8ed73 100644 --- a/account_banking_pain_base/i18n/nl.po +++ b/account_banking_pain_base/i18n/nl.po @@ -786,7 +786,7 @@ msgid "SEPA zone" msgstr "" #. module: account_banking_pain_base -#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.res_config_settings_view_form msgid "SEPA/PAIN" msgstr "SEPA/PAIN" diff --git a/account_banking_pain_base/i18n/pt_BR.po b/account_banking_pain_base/i18n/pt_BR.po index 8d5bbff0fe8..51779b88c22 100644 --- a/account_banking_pain_base/i18n/pt_BR.po +++ b/account_banking_pain_base/i18n/pt_BR.po @@ -764,7 +764,7 @@ msgid "SEPA zone" msgstr "" #. module: account_banking_pain_base -#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.res_config_settings_view_form msgid "SEPA/PAIN" msgstr "" diff --git a/account_banking_pain_base/i18n/sl.po b/account_banking_pain_base/i18n/sl.po index b3eda51cbf3..434b920de44 100644 --- a/account_banking_pain_base/i18n/sl.po +++ b/account_banking_pain_base/i18n/sl.po @@ -767,7 +767,7 @@ msgid "SEPA zone" msgstr "" #. module: account_banking_pain_base -#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.res_config_settings_view_form msgid "SEPA/PAIN" msgstr "" diff --git a/account_banking_pain_base/i18n/sv.po b/account_banking_pain_base/i18n/sv.po index c3aeb6cc4f5..594a4f5a351 100644 --- a/account_banking_pain_base/i18n/sv.po +++ b/account_banking_pain_base/i18n/sv.po @@ -759,7 +759,7 @@ msgid "SEPA zone" msgstr "" #. module: account_banking_pain_base -#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_pain_base.res_config_settings_view_form msgid "SEPA/PAIN" msgstr "SEPA/PAIN" From c7dbfef71c97c7b19a078bcc243a5117fd20628a Mon Sep 17 00:00:00 2001 From: Weblate Date: Fri, 19 Apr 2024 14:57:15 +0000 Subject: [PATCH 079/115] Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Translation: bank-payment-16.0/bank-payment-16.0-account_payment_order Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_payment_order/ --- account_payment_order/i18n/am.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/ar.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/ca.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/ca_ES.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/cs.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/da_DK.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/de.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/el_GR.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/es.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/es_AR.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/es_CL.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/es_CR.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/es_EC.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/es_ES.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/es_MX.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/es_VE.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/et.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/fi.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/fr.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/fr_FR.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/gl.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/hr.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/it.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/lt.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/nb_NO.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/nl.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/nl_BE.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/nl_NL.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/pl.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/pt.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/pt_BR.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/pt_PT.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/ro.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/ru.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/sl.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/sv.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/th.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/tr.po | 25 +++++++++++++++++++++++++ account_payment_order/i18n/vi.po | 25 +++++++++++++++++++++++++ 39 files changed, 975 insertions(+) diff --git a/account_payment_order/i18n/am.po b/account_payment_order/i18n/am.po index 6e073d20063..819ddcd7372 100644 --- a/account_payment_order/i18n/am.po +++ b/account_payment_order/i18n/am.po @@ -280,6 +280,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -291,6 +296,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -615,6 +625,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -956,6 +973,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1203,6 +1221,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/ar.po b/account_payment_order/i18n/ar.po index 861474bb23e..cc301273098 100644 --- a/account_payment_order/i18n/ar.po +++ b/account_payment_order/i18n/ar.po @@ -281,6 +281,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -292,6 +297,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -616,6 +626,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -957,6 +974,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1204,6 +1222,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/ca.po b/account_payment_order/i18n/ca.po index b9c28224a5e..0a01478f802 100644 --- a/account_payment_order/i18n/ca.po +++ b/account_payment_order/i18n/ca.po @@ -289,6 +289,11 @@ msgstr "Tipus de comunicació" msgid "Communication is empty on payment line %s." msgstr "La comunicació està buida a la línia de pagament %s." +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -300,6 +305,11 @@ msgstr "Companyia" msgid "Company Bank Account" msgstr "Compte bancari de la companyia" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -643,6 +653,13 @@ msgstr "Entrada de diari" msgid "Journal Item" msgstr "Apunt" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -984,6 +1001,7 @@ msgstr "Ordre de pagament correcte" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "Ordres de pagament" @@ -1238,6 +1256,13 @@ msgstr "Total en la moneda de la companyia" msgid "Transactions" msgstr "Transaccions" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/ca_ES.po b/account_payment_order/i18n/ca_ES.po index 1fa9fdd1591..a62690b3468 100644 --- a/account_payment_order/i18n/ca_ES.po +++ b/account_payment_order/i18n/ca_ES.po @@ -276,6 +276,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -287,6 +292,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -611,6 +621,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -952,6 +969,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1199,6 +1217,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/cs.po b/account_payment_order/i18n/cs.po index 8d20bc60ed6..e21bc7ebbd7 100644 --- a/account_payment_order/i18n/cs.po +++ b/account_payment_order/i18n/cs.po @@ -280,6 +280,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -291,6 +296,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -615,6 +625,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -956,6 +973,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1203,6 +1221,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/da_DK.po b/account_payment_order/i18n/da_DK.po index b348eee60a3..e7cccce34c2 100644 --- a/account_payment_order/i18n/da_DK.po +++ b/account_payment_order/i18n/da_DK.po @@ -281,6 +281,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -292,6 +297,11 @@ msgstr "Firma" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -618,6 +628,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -962,6 +979,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1209,6 +1227,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/de.po b/account_payment_order/i18n/de.po index bac4afce1d2..ee4d2568390 100644 --- a/account_payment_order/i18n/de.po +++ b/account_payment_order/i18n/de.po @@ -283,6 +283,11 @@ msgstr "Kommunikationsart" msgid "Communication is empty on payment line %s." msgstr "Kommunikation auf Zahlungszeile %s ist leer." +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -294,6 +299,11 @@ msgstr "Unternehmen" msgid "Company Bank Account" msgstr "Unternehmens Bankkonto" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -620,6 +630,13 @@ msgstr "Buchungssatz" msgid "Journal Item" msgstr "Buchungszeile" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -961,6 +978,7 @@ msgstr "Zahlungsauftrag Ok" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "Zahlungsaufträge" @@ -1209,6 +1227,13 @@ msgstr "Summe in Unternehmenswährung" msgid "Transactions" msgstr "Transaktionen" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/el_GR.po b/account_payment_order/i18n/el_GR.po index a6a0abc79f7..b830440299e 100644 --- a/account_payment_order/i18n/el_GR.po +++ b/account_payment_order/i18n/el_GR.po @@ -281,6 +281,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -292,6 +297,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -617,6 +627,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -958,6 +975,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1205,6 +1223,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/es.po b/account_payment_order/i18n/es.po index 3771ef263b4..0d2a0532825 100644 --- a/account_payment_order/i18n/es.po +++ b/account_payment_order/i18n/es.po @@ -295,6 +295,11 @@ msgstr "Tipo de comunicación" msgid "Communication is empty on payment line %s." msgstr "La comunicación está vacía en la línea de pago %s." +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -306,6 +311,11 @@ msgstr "Compañía" msgid "Company Bank Account" msgstr "Cuenta bancaria de la compañía" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -651,6 +661,13 @@ msgstr "Asiento Contable" msgid "Journal Item" msgstr "Apunte contable" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -996,6 +1013,7 @@ msgstr "Orden de Pago correcta" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "Órdenes de pago" @@ -1262,6 +1280,13 @@ msgstr "Total en moneda de la compañía" msgid "Transactions" msgstr "Transacciones" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/es_AR.po b/account_payment_order/i18n/es_AR.po index a312a47307b..7852bc206e7 100644 --- a/account_payment_order/i18n/es_AR.po +++ b/account_payment_order/i18n/es_AR.po @@ -283,6 +283,11 @@ msgstr "Tipo de Comunicación" msgid "Communication is empty on payment line %s." msgstr "La comunicación está vacía en la línea de pago %s." +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -294,6 +299,11 @@ msgstr "Compañía" msgid "Company Bank Account" msgstr "Cuenta bancaria de la compañía" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -639,6 +649,13 @@ msgstr "Asiento Contable" msgid "Journal Item" msgstr "Apunte Contable" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -980,6 +997,7 @@ msgstr "Orden de Pago correcta" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "Órdenes de pago" @@ -1234,6 +1252,13 @@ msgstr "Total en moneda de la compañía" msgid "Transactions" msgstr "Transacciones" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/es_CL.po b/account_payment_order/i18n/es_CL.po index 50f90c6a9e9..cf006288040 100644 --- a/account_payment_order/i18n/es_CL.po +++ b/account_payment_order/i18n/es_CL.po @@ -284,6 +284,11 @@ msgstr "Tipo de Glosa" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -295,6 +300,11 @@ msgstr "Empresa" msgid "Company Bank Account" msgstr "Cuenta Bancaria de Empresa" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -640,6 +650,13 @@ msgstr "Entrada de Diario" msgid "Journal Item" msgstr "Item de diario" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -981,6 +998,7 @@ msgstr "Pago de Nómina Ok" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "Pagos de Nómina" @@ -1234,6 +1252,13 @@ msgstr "Total en la moneda de la empresa" msgid "Transactions" msgstr "Transacciones" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/es_CR.po b/account_payment_order/i18n/es_CR.po index 69c5265bfe4..98e6ef13cdc 100644 --- a/account_payment_order/i18n/es_CR.po +++ b/account_payment_order/i18n/es_CR.po @@ -281,6 +281,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -292,6 +297,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -616,6 +626,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -957,6 +974,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1204,6 +1222,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/es_EC.po b/account_payment_order/i18n/es_EC.po index f1ff5630c75..9796fba772b 100644 --- a/account_payment_order/i18n/es_EC.po +++ b/account_payment_order/i18n/es_EC.po @@ -281,6 +281,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -292,6 +297,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -616,6 +626,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -957,6 +974,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1204,6 +1222,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/es_ES.po b/account_payment_order/i18n/es_ES.po index 0450464c3b8..510377a386a 100644 --- a/account_payment_order/i18n/es_ES.po +++ b/account_payment_order/i18n/es_ES.po @@ -281,6 +281,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -292,6 +297,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -616,6 +626,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -957,6 +974,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1204,6 +1222,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/es_MX.po b/account_payment_order/i18n/es_MX.po index c12c0ebaba7..109d4286d14 100644 --- a/account_payment_order/i18n/es_MX.po +++ b/account_payment_order/i18n/es_MX.po @@ -281,6 +281,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -292,6 +297,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -616,6 +626,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -957,6 +974,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1204,6 +1222,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/es_VE.po b/account_payment_order/i18n/es_VE.po index 25d1e093554..5ca456fb717 100644 --- a/account_payment_order/i18n/es_VE.po +++ b/account_payment_order/i18n/es_VE.po @@ -281,6 +281,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -292,6 +297,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -616,6 +626,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -957,6 +974,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1204,6 +1222,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/et.po b/account_payment_order/i18n/et.po index c70f3d59ac7..f1769431cbf 100644 --- a/account_payment_order/i18n/et.po +++ b/account_payment_order/i18n/et.po @@ -280,6 +280,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -291,6 +296,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -615,6 +625,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -956,6 +973,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1203,6 +1221,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/fi.po b/account_payment_order/i18n/fi.po index 0c16cc39daf..efa1d16fdfe 100644 --- a/account_payment_order/i18n/fi.po +++ b/account_payment_order/i18n/fi.po @@ -280,6 +280,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -291,6 +296,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -615,6 +625,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -956,6 +973,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1203,6 +1221,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/fr.po b/account_payment_order/i18n/fr.po index 926ca9a1922..ade54a6ad5a 100644 --- a/account_payment_order/i18n/fr.po +++ b/account_payment_order/i18n/fr.po @@ -296,6 +296,11 @@ msgstr "Type de communication" msgid "Communication is empty on payment line %s." msgstr "La communication est vide sur la ligne de paiement %s." +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -307,6 +312,11 @@ msgstr "Société" msgid "Company Bank Account" msgstr "Compte bancaire de la société" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -653,6 +663,13 @@ msgstr "Pièce comptable" msgid "Journal Item" msgstr "Écriture comptable" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -996,6 +1013,7 @@ msgstr "Ordre de paiement Ok" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "Ordres de paiement" @@ -1261,6 +1279,13 @@ msgstr "Total dans la devise de la société" msgid "Transactions" msgstr "Opérations" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/fr_FR.po b/account_payment_order/i18n/fr_FR.po index 4884dd4c692..19927a663ac 100644 --- a/account_payment_order/i18n/fr_FR.po +++ b/account_payment_order/i18n/fr_FR.po @@ -285,6 +285,11 @@ msgstr "Type de communication" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -296,6 +301,11 @@ msgstr "Société" msgid "Company Bank Account" msgstr "Compte bancaire de la société" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -642,6 +652,13 @@ msgstr "Ecriture" msgid "Journal Item" msgstr "Écriture comptable" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -983,6 +1000,7 @@ msgstr "Ordre de paiement OK" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "Ordre de paiements" @@ -1237,6 +1255,13 @@ msgstr "Total dans la devise de la société" msgid "Transactions" msgstr "Opérations" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/gl.po b/account_payment_order/i18n/gl.po index 429eb4c9529..00ad4c2f3cd 100644 --- a/account_payment_order/i18n/gl.po +++ b/account_payment_order/i18n/gl.po @@ -280,6 +280,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -291,6 +296,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -615,6 +625,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -956,6 +973,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1203,6 +1221,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/hr.po b/account_payment_order/i18n/hr.po index bf5778811ce..728cae60e2d 100644 --- a/account_payment_order/i18n/hr.po +++ b/account_payment_order/i18n/hr.po @@ -282,6 +282,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -293,6 +298,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -620,6 +630,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -966,6 +983,7 @@ msgstr "Nalog za plaćanje" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1214,6 +1232,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/it.po b/account_payment_order/i18n/it.po index 73414b6448b..d225e8ac948 100644 --- a/account_payment_order/i18n/it.po +++ b/account_payment_order/i18n/it.po @@ -281,6 +281,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -292,6 +297,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -617,6 +627,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -959,6 +976,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1206,6 +1224,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/lt.po b/account_payment_order/i18n/lt.po index 7ee9d45526a..2179c03cddf 100644 --- a/account_payment_order/i18n/lt.po +++ b/account_payment_order/i18n/lt.po @@ -281,6 +281,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -292,6 +297,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -616,6 +626,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -957,6 +974,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1204,6 +1222,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/nb_NO.po b/account_payment_order/i18n/nb_NO.po index da6de30ce26..e6b7245e946 100644 --- a/account_payment_order/i18n/nb_NO.po +++ b/account_payment_order/i18n/nb_NO.po @@ -284,6 +284,11 @@ msgstr "Kommunikasjonstype" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -295,6 +300,11 @@ msgstr "Firma" msgid "Company Bank Account" msgstr "Firmabankkonto" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -623,6 +633,13 @@ msgstr "" msgid "Journal Item" msgstr "Journalgjenstand" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -972,6 +989,7 @@ msgstr "Betalingsordre" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1221,6 +1239,13 @@ msgstr "" msgid "Transactions" msgstr "Transaksjoner" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/nl.po b/account_payment_order/i18n/nl.po index 1fcb52593a7..cfdb6b2bd0c 100644 --- a/account_payment_order/i18n/nl.po +++ b/account_payment_order/i18n/nl.po @@ -289,6 +289,11 @@ msgstr "Communicatie type" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -300,6 +305,11 @@ msgstr "Bedrijf" msgid "Company Bank Account" msgstr "Bankrekening bedrijf" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -638,6 +648,13 @@ msgstr "" msgid "Journal Item" msgstr "Boekingsregel" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -987,6 +1004,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "Uitgaande Betaalopdrachten" @@ -1235,6 +1253,13 @@ msgstr "Totaal in bedrijfsvaluta" msgid "Transactions" msgstr "Transacties" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/nl_BE.po b/account_payment_order/i18n/nl_BE.po index 0dbde901f89..d0b6b2952b9 100644 --- a/account_payment_order/i18n/nl_BE.po +++ b/account_payment_order/i18n/nl_BE.po @@ -281,6 +281,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -292,6 +297,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -616,6 +626,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -957,6 +974,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1204,6 +1222,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/nl_NL.po b/account_payment_order/i18n/nl_NL.po index 8bab5756a30..03156894a9b 100644 --- a/account_payment_order/i18n/nl_NL.po +++ b/account_payment_order/i18n/nl_NL.po @@ -281,6 +281,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -292,6 +297,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -617,6 +627,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -958,6 +975,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1205,6 +1223,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/pl.po b/account_payment_order/i18n/pl.po index c8c84fc3da9..27532808e1e 100644 --- a/account_payment_order/i18n/pl.po +++ b/account_payment_order/i18n/pl.po @@ -281,6 +281,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -292,6 +297,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -616,6 +626,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -957,6 +974,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1204,6 +1222,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/pt.po b/account_payment_order/i18n/pt.po index e231f8b26b0..045324c374e 100644 --- a/account_payment_order/i18n/pt.po +++ b/account_payment_order/i18n/pt.po @@ -280,6 +280,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -291,6 +296,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -615,6 +625,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -956,6 +973,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1203,6 +1221,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/pt_BR.po b/account_payment_order/i18n/pt_BR.po index b9e4e62739b..6e04e332bd1 100644 --- a/account_payment_order/i18n/pt_BR.po +++ b/account_payment_order/i18n/pt_BR.po @@ -281,6 +281,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -292,6 +297,11 @@ msgstr "Empresa" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -620,6 +630,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -966,6 +983,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "Ordens de Pagamento" @@ -1214,6 +1232,13 @@ msgstr "Total na moeda da empresa" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/pt_PT.po b/account_payment_order/i18n/pt_PT.po index c5804a85e6e..a6db9cfa1fb 100644 --- a/account_payment_order/i18n/pt_PT.po +++ b/account_payment_order/i18n/pt_PT.po @@ -281,6 +281,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -292,6 +297,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -616,6 +626,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -957,6 +974,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1204,6 +1222,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/ro.po b/account_payment_order/i18n/ro.po index 63f513b65a9..e37118e444c 100644 --- a/account_payment_order/i18n/ro.po +++ b/account_payment_order/i18n/ro.po @@ -281,6 +281,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -292,6 +297,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -616,6 +626,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -957,6 +974,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1204,6 +1222,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/ru.po b/account_payment_order/i18n/ru.po index 27c77b009aa..c2275dab621 100644 --- a/account_payment_order/i18n/ru.po +++ b/account_payment_order/i18n/ru.po @@ -282,6 +282,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -293,6 +298,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -617,6 +627,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -958,6 +975,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1205,6 +1223,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/sl.po b/account_payment_order/i18n/sl.po index 8a0ddbcdb24..b768e3fde73 100644 --- a/account_payment_order/i18n/sl.po +++ b/account_payment_order/i18n/sl.po @@ -282,6 +282,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -293,6 +298,11 @@ msgstr "Družba" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -621,6 +631,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -967,6 +984,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "Plačilni nalogi" @@ -1215,6 +1233,13 @@ msgstr "Skupaj v valuti družbe" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/sv.po b/account_payment_order/i18n/sv.po index e32c8264d60..9661239452a 100644 --- a/account_payment_order/i18n/sv.po +++ b/account_payment_order/i18n/sv.po @@ -280,6 +280,11 @@ msgstr "Kommunikationstyp" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -291,6 +296,11 @@ msgstr "Bolag" msgid "Company Bank Account" msgstr "Bolagets bankkonto" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -615,6 +625,13 @@ msgstr "Verifikat" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -956,6 +973,7 @@ msgstr "Betalningsorder ok" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "Betalningsordrar" @@ -1203,6 +1221,13 @@ msgstr "" msgid "Transactions" msgstr "Transaktioner" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/th.po b/account_payment_order/i18n/th.po index b4c8aaf417c..4472ab0e92c 100644 --- a/account_payment_order/i18n/th.po +++ b/account_payment_order/i18n/th.po @@ -280,6 +280,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -291,6 +296,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -615,6 +625,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -956,6 +973,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1203,6 +1221,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/tr.po b/account_payment_order/i18n/tr.po index b4a45b4b2fd..980a974165b 100644 --- a/account_payment_order/i18n/tr.po +++ b/account_payment_order/i18n/tr.po @@ -280,6 +280,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -291,6 +296,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -615,6 +625,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -956,6 +973,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1203,6 +1221,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type diff --git a/account_payment_order/i18n/vi.po b/account_payment_order/i18n/vi.po index f87cf77ae9f..6a0c4404f7b 100644 --- a/account_payment_order/i18n/vi.po +++ b/account_payment_order/i18n/vi.po @@ -280,6 +280,11 @@ msgstr "" msgid "Communication is empty on payment line %s." msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_company +msgid "Companies" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line__company_id #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_order__company_id @@ -291,6 +296,11 @@ msgstr "" msgid "Company Bank Account" msgstr "" +#. module: account_payment_order +#: model:ir.model,name:account_payment_order.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: account_payment_order #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_form msgid "Confirm Payments" @@ -615,6 +625,13 @@ msgstr "" msgid "Journal Item" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,help:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,help:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Journal to write payment entries when confirming payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__journal_ids #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_journal_ids @@ -956,6 +973,7 @@ msgstr "" #: model:ir.ui.menu,name:account_payment_order.account_payment_order_outbound_menu #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_graph #: model_terms:ir.ui.view,arch_db:account_payment_order.account_payment_order_pivot +#: model_terms:ir.ui.view,arch_db:account_payment_order.res_config_settings_view_form msgid "Payment Orders" msgstr "" @@ -1203,6 +1221,13 @@ msgstr "" msgid "Transactions" msgstr "" +#. module: account_payment_order +#: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_company__transfer_journal_id +#: model:ir.model.fields,field_description:account_payment_order.field_res_config_settings__transfer_journal_id +msgid "Transfer journal on payment/debit orders" +msgstr "" + #. module: account_payment_order #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_line_create__date_type #: model:ir.model.fields,field_description:account_payment_order.field_account_payment_mode__default_date_type From f3ea61970ff7192feaa009548784872f3763c2e8 Mon Sep 17 00:00:00 2001 From: Weblate Date: Fri, 19 Apr 2024 14:57:15 +0000 Subject: [PATCH 080/115] Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Translation: bank-payment-16.0/bank-payment-16.0-account_banking_sepa_direct_debit Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_banking_sepa_direct_debit/ --- account_banking_sepa_direct_debit/i18n/de.po | 2 +- account_banking_sepa_direct_debit/i18n/es.po | 2 +- account_banking_sepa_direct_debit/i18n/es_AR.po | 2 +- account_banking_sepa_direct_debit/i18n/fr.po | 2 +- account_banking_sepa_direct_debit/i18n/hr.po | 2 +- account_banking_sepa_direct_debit/i18n/it.po | 2 +- account_banking_sepa_direct_debit/i18n/nb_NO.po | 2 +- account_banking_sepa_direct_debit/i18n/nl.po | 2 +- account_banking_sepa_direct_debit/i18n/pt_BR.po | 2 +- account_banking_sepa_direct_debit/i18n/sl.po | 2 +- 10 files changed, 10 insertions(+), 10 deletions(-) diff --git a/account_banking_sepa_direct_debit/i18n/de.po b/account_banking_sepa_direct_debit/i18n/de.po index 57004b0af73..6bb3d96957f 100644 --- a/account_banking_sepa_direct_debit/i18n/de.po +++ b/account_banking_sepa_direct_debit/i18n/de.po @@ -498,7 +498,7 @@ msgid "Unique Mandate Reference" msgstr "Referenz des Mandanten:" #. module: account_banking_sepa_direct_debit -#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.res_config_settings_view_form msgid "Write the ICS of your company" msgstr "" diff --git a/account_banking_sepa_direct_debit/i18n/es.po b/account_banking_sepa_direct_debit/i18n/es.po index c86fb57a7a5..e348b9a16d8 100644 --- a/account_banking_sepa_direct_debit/i18n/es.po +++ b/account_banking_sepa_direct_debit/i18n/es.po @@ -556,7 +556,7 @@ msgid "Unique Mandate Reference" msgstr "Referencia única del mandato" #. module: account_banking_sepa_direct_debit -#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.res_config_settings_view_form msgid "Write the ICS of your company" msgstr "Escriba el IAS de su compañía" diff --git a/account_banking_sepa_direct_debit/i18n/es_AR.po b/account_banking_sepa_direct_debit/i18n/es_AR.po index 2261e689454..08605f81d00 100644 --- a/account_banking_sepa_direct_debit/i18n/es_AR.po +++ b/account_banking_sepa_direct_debit/i18n/es_AR.po @@ -545,7 +545,7 @@ msgid "Unique Mandate Reference" msgstr "Referencia Única de Mandato" #. module: account_banking_sepa_direct_debit -#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.res_config_settings_view_form msgid "Write the ICS of your company" msgstr "Escriba el IAS de su compañía" diff --git a/account_banking_sepa_direct_debit/i18n/fr.po b/account_banking_sepa_direct_debit/i18n/fr.po index 523417c2d52..79423a203cd 100644 --- a/account_banking_sepa_direct_debit/i18n/fr.po +++ b/account_banking_sepa_direct_debit/i18n/fr.po @@ -552,7 +552,7 @@ msgid "Unique Mandate Reference" msgstr "Référence de mandat unique" #. module: account_banking_sepa_direct_debit -#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.res_config_settings_view_form msgid "Write the ICS of your company" msgstr "Saisir l'ICS de votre société" diff --git a/account_banking_sepa_direct_debit/i18n/hr.po b/account_banking_sepa_direct_debit/i18n/hr.po index 0007d4801e5..ebf484ccec1 100644 --- a/account_banking_sepa_direct_debit/i18n/hr.po +++ b/account_banking_sepa_direct_debit/i18n/hr.po @@ -497,7 +497,7 @@ msgid "Unique Mandate Reference" msgstr "" #. module: account_banking_sepa_direct_debit -#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.res_config_settings_view_form msgid "Write the ICS of your company" msgstr "" diff --git a/account_banking_sepa_direct_debit/i18n/it.po b/account_banking_sepa_direct_debit/i18n/it.po index 48637a35eed..e21c0680471 100644 --- a/account_banking_sepa_direct_debit/i18n/it.po +++ b/account_banking_sepa_direct_debit/i18n/it.po @@ -493,7 +493,7 @@ msgid "Unique Mandate Reference" msgstr "" #. module: account_banking_sepa_direct_debit -#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.res_config_settings_view_form msgid "Write the ICS of your company" msgstr "" diff --git a/account_banking_sepa_direct_debit/i18n/nb_NO.po b/account_banking_sepa_direct_debit/i18n/nb_NO.po index 04e365f0be7..6521482c051 100644 --- a/account_banking_sepa_direct_debit/i18n/nb_NO.po +++ b/account_banking_sepa_direct_debit/i18n/nb_NO.po @@ -497,7 +497,7 @@ msgid "Unique Mandate Reference" msgstr "" #. module: account_banking_sepa_direct_debit -#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.res_config_settings_view_form msgid "Write the ICS of your company" msgstr "" diff --git a/account_banking_sepa_direct_debit/i18n/nl.po b/account_banking_sepa_direct_debit/i18n/nl.po index 1e0c3b1bee7..bdbd89a5454 100644 --- a/account_banking_sepa_direct_debit/i18n/nl.po +++ b/account_banking_sepa_direct_debit/i18n/nl.po @@ -544,7 +544,7 @@ msgid "Unique Mandate Reference" msgstr "Unieke machtigings Referentie:" #. module: account_banking_sepa_direct_debit -#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.res_config_settings_view_form msgid "Write the ICS of your company" msgstr "Vul hier de ICS van uw bedrijf in" diff --git a/account_banking_sepa_direct_debit/i18n/pt_BR.po b/account_banking_sepa_direct_debit/i18n/pt_BR.po index 0c7f48aa618..2b2b7266242 100644 --- a/account_banking_sepa_direct_debit/i18n/pt_BR.po +++ b/account_banking_sepa_direct_debit/i18n/pt_BR.po @@ -497,7 +497,7 @@ msgid "Unique Mandate Reference" msgstr "" #. module: account_banking_sepa_direct_debit -#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.res_config_settings_view_form msgid "Write the ICS of your company" msgstr "" diff --git a/account_banking_sepa_direct_debit/i18n/sl.po b/account_banking_sepa_direct_debit/i18n/sl.po index ad170e9f029..8157a6667db 100644 --- a/account_banking_sepa_direct_debit/i18n/sl.po +++ b/account_banking_sepa_direct_debit/i18n/sl.po @@ -546,7 +546,7 @@ msgid "Unique Mandate Reference" msgstr "" #. module: account_banking_sepa_direct_debit -#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_account_config_settings +#: model_terms:ir.ui.view,arch_db:account_banking_sepa_direct_debit.res_config_settings_view_form msgid "Write the ICS of your company" msgstr "" From d05aba74c28965d1868bda91058ee783d9fa37a7 Mon Sep 17 00:00:00 2001 From: Luc De Meyer Date: Fri, 23 Jun 2023 21:37:00 +0200 Subject: [PATCH 081/115] [IMP] update payment reference on open payment order This commits adds the possibility to update the payment reference on a payment transaction before generating XML file. --- account_payment_order/README.rst | 2 +- account_payment_order/__manifest__.py | 1 + .../models/account_payment.py | 21 ++++++++++++- .../security/ir.model.access.csv | 1 + .../static/description/index.html | 3 +- .../views/account_payment_views.xml | 8 +++++ account_payment_order/wizard/__init__.py | 1 + .../wizard/account_payment_update.py | 16 ++++++++++ .../wizard/account_payment_update_views.xml | 30 +++++++++++++++++++ 9 files changed, 80 insertions(+), 3 deletions(-) create mode 100644 account_payment_order/wizard/account_payment_update.py create mode 100644 account_payment_order/wizard/account_payment_update_views.xml diff --git a/account_payment_order/README.rst b/account_payment_order/README.rst index fe9f25a974a..1a309adc9c1 100644 --- a/account_payment_order/README.rst +++ b/account_payment_order/README.rst @@ -7,7 +7,7 @@ Account Payment Order !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:7770aeb8f31eacf1b549225db47abcb160f8c5324d0a12eb9e828a6e843b0b45 + !! source digest: sha256:4fd043df58062557f068abf08f254c3a17a70a13d803604022782b977cd8c337 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Mature-brightgreen.png diff --git a/account_payment_order/__manifest__.py b/account_payment_order/__manifest__.py index c507a709b7c..f76c9695d1c 100644 --- a/account_payment_order/__manifest__.py +++ b/account_payment_order/__manifest__.py @@ -26,6 +26,7 @@ "security/ir.model.access.csv", "wizard/account_payment_line_create_view.xml", "wizard/account_invoice_payment_line_multi_view.xml", + "wizard/account_payment_update_views.xml", "views/account_payment_mode.xml", "views/account_payment_views.xml", "views/account_payment_order.xml", diff --git a/account_payment_order/models/account_payment.py b/account_payment_order/models/account_payment.py index 45075eb2d6d..84d8b212e61 100644 --- a/account_payment_order/models/account_payment.py +++ b/account_payment_order/models/account_payment.py @@ -1,8 +1,9 @@ # Copyright 2019 ACSONE SA/NV # Copyright 2022 Tecnativa - Pedro M. Baeza +# Copyright 2023 Noviat # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). -from odoo import api, fields, models +from odoo import _, api, fields, models class AccountPayment(models.Model): @@ -10,6 +11,9 @@ class AccountPayment(models.Model): payment_order_id = fields.Many2one(comodel_name="account.payment.order") payment_line_ids = fields.Many2many(comodel_name="account.payment.line") + order_state = fields.Selection( + related="payment_order_id.state", string="Payment Order State" + ) @api.depends("payment_type", "journal_id") def _compute_payment_method_line_fields(self): @@ -48,3 +52,18 @@ def _check_payment_method_line_id(self): else: super(AccountPayment, pay)._check_payment_method_line_id() return + + def update_payment_reference(self): + view = self.env.ref("account_payment_order.account_payment_update_view_form") + return { + "name": _("Update Payment Reference"), + "view_type": "form", + "view_mode": "form", + "res_model": "account.payment.update", + "view_id": view.id, + "target": "new", + "type": "ir.actions.act_window", + "context": dict( + self.env.context, default_payment_reference=self.payment_reference + ), + } diff --git a/account_payment_order/security/ir.model.access.csv b/account_payment_order/security/ir.model.access.csv index d23d69ab9f6..2a50d11706d 100644 --- a/account_payment_order/security/ir.model.access.csv +++ b/account_payment_order/security/ir.model.access.csv @@ -6,3 +6,4 @@ base.access_res_partner_bank_group_partner_manager,Full access on res.partner.ba base.access_res_bank_group_partner_manager,Full access on res.bank to Account Payment group,base.model_res_bank,group_account_payment,1,1,1,1 access_account_payment_line_create,access_account_payment_line_create,model_account_payment_line_create,group_account_payment,1,1,1,1 access_account_invoice_payment_line_multi,access_account_invoice_payment_line_multi,model_account_invoice_payment_line_multi,group_account_payment,1,1,1,1 +access_account_payment_update,access_account_payment_update,model_account_payment_update,group_account_payment,1,1,1,1 diff --git a/account_payment_order/static/description/index.html b/account_payment_order/static/description/index.html index 6ecf21f28a9..6c48b76c1be 100644 --- a/account_payment_order/static/description/index.html +++ b/account_payment_order/static/description/index.html @@ -1,3 +1,4 @@ + @@ -366,7 +367,7 @@

Account Payment Order

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:7770aeb8f31eacf1b549225db47abcb160f8c5324d0a12eb9e828a6e843b0b45 +!! source digest: sha256:4fd043df58062557f068abf08f254c3a17a70a13d803604022782b977cd8c337 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

Mature License: AGPL-3 OCA/bank-payment Translate me on Weblate Try me on Runboat

This module adds support for payment orders and debit orders.

diff --git a/account_payment_order/views/account_payment_views.xml b/account_payment_order/views/account_payment_views.xml index 8dd2d67c188..0e338d2a8e6 100644 --- a/account_payment_order/views/account_payment_views.xml +++ b/account_payment_order/views/account_payment_views.xml @@ -8,6 +8,14 @@ + +
From e9e6ca0a915efdbc16e2db4608c5861ba5c1757b Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Tue, 7 May 2024 10:26:50 +0000 Subject: [PATCH 113/115] [BOT] post-merge updates --- README.md | 2 +- account_banking_sepa_direct_debit/README.rst | 2 +- account_banking_sepa_direct_debit/__manifest__.py | 2 +- account_banking_sepa_direct_debit/static/description/index.html | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index b97057eff0b..f5971ee76fa 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ addon | version | maintainers | summary [account_banking_mandate_sale_contact](account_banking_mandate_sale_contact/) | 16.0.1.0.1 | [![tisho99](https://github.com/tisho99.png?size=30px)](https://github.com/tisho99) | Add a specific contact mandate to sale orders [account_banking_pain_base](account_banking_pain_base/) | 16.0.1.2.0 | | Base module for PAIN file generation [account_banking_sepa_credit_transfer](account_banking_sepa_credit_transfer/) | 16.0.1.1.1 | | Create SEPA XML files for Credit Transfers -[account_banking_sepa_direct_debit](account_banking_sepa_direct_debit/) | 16.0.1.3.0 | | Create SEPA files for Direct Debit +[account_banking_sepa_direct_debit](account_banking_sepa_direct_debit/) | 16.0.1.4.0 | | Create SEPA files for Direct Debit [account_payment_method_fs_storage](account_payment_method_fs_storage/) | 16.0.1.0.2 | | Add the possibility to specify on the payment method, a storage where files generated will be pushed to upon payment [account_payment_mode](account_payment_mode/) | 16.0.1.2.0 | | Account Payment Mode [account_payment_order](account_payment_order/) | 16.0.1.9.1 | | Account Payment Order diff --git a/account_banking_sepa_direct_debit/README.rst b/account_banking_sepa_direct_debit/README.rst index 7858e7a47f0..d18b4059dfd 100644 --- a/account_banking_sepa_direct_debit/README.rst +++ b/account_banking_sepa_direct_debit/README.rst @@ -7,7 +7,7 @@ Account Banking SEPA Direct Debit !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:1e8b52e7e0251e8940335e73a25767ae9fdf9a37a0d3bbb9abacab7b9b5118ce + !! source digest: sha256:c35bae78e26dfea30cb48cd8d7f23ac462577f96612ff3c068ee3996e491b691 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png diff --git a/account_banking_sepa_direct_debit/__manifest__.py b/account_banking_sepa_direct_debit/__manifest__.py index 913a71ff4a3..8801e49f0ae 100644 --- a/account_banking_sepa_direct_debit/__manifest__.py +++ b/account_banking_sepa_direct_debit/__manifest__.py @@ -7,7 +7,7 @@ { "name": "Account Banking SEPA Direct Debit", "summary": "Create SEPA files for Direct Debit", - "version": "16.0.1.3.0", + "version": "16.0.1.4.0", "license": "AGPL-3", "author": "Akretion, Tecnativa, Odoo Community Association (OCA)", "website": "https://github.com/OCA/bank-payment", diff --git a/account_banking_sepa_direct_debit/static/description/index.html b/account_banking_sepa_direct_debit/static/description/index.html index 70594b01f84..de62f23a4b8 100644 --- a/account_banking_sepa_direct_debit/static/description/index.html +++ b/account_banking_sepa_direct_debit/static/description/index.html @@ -366,7 +366,7 @@

Account Banking SEPA Direct Debit

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:1e8b52e7e0251e8940335e73a25767ae9fdf9a37a0d3bbb9abacab7b9b5118ce +!! source digest: sha256:c35bae78e26dfea30cb48cd8d7f23ac462577f96612ff3c068ee3996e491b691 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

Beta License: AGPL-3 OCA/bank-payment Translate me on Weblate Try me on Runboat

Create SEPA files for Direct Debit

From 4d5d9ec8436cfe015e97d5cd95f22e7d0f5622c5 Mon Sep 17 00:00:00 2001 From: Alexis de Lattre Date: Tue, 7 Nov 2023 16:12:37 +0100 Subject: [PATCH 114/115] Large refactoring/improvement/cleanup of OCA/bank-payment NEW FEATURES - activate 'in_payment' payment_state on invoices... at last ! - payment order numbering: add ability to have a sequence specific to a particular payment mode (optional) - add show account number policy "first_last" to show N first and N last characters of bank account number SMALL IMPROVEMENTS - account.payment.method: rename field "payment_order_only" to "payment_order_ok" for naming consistency with the field of account.payment.mode. Auto-set "payment_order_ok" of payment mode from the equivalent field of payment method. Migration scripts provided for account.payment.method and the data of SEPA credit transfer and SEPA direct debit. - payment order attachment: add M2O payment_file_id that points to the payment file. No more need for a simplified attachment form view. - keep the spaces in the scrambled bank account number, so that the user easily understands that it is a "scrambled" bank account number - add field acc_number_scrambled on res.partner.bank for easy and direct use of scrambled account number SIMPLIFICATION / CODE CLEANUP - remove field partner_bank_id on account.move.line - move code for scrambled account number from qweb report to res.partner.bank class - remove boolean field show_bank_account_from_journal from account.payment.mode: we now consider that this option is always true i.e. when account_payment_partner is installed, Odoo takes the bank accounts to display on the customer invoice from the payment mode (if the payment mode is empty, it displays all the bank accounts of the company). As a consequence, hide partner_bank_id on customer invoice form view. - remove fields inbound_payment_order_only and outbound_payment_order_only from account.journal : these 2 fields were not used! - add check_company=True where it was missing and remove code of constraint that checks company consistency - re-organise form view of payment order to equilibrate between left column and right column TECHNICAL: - replace @api.onchange by computed readonly=False store=True fields - remove (or reduce) the use of demo data in tests - speed-up tests by using tracking_disable=True - Replace (6, 0, []) and (0, 0, {}) by Command.set() and Command.create() - add sql unicity constraint on payment order number per company --- .../tests/test_invoice_mandate.py | 23 +-- account_banking_mandate/tests/test_mandate.py | 33 +++- .../views/account_payment_line.xml | 4 +- .../views/account_payment_method.xml | 2 +- .../README.rst | 2 +- .../__manifest__.py | 2 +- .../data/account_payment_method.xml | 1 + .../migrations/16.0.1.2.0/post-migration.py | 11 ++ .../static/description/index.html | 2 +- .../tests/test_sct.py | 170 ++++++++++-------- .../data/account_payment_method.xml | 1 + .../migrations/16.0.1.2.0/post-migration.py | 11 ++ .../tests/test_mandate.py | 16 +- .../tests/test_sdd.py | 155 ++++++++-------- .../models/account_journal.py | 41 +---- .../models/account_payment_mode.py | 13 +- .../tests/test_account_payment_mode.py | 12 +- .../views/account_payment_method.xml | 6 + account_payment_order/README.rst | 5 - account_payment_order/__manifest__.py | 3 +- account_payment_order/demo/payment_demo.xml | 20 --- .../migrations/16.0.2.0.0/pre-migration.py | 13 ++ account_payment_order/models/__init__.py | 1 - .../models/account_journal.py | 33 ---- account_payment_order/models/account_move.py | 6 + .../models/account_move_line.py | 32 +--- .../models/account_payment.py | 2 +- .../models/account_payment_line.py | 104 +++++++---- .../models/account_payment_method.py | 8 +- .../models/account_payment_mode.py | 71 +++++--- .../models/account_payment_order.py | 142 +++++++++------ account_payment_order/models/res_bank.py | 3 - .../tests/test_payment_mode.py | 15 +- .../tests/test_payment_order_inbound.py | 12 +- .../tests/test_payment_order_outbound.py | 34 ++-- .../views/account_move_line.xml | 13 -- .../views/account_payment_line.xml | 15 +- .../views/account_payment_method.xml | 15 +- .../views/account_payment_mode.xml | 4 + .../views/account_payment_order.xml | 45 ++--- account_payment_order/views/ir_attachment.xml | 33 ---- .../wizard/account_payment_line_create.py | 24 ++- .../account_payment_line_create_view.xml | 1 + account_payment_partner/models/__init__.py | 6 +- .../models/account_move.py | 28 ++- .../models/account_payment_mode.py | 59 ++---- .../models/res_partner_bank.py | 64 +++++++ .../reports/account_invoice_report.py | 1 - .../reports/account_invoice_report_view.xml | 2 +- .../tests/test_account_payment_partner.py | 101 +++++++---- .../views/account_move_view.xml | 7 + .../views/account_payment_mode.xml | 6 +- .../views/report_invoice.xml | 16 +- 53 files changed, 772 insertions(+), 677 deletions(-) create mode 100644 account_banking_sepa_credit_transfer/migrations/16.0.1.2.0/post-migration.py create mode 100644 account_banking_sepa_direct_debit/migrations/16.0.1.2.0/post-migration.py create mode 100644 account_payment_order/migrations/16.0.2.0.0/pre-migration.py delete mode 100644 account_payment_order/models/account_journal.py delete mode 100644 account_payment_order/views/ir_attachment.xml create mode 100644 account_payment_partner/models/res_partner_bank.py diff --git a/account_banking_mandate/tests/test_invoice_mandate.py b/account_banking_mandate/tests/test_invoice_mandate.py index e29058f488e..9888f3edcb8 100644 --- a/account_banking_mandate/tests/test_invoice_mandate.py +++ b/account_banking_mandate/tests/test_invoice_mandate.py @@ -3,7 +3,7 @@ from unittest.mock import patch -from odoo import fields +from odoo import Command, fields from odoo.exceptions import UserError from odoo.tests.common import TransactionCase @@ -28,7 +28,6 @@ def test_post_invoice_01(self): payment_order = self.env["account.payment.order"].search([]) self.assertEqual(len(payment_order.ids), 1) - payment_order.payment_mode_id_change() payment_order.draft2open() payment_order.open2generated() payment_order.generated2uploaded() @@ -272,18 +271,12 @@ def setUp(self): .id ) - invoice_vals = [ - ( - 0, - 0, - { - "product_id": self.env.ref("product.product_product_4").id, - "quantity": 1.0, - "account_id": invoice_line_account, - "price_unit": 200.00, - }, - ) - ] + line_vals = { + "product_id": self.env.ref("product.product_product_4").id, + "quantity": 1.0, + "account_id": invoice_line_account, + "price_unit": 200.00, + } self.invoice = self.env["account.move"].create( { @@ -296,7 +289,7 @@ def setUp(self): limit=1, ) .id, - "invoice_line_ids": invoice_vals, + "invoice_line_ids": [Command.create(line_vals)], } ) diff --git a/account_banking_mandate/tests/test_mandate.py b/account_banking_mandate/tests/test_mandate.py index 4862738da92..740d10f84c8 100644 --- a/account_banking_mandate/tests/test_mandate.py +++ b/account_banking_mandate/tests/test_mandate.py @@ -3,7 +3,7 @@ from datetime import timedelta -from odoo import fields +from odoo import Command, fields from odoo.exceptions import UserError, ValidationError from odoo.tests.common import TransactionCase @@ -11,11 +11,21 @@ class TestMandate(TransactionCase): def setUp(self): super(TestMandate, self).setUp() - self.company = self.env.company + self.company = self.env.ref("base.main_company") self.company_2 = self.env["res.company"].create({"name": "company 2"}) self.company_2.partner_id.company_id = self.company_2.id - self.bank_account = self.env.ref("account_payment_mode.res_partner_12_iban") - self.bank_account.partner_id.company_id = self.company.id + self.partner = self.env["res.partner"].create( + { + "name": "My little company Sprl", + "company_id": self.company.id, + } + ) + self.bank_account = self.env["res.partner.bank"].create( + { + "acc_number": "FR382222 3333 4444 5555 6666 999", + "partner_id": self.partner.id, + } + ) self.mandate = self.env["account.banking.mandate"].create( { "partner_bank_id": self.bank_account.id, @@ -49,7 +59,18 @@ def test_mandate_04(self): self.mandate.cancel() def test_onchange_methods(self): - bank_account_2 = self.env.ref("account_payment_mode.res_partner_2_iban") + partner_2 = self.env["res.partner"].create( + { + "name": "Big company Sprl", + "company_id": self.company.id, + } + ) + bank_account_2 = self.env["res.partner.bank"].create( + { + "acc_number": "FR621111 9999 8888 5555 6666 777", + "partner_id": partner_2.id, + } + ) self.mandate.partner_bank_id = bank_account_2 self.mandate.mandate_partner_bank_change() self.assertEqual(self.mandate.partner_id, bank_account_2.partner_id) @@ -89,7 +110,7 @@ def test_constrains_04(self): } ) with self.assertRaises(UserError): - bank_account.write({"mandate_ids": [(6, 0, mandate.ids)]}) + bank_account.write({"mandate_ids": [Command.set(mandate.ids)]}) def test_mandate_reference_01(self): """ diff --git a/account_banking_pain_base/views/account_payment_line.xml b/account_banking_pain_base/views/account_payment_line.xml index 4e3eecce73d..918050524a7 100644 --- a/account_banking_pain_base/views/account_payment_line.xml +++ b/account_banking_pain_base/views/account_payment_line.xml @@ -12,12 +12,12 @@ ref="account_payment_order.account_payment_line_form" /> - + - + diff --git a/account_banking_pain_base/views/account_payment_method.xml b/account_banking_pain_base/views/account_payment_method.xml index de0fd012732..8e5a96dc1e7 100644 --- a/account_banking_pain_base/views/account_payment_method.xml +++ b/account_banking_pain_base/views/account_payment_method.xml @@ -31,7 +31,7 @@ /> - + diff --git a/account_banking_sepa_credit_transfer/README.rst b/account_banking_sepa_credit_transfer/README.rst index d47613d3de0..011ee20fb16 100644 --- a/account_banking_sepa_credit_transfer/README.rst +++ b/account_banking_sepa_credit_transfer/README.rst @@ -7,7 +7,7 @@ Account Banking SEPA Credit Transfer !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:de3431182a8b8f2d587c202d38f93e1f876ba55768f9757cdd43706572016833 + !! source digest: sha256:878d17b3c481de2b2ad7c8a65ae30413e242ed5cc0877ee4146a13095fd1dcf7 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png diff --git a/account_banking_sepa_credit_transfer/__manifest__.py b/account_banking_sepa_credit_transfer/__manifest__.py index 249cd883593..baf075cfd58 100644 --- a/account_banking_sepa_credit_transfer/__manifest__.py +++ b/account_banking_sepa_credit_transfer/__manifest__.py @@ -6,7 +6,7 @@ { "name": "Account Banking SEPA Credit Transfer", "summary": "Create SEPA XML files for Credit Transfers", - "version": "16.0.1.1.1", + "version": "16.0.1.2.0", "license": "AGPL-3", "author": "Akretion, Tecnativa, Odoo Community Association (OCA)", "website": "https://github.com/OCA/bank-payment", diff --git a/account_banking_sepa_credit_transfer/data/account_payment_method.xml b/account_banking_sepa_credit_transfer/data/account_payment_method.xml index 2d16c170a02..b8016e67cf5 100644 --- a/account_banking_sepa_credit_transfer/data/account_payment_method.xml +++ b/account_banking_sepa_credit_transfer/data/account_payment_method.xml @@ -4,6 +4,7 @@ SEPA Credit Transfer to suppliers sepa_credit_transfer outbound + pain.001.001.03 diff --git a/account_banking_sepa_credit_transfer/migrations/16.0.1.2.0/post-migration.py b/account_banking_sepa_credit_transfer/migrations/16.0.1.2.0/post-migration.py new file mode 100644 index 00000000000..bf98ae8f033 --- /dev/null +++ b/account_banking_sepa_credit_transfer/migrations/16.0.1.2.0/post-migration.py @@ -0,0 +1,11 @@ +# Copyright 2023 Akretion France (http://www.akretion.com/) +# @author: Alexis de Lattre +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + sct_method = env.ref("account_banking_sepa_credit_transfer.sepa_credit_transfer") + sct_method.write({"payment_order_ok": True}) diff --git a/account_banking_sepa_credit_transfer/static/description/index.html b/account_banking_sepa_credit_transfer/static/description/index.html index 024ce2ad3fc..2031f53b190 100644 --- a/account_banking_sepa_credit_transfer/static/description/index.html +++ b/account_banking_sepa_credit_transfer/static/description/index.html @@ -367,7 +367,7 @@

Account Banking SEPA Credit Transfer

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:de3431182a8b8f2d587c202d38f93e1f876ba55768f9757cdd43706572016833 +!! source digest: sha256:878d17b3c481de2b2ad7c8a65ae30413e242ed5cc0877ee4146a13095fd1dcf7 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

Beta License: AGPL-3 OCA/bank-payment Translate me on Weblate Try me on Runboat

Module to export payment orders in SEPA XML file format.

diff --git a/account_banking_sepa_credit_transfer/tests/test_sct.py b/account_banking_sepa_credit_transfer/tests/test_sct.py index 413dc9137d2..8096c703f26 100644 --- a/account_banking_sepa_credit_transfer/tests/test_sct.py +++ b/account_banking_sepa_credit_transfer/tests/test_sct.py @@ -8,6 +8,7 @@ from lxml import etree +from odoo import Command from odoo.exceptions import UserError from odoo.tests.common import TransactionCase @@ -16,18 +17,16 @@ class TestSCT(TransactionCase): @classmethod def setUpClass(cls): super().setUpClass() + cls.env = cls.env(context=dict(cls.env.context, tracking_disable=True)) cls.account_model = cls.env["account.account"] cls.move_model = cls.env["account.move"] cls.journal_model = cls.env["account.journal"] cls.payment_order_model = cls.env["account.payment.order"] cls.payment_line_model = cls.env["account.payment.line"] + cls.partner_model = cls.env["res.partner"] cls.partner_bank_model = cls.env["res.partner.bank"] - cls.attachment_model = cls.env["ir.attachment"] cls.invoice_model = cls.env["account.move"] cls.invoice_line_model = cls.env["account.move.line"] - cls.partner_agrolait = cls.env.ref("base.res_partner_2") - cls.partner_asus = cls.env.ref("base.res_partner_1") - cls.partner_c2c = cls.env.ref("base.res_partner_12") cls.eur_currency = cls.env.ref("base.EUR") cls.eur_currency.active = True cls.usd_currency = cls.env.ref("base.USD") @@ -35,15 +34,42 @@ def setUpClass(cls): cls.main_company = cls.env["res.company"].create( {"name": "Test EUR company", "currency_id": cls.eur_currency.id} ) - cls.partner_agrolait.company_id = cls.main_company.id - cls.partner_asus.company_id = cls.main_company.id - cls.partner_c2c.company_id = cls.main_company.id - cls.env.user.write( + cls.partner1 = cls.partner_model.create( { - "company_ids": [(6, 0, cls.main_company.ids)], + "name": "P1", "company_id": cls.main_company.id, } ) + cls.partner1_bank = cls.partner_bank_model.create( + { + "acc_number": "FR731111 9999 8888 5555 9999 111", + "partner_id": cls.partner1.id, + } + ) + cls.partner2 = cls.partner_model.create( + { + "name": "P2", + "company_id": cls.main_company.id, + } + ) + cls.partner2_bank = cls.partner_bank_model.create( + { + "acc_number": "FR831111 9999 8888 5555 9999 222", + "partner_id": cls.partner2.id, + } + ) + cls.partner3 = cls.partner_model.create( + { + "name": "P3", + "company_id": cls.main_company.id, + } + ) + cls.partner3_bank = cls.partner_bank_model.create( + { + "acc_number": "FR931111 9999 8888 5555 9999 333", + "partner_id": cls.partner3.id, + } + ) cls.account_expense = cls.account_model.create( { "account_type": "expense", @@ -60,7 +86,7 @@ def setUpClass(cls): "code": "TP.1", } ) - (cls.partner_asus + cls.partner_c2c + cls.partner_agrolait).with_company( + (cls.partner1 + cls.partner2 + cls.partner3).with_company( cls.main_company.id ).write({"property_account_payable_id": cls.account_payable.id}) cls.general_journal = cls.journal_model.create( @@ -79,8 +105,10 @@ def setUpClass(cls): "company_id": cls.main_company.id, } ) - cls.partner_bank = cls.env.ref("account_payment_mode.main_company_iban").copy( + + cls.partner_bank = cls.partner_bank_model.create( { + "acc_number": "FR0812221333144415551666777", "company_id": cls.main_company.id, "partner_id": cls.main_company.partner_id.id, "bank_id": ( @@ -97,9 +125,7 @@ def setUpClass(cls): "bank_id": cls.partner_bank.bank_id.id, "company_id": cls.main_company.id, "outbound_payment_method_line_ids": [ - ( - 0, - 0, + Command.create( { "payment_method_id": cls.env.ref( "account_banking_sepa_credit_transfer.sepa_credit_transfer" @@ -112,14 +138,17 @@ def setUpClass(cls): ) # update payment mode - cls.payment_mode = cls.env.ref( - "account_banking_sepa_credit_transfer.payment_mode_outbound_sepa_ct1" - ).copy({"company_id": cls.main_company.id}) - cls.payment_mode.write( - {"bank_account_link": "fixed", "fixed_journal_id": cls.bank_journal.id} - ) - # Trigger the recompute of account type on res.partner.bank - cls.partner_bank_model.search([])._compute_acc_type() + cls.payment_mode = cls.env["account.payment.mode"].create( + { + "name": "SEPA credit transfer test", + "company_id": cls.main_company.id, + "payment_method_id": cls.env.ref( + "account_banking_sepa_credit_transfer.sepa_credit_transfer" + ).id, + "bank_account_link": "fixed", + "fixed_journal_id": cls.bank_journal.id, + } + ) def test_no_pain(self): self.payment_mode.payment_method_id.pain_version = False @@ -144,21 +173,21 @@ def test_pain_003_03(self): def check_eur_currency_sct(self): invoice1 = self.create_invoice( - self.partner_agrolait.id, + self.partner1.id, "account_payment_mode.res_partner_2_iban", self.eur_currency.id, 42.0, "F1341", ) invoice2 = self.create_invoice( - self.partner_agrolait.id, + self.partner1.id, "account_payment_mode.res_partner_2_iban", self.eur_currency.id, 12.0, "F1342", ) invoice3 = self.create_invoice( - self.partner_agrolait.id, + self.partner1.id, "account_payment_mode.res_partner_2_iban", self.eur_currency.id, 5.0, @@ -166,14 +195,14 @@ def check_eur_currency_sct(self): "in_refund", ) invoice4 = self.create_invoice( - self.partner_c2c.id, + self.partner3.id, "account_payment_mode.res_partner_12_iban", self.eur_currency.id, 11.0, "I1642", ) invoice5 = self.create_invoice( - self.partner_c2c.id, + self.partner3.id, "account_payment_mode.res_partner_12_iban", self.eur_currency.id, 41.0, @@ -188,22 +217,22 @@ def check_eur_currency_sct(self): self.assertEqual(self.payment_order.journal_id, self.bank_journal) pay_lines = self.payment_line_model.search( [ - ("partner_id", "=", self.partner_agrolait.id), + ("partner_id", "=", self.partner1.id), ("order_id", "=", self.payment_order.id), ] ) self.assertEqual(len(pay_lines), 3) - agrolait_pay_line1 = pay_lines[0] - self.assertEqual(agrolait_pay_line1.currency_id, self.eur_currency) - self.assertEqual(agrolait_pay_line1.partner_bank_id, invoice1.partner_bank_id) + partner1_pay_line1 = pay_lines[0] + self.assertEqual(partner1_pay_line1.currency_id, self.eur_currency) + self.assertEqual(partner1_pay_line1.partner_bank_id, invoice1.partner_bank_id) self.assertEqual( - agrolait_pay_line1.currency_id.compare_amounts( - agrolait_pay_line1.amount_currency, 42 + partner1_pay_line1.currency_id.compare_amounts( + partner1_pay_line1.amount_currency, 42 ), 0, ) - self.assertEqual(agrolait_pay_line1.communication_type, "normal") - self.assertEqual(agrolait_pay_line1.communication, "F1341") + self.assertEqual(partner1_pay_line1.communication_type, "normal") + self.assertEqual(partner1_pay_line1.communication, "F1341") self.payment_order.draft2open() self.assertEqual(self.payment_order.state, "open") if self.payment_mode.payment_method_id.pain_version: @@ -211,21 +240,21 @@ def check_eur_currency_sct(self): else: self.assertFalse(self.payment_order.sepa) self.assertTrue(self.payment_order.payment_ids) - agrolait_bank_line = self.payment_order.payment_ids[0] - self.assertEqual(agrolait_bank_line.currency_id, self.eur_currency) + partner1_bank_line = self.payment_order.payment_ids[0] + self.assertEqual(partner1_bank_line.currency_id, self.eur_currency) self.assertEqual( - agrolait_bank_line.currency_id.compare_amounts( - agrolait_bank_line.amount, 49.0 + partner1_bank_line.currency_id.compare_amounts( + partner1_bank_line.amount, 49.0 ), 0, ) - self.assertEqual(agrolait_bank_line.payment_reference, "F1341 - F1342 - A1301") - self.assertEqual(agrolait_bank_line.partner_bank_id, invoice1.partner_bank_id) + self.assertEqual(partner1_bank_line.payment_reference, "F1341 - F1342 - A1301") + self.assertEqual(partner1_bank_line.partner_bank_id, invoice1.partner_bank_id) - action = self.payment_order.open2generated() + self.payment_order.open2generated() self.assertEqual(self.payment_order.state, "generated") - self.assertEqual(action["res_model"], "ir.attachment") - attachment = self.attachment_model.browse(action["res_id"]) + attachment = self.payment_order.payment_file_id + self.assertTrue(attachment) self.assertEqual(attachment.name[-4:], ".xml") xml_file = base64.b64decode(attachment.datas) xml_root = etree.fromstring(xml_file) @@ -257,14 +286,14 @@ def check_eur_currency_sct(self): def test_usd_currency_sct(self): invoice1 = self.create_invoice( - self.partner_asus.id, + self.partner2.id, "account_payment_mode.res_partner_2_iban", self.usd_currency.id, 2042.0, "Inv9032", ) invoice2 = self.create_invoice( - self.partner_asus.id, + self.partner2.id, "account_payment_mode.res_partner_2_iban", self.usd_currency.id, 1012.0, @@ -279,39 +308,41 @@ def test_usd_currency_sct(self): self.assertEqual(self.payment_order.journal_id, self.bank_journal) pay_lines = self.payment_line_model.search( [ - ("partner_id", "=", self.partner_asus.id), + ("partner_id", "=", self.partner2.id), ("order_id", "=", self.payment_order.id), ] ) self.assertEqual(len(pay_lines), 2) - asus_pay_line1 = pay_lines[0] - self.assertEqual(asus_pay_line1.currency_id, self.usd_currency) - self.assertEqual(asus_pay_line1.partner_bank_id, invoice1.partner_bank_id) + partner2_pay_line1 = pay_lines[0] + self.assertEqual(partner2_pay_line1.currency_id, self.usd_currency) + self.assertEqual(partner2_pay_line1.partner_bank_id, invoice1.partner_bank_id) self.assertEqual( - asus_pay_line1.currency_id.compare_amounts( - asus_pay_line1.amount_currency, 2042 + partner2_pay_line1.currency_id.compare_amounts( + partner2_pay_line1.amount_currency, 2042 ), 0, ) - self.assertEqual(asus_pay_line1.communication_type, "normal") - self.assertEqual(asus_pay_line1.communication, "Inv9032") + self.assertEqual(partner2_pay_line1.communication_type, "normal") + self.assertEqual(partner2_pay_line1.communication, "Inv9032") self.payment_order.draft2open() self.assertEqual(self.payment_order.state, "open") self.assertEqual(self.payment_order.sepa, False) self.assertEqual(self.payment_order.payment_count, 1) - asus_bank_line = self.payment_order.payment_ids[0] - self.assertEqual(asus_bank_line.currency_id, self.usd_currency) + partner2_bank_line = self.payment_order.payment_ids[0] + self.assertEqual(partner2_bank_line.currency_id, self.usd_currency) self.assertEqual( - asus_bank_line.currency_id.compare_amounts(asus_bank_line.amount, 3054.0), + partner2_bank_line.currency_id.compare_amounts( + partner2_bank_line.amount, 3054.0 + ), 0, ) - self.assertEqual(asus_bank_line.payment_reference, "Inv9032 - Inv9033") - self.assertEqual(asus_bank_line.partner_bank_id, invoice1.partner_bank_id) + self.assertEqual(partner2_bank_line.payment_reference, "Inv9032 - Inv9033") + self.assertEqual(partner2_bank_line.partner_bank_id, invoice1.partner_bank_id) - action = self.payment_order.open2generated() + self.payment_order.open2generated() self.assertEqual(self.payment_order.state, "generated") - self.assertEqual(action["res_model"], "ir.attachment") - attachment = self.attachment_model.browse(action["res_id"]) + attachment = self.payment_order.payment_file_id + self.assertTrue(attachment) self.assertEqual(attachment.name[-4:], ".xml") xml_file = base64.b64decode(attachment.datas) xml_root = etree.fromstring(xml_file) @@ -353,6 +384,12 @@ def create_invoice( ): partner_bank = cls.env.ref(partner_bank_xmlid) partner_bank.write({"company_id": False}) + line_data = { + "name": "Great service", + "account_id": cls.account_expense.id, + "price_unit": price_unit, + "quantity": 1, + } data = { "partner_id": partner_id, "reference_type": "none", @@ -363,15 +400,8 @@ def create_invoice( "payment_mode_id": cls.payment_mode.id, "partner_bank_id": partner_bank.id, "company_id": cls.main_company.id, - "invoice_line_ids": [], - } - line_data = { - "name": "Great service", - "account_id": cls.account_expense.id, - "price_unit": price_unit, - "quantity": 1, + "invoice_line_ids": [Command.create(line_data)], } - data["invoice_line_ids"].append((0, 0, line_data)) inv = cls.env["account.move"].create(data) inv.action_post() return inv diff --git a/account_banking_sepa_direct_debit/data/account_payment_method.xml b/account_banking_sepa_direct_debit/data/account_payment_method.xml index eb83d1b0b30..9dceab9c56b 100644 --- a/account_banking_sepa_direct_debit/data/account_payment_method.xml +++ b/account_banking_sepa_direct_debit/data/account_payment_method.xml @@ -4,6 +4,7 @@ SEPA Direct Debit for customers sepa_direct_debit inbound + pain.008.001.02 diff --git a/account_banking_sepa_direct_debit/migrations/16.0.1.2.0/post-migration.py b/account_banking_sepa_direct_debit/migrations/16.0.1.2.0/post-migration.py new file mode 100644 index 00000000000..4252c025d06 --- /dev/null +++ b/account_banking_sepa_direct_debit/migrations/16.0.1.2.0/post-migration.py @@ -0,0 +1,11 @@ +# Copyright 2023 Akretion France (http://www.akretion.com/) +# @author: Alexis de Lattre +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + sct_method = env.ref("account_banking_sepa_direct_debit.sepa_direct_debit") + sct_method.write({"payment_order_ok": True}) diff --git a/account_banking_sepa_direct_debit/tests/test_mandate.py b/account_banking_sepa_direct_debit/tests/test_mandate.py index eff7e8ea82d..17d9834315c 100644 --- a/account_banking_sepa_direct_debit/tests/test_mandate.py +++ b/account_banking_sepa_direct_debit/tests/test_mandate.py @@ -56,10 +56,22 @@ def setUp(self): bank_account = self.env.ref("account_payment_mode.res_partner_12_iban") self.mandate = self.env["account.banking.mandate"].create( { - "partner_bank_id": bank_account.id, + "name": "Test Partner SDD", + "company_id": cls.company.id, + } + ) + cls.partner_bank = cls.env["res.partner.bank"].create( + { + "acc_number": "FR451111 9999 8888 5555 9999 421", + "partner_id": cls.partner.id, + } + ) + cls.mandate = cls.env["account.banking.mandate"].create( + { + "partner_bank_id": cls.partner_bank.id, "format": "sepa", "type": "oneoff", "signature_date": "2015-01-01", + "company_id": cls.company.id, } ) - return res diff --git a/account_banking_sepa_direct_debit/tests/test_sdd.py b/account_banking_sepa_direct_debit/tests/test_sdd.py index dd9b2653266..1c25dedf027 100644 --- a/account_banking_sepa_direct_debit/tests/test_sdd.py +++ b/account_banking_sepa_direct_debit/tests/test_sdd.py @@ -6,7 +6,7 @@ from lxml import etree -from odoo import fields +from odoo import Command, fields from odoo.tests.common import TransactionCase from odoo.tools import float_compare @@ -15,7 +15,9 @@ class TestSDDBase(TransactionCase): @classmethod def setUpClass(cls): super().setUpClass() + cls.env = cls.env(context=dict(cls.env.context, tracking_disable=True)) cls.company_B = cls.env["res.company"].create({"name": "Company B"}) + cls.main_company = cls.company_B cls.account_payable_company_B = cls.env["account.account"].create( { "code": "NC1110", @@ -40,15 +42,37 @@ def setUpClass(cls): cls.payment_order_model = cls.env["account.payment.order"] cls.payment_line_model = cls.env["account.payment.line"] cls.mandate_model = cls.env["account.banking.mandate"] + cls.partner_model = cls.env["res.partner"] cls.partner_bank_model = cls.env["res.partner.bank"] - cls.attachment_model = cls.env["ir.attachment"] + cls.mandate_model = cls.env["account.banking.mandate"] cls.invoice_model = cls.env["account.move"] - cls.partner_agrolait = cls.env.ref("base.res_partner_2").copy() - cls.partner_c2c = cls.env.ref("base.res_partner_12").copy() + cls.partner1 = cls.partner_model.create( + { + "name": "P1", + "company_id": cls.main_company.id, + } + ) + cls.partner1_bank = cls.partner_bank_model.create( + { + "acc_number": "FR771111 9999 8888 5555 9999 233", + "partner_id": cls.partner1.id, + } + ) + cls.partner2 = cls.partner_model.create( + { + "name": "P2", + "company_id": cls.main_company.id, + } + ) + cls.partner2_bank = cls.partner_bank_model.create( + { + "acc_number": "FR891111 9999 8888 5555 9999 987", + "partner_id": cls.partner2.id, + } + ) cls.eur_currency = cls.env.ref("base.EUR") cls.setUpAdditionalAccounts() cls.setUpAccountJournal() - cls.main_company = cls.company_B cls.company_B.write( { "name": "Test EUR company", @@ -56,13 +80,7 @@ def setUpClass(cls): "sepa_creditor_identifier": "FR78ZZZ424242", } ) - cls.env.user.write( - { - "company_ids": [(6, 0, cls.main_company.ids)], - "company_id": cls.main_company.id, - } - ) - (cls.partner_agrolait + cls.partner_c2c).write( + (cls.partner1 + cls.partner2).write( { "company_id": cls.main_company.id, "supplier_payment_mode_id": False, @@ -84,6 +102,7 @@ def setUpClass(cls): # create journal cls.bank_journal = cls.journal_model.create( { + "company_id": cls.main_company.id, "name": "Company Bank journal", "type": "bank", "code": "BNKFC", @@ -91,9 +110,7 @@ def setUpClass(cls): "bank_account_id": cls.company_bank.id, "bank_id": cls.company_bank.bank_id.id, "inbound_payment_method_line_ids": [ - ( - 0, - 0, + Command.create( { "payment_method_id": cls.env.ref( "account_banking_sepa_direct_debit.sepa_direct_debit" @@ -105,49 +122,35 @@ def setUpClass(cls): } ) # update payment mode - cls.payment_mode = cls.env.ref( - "account_banking_sepa_direct_debit.payment_mode_inbound_sepa_dd1" - ).copy({"company_id": cls.main_company.id}) - cls.payment_mode.write( - {"bank_account_link": "fixed", "fixed_journal_id": cls.bank_journal.id} - ) - # Copy partner bank accounts - bank1 = cls.env.ref("account_payment_mode.res_partner_12_iban").copy( + cls.payment_mode = cls.env["account.payment.mode"].create( { + "name": "SEPA direct debit test", "company_id": cls.main_company.id, - "partner_id": cls.partner_c2c.id, - "acc_type": "iban", + "payment_method_id": cls.env.ref( + "account_banking_sepa_direct_debit.sepa_direct_debit" + ).id, + "bank_account_link": "fixed", + "fixed_journal_id": cls.bank_journal.id, } ) - cls.mandate12 = cls.env.ref( - "account_banking_sepa_direct_debit.res_partner_12_mandate" - ).copy( + cls.partner1_mandate = cls.mandate_model.create( { - "partner_bank_id": bank1.id, + "partner_bank_id": cls.partner1_bank.id, "company_id": cls.main_company.id, + "signature_date": "2023-11-05", "state": "valid", - "unique_mandate_reference": "BMTEST12", - } - ) - bank2 = cls.env.ref("account_payment_mode.res_partner_2_iban").copy( - { - "company_id": cls.main_company.id, - "partner_id": cls.partner_agrolait.id, - "acc_type": "iban", + "unique_mandate_reference": "BMTESTP1", } ) - cls.mandate2 = cls.env.ref( - "account_banking_sepa_direct_debit.res_partner_2_mandate" - ).copy( + cls.partner2_mandate = cls.mandate_model.create( { - "partner_bank_id": bank2.id, + "partner_bank_id": cls.partner2_bank.id, "company_id": cls.main_company.id, + "signature_date": "2023-10-05", "state": "valid", - "unique_mandate_reference": "BMTEST2", + "unique_mandate_reference": "BMTESTP2", } ) - # Trigger the recompute of account type on res.partner.bank - cls.partner_bank_model.search([])._compute_acc_type() @classmethod def setUpAdditionalAccounts(cls): @@ -234,10 +237,10 @@ def setUpAccountJournal(cls): ) def check_sdd(self): - self.mandate2.recurrent_sequence_type = "first" - invoice1 = self.create_invoice(self.partner_agrolait.id, self.mandate2, 42.0) - self.mandate12.type = "oneoff" - invoice2 = self.create_invoice(self.partner_c2c.id, self.mandate12, 11.0) + self.partner2_mandate.recurrent_sequence_type = "first" + invoice1 = self.create_invoice(self.partner1.id, self.partner2_mandate, 42.0) + self.partner1_mandate.type = "oneoff" + invoice2 = self.create_invoice(self.partner2.id, self.partner1_mandate, 11.0) self.payment_mode.payment_method_id.mandate_required = True for inv in [invoice1, invoice2]: action = inv.create_account_payment_line() @@ -249,45 +252,45 @@ def check_sdd(self): # Check payment line pay_lines = self.payment_line_model.search( [ - ("partner_id", "=", self.partner_agrolait.id), + ("partner_id", "=", self.partner1.id), ("order_id", "=", payment_order.id), ] ) self.assertEqual(len(pay_lines), 1) - agrolait_pay_line1 = pay_lines[0] + partner1_pay_line1 = pay_lines[0] accpre = self.env["decimal.precision"].precision_get("Account") - self.assertEqual(agrolait_pay_line1.currency_id, self.eur_currency) - self.assertEqual(agrolait_pay_line1.mandate_id, invoice1.mandate_id) + self.assertEqual(partner1_pay_line1.currency_id, self.eur_currency) + self.assertEqual(partner1_pay_line1.mandate_id, invoice1.mandate_id) self.assertEqual( - agrolait_pay_line1.partner_bank_id, invoice1.mandate_id.partner_bank_id + partner1_pay_line1.partner_bank_id, invoice1.mandate_id.partner_bank_id ) self.assertEqual( float_compare( - agrolait_pay_line1.amount_currency, 42, precision_digits=accpre + partner1_pay_line1.amount_currency, 42, precision_digits=accpre ), 0, ) - self.assertEqual(agrolait_pay_line1.communication_type, "normal") - self.assertEqual(agrolait_pay_line1.communication, invoice1.name) + self.assertEqual(partner1_pay_line1.communication_type, "normal") + self.assertEqual(partner1_pay_line1.communication, invoice1.name) payment_order._compute_sepa() payment_order.draft2open() self.assertEqual(payment_order.state, "open") self.assertEqual(payment_order.sepa, True) # Check account payment - agrolait_bank_line = payment_order.payment_ids[0] - self.assertEqual(agrolait_bank_line.currency_id, self.eur_currency) + partner1_bank_line = payment_order.payment_ids[0] + self.assertEqual(partner1_bank_line.currency_id, self.eur_currency) self.assertEqual( - float_compare(agrolait_bank_line.amount, 42.0, precision_digits=accpre), + float_compare(partner1_bank_line.amount, 42.0, precision_digits=accpre), 0, ) - self.assertEqual(agrolait_bank_line.payment_reference, invoice1.name) + self.assertEqual(partner1_bank_line.payment_reference, invoice1.name) self.assertEqual( - agrolait_bank_line.partner_bank_id, invoice1.mandate_id.partner_bank_id + partner1_bank_line.partner_bank_id, invoice1.mandate_id.partner_bank_id ) - action = payment_order.open2generated() + payment_order.open2generated() self.assertEqual(payment_order.state, "generated") - self.assertEqual(action["res_model"], "ir.attachment") - attachment = self.attachment_model.browse(action["res_id"]) + attachment = payment_order.payment_file_id + self.assertTrue(attachment) self.assertEqual(attachment.name[-4:], ".xml") xml_file = base64.b64decode(attachment.datas) xml_root = etree.fromstring(xml_file) @@ -310,23 +313,17 @@ def check_sdd(self): payment_order.generated2uploaded() self.assertEqual(payment_order.state, "uploaded") for inv in [invoice1, invoice2]: - self.assertEqual(inv.payment_state, "paid") - self.assertEqual(self.mandate2.recurrent_sequence_type, "recurring") + self.assertEqual(inv.payment_state, "in_payment") + self.assertEqual(self.partner2_mandate.recurrent_sequence_type, "recurring") return def create_invoice(self, partner_id, mandate, price_unit, inv_type="out_invoice"): - invoice_vals = [ - ( - 0, - 0, - { - "name": "Great service", - "quantity": 1, - "account_id": self.account_revenue_company_B.id, - "price_unit": price_unit, - }, - ) - ] + line_vals = { + "name": "Great service", + "quantity": 1, + "account_id": self.account_revenue_company_B.id, + "price_unit": price_unit, + } invoice = self.invoice_model.create( { "partner_id": partner_id, @@ -337,7 +334,7 @@ def create_invoice(self, partner_id, mandate, price_unit, inv_type="out_invoice" "date": fields.Date.today(), "payment_mode_id": self.payment_mode.id, "mandate_id": mandate.id, - "invoice_line_ids": invoice_vals, + "invoice_line_ids": [Command.create(line_vals)], } ) invoice.action_post() diff --git a/account_payment_mode/models/account_journal.py b/account_payment_mode/models/account_journal.py index 8941a9cd010..11b8a57bf8d 100644 --- a/account_payment_mode/models/account_journal.py +++ b/account_payment_mode/models/account_journal.py @@ -2,8 +2,7 @@ # @author: Alexis de Lattre # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). -from odoo import _, api, models -from odoo.exceptions import ValidationError +from odoo import models class AccountJournal(models.Model): @@ -29,41 +28,3 @@ def _default_inbound_payment_methods(self): ] ) return all_in - - @api.constrains("company_id") - def company_id_account_payment_mode_constrains(self): - for journal in self: - mode = self.env["account.payment.mode"].search( - [ - ("fixed_journal_id", "=", journal.id), - ("company_id", "!=", journal.company_id.id), - ], - limit=1, - ) - if mode: - raise ValidationError( - _( - "The company of the journal %(journal)s does not match " - "with the company of the payment mode %(paymode)s where it is " - "being used as Fixed Bank Journal.", - journal=journal.name, - paymode=mode.name, - ) - ) - mode = self.env["account.payment.mode"].search( - [ - ("variable_journal_ids", "in", [journal.id]), - ("company_id", "!=", journal.company_id.id), - ], - limit=1, - ) - if mode: - raise ValidationError( - _( - "The company of the journal %(journal)s does not match " - "with the company of the payment mode %(paymode)s where it is " - "being used in the Allowed Bank Journals.", - journal=journal.name, - paymode=mode.name, - ) - ) diff --git a/account_payment_mode/models/account_payment_mode.py b/account_payment_mode/models/account_payment_mode.py index 5fed3d83438..83f40ec1423 100644 --- a/account_payment_mode/models/account_payment_mode.py +++ b/account_payment_mode/models/account_payment_mode.py @@ -53,6 +53,7 @@ class AccountPaymentMode(models.Model): column2="journal_id", string="Allowed Bank Journals", domain="[('company_id', '=', company_id), ('type', 'in', ('bank', 'cash'))]", + check_company=True, ) payment_method_id = fields.Many2one( "account.payment.method", @@ -121,15 +122,3 @@ def bank_account_link_constrains(self): journal=mode.fixed_journal_id.name, ) ) - - @api.constrains("company_id", "variable_journal_ids") - def company_id_variable_journal_ids_constrains(self): - for mode in self: - if any(mode.company_id != j.company_id for j in mode.variable_journal_ids): - raise ValidationError( - _( - "The company of the payment mode %(paymode)s, does not match " - "with one of the Allowed Bank Journals.", - paymode=mode.name, - ) - ) diff --git a/account_payment_mode/tests/test_account_payment_mode.py b/account_payment_mode/tests/test_account_payment_mode.py index db23e176e6f..af661f65432 100644 --- a/account_payment_mode/tests/test_account_payment_mode.py +++ b/account_payment_mode/tests/test_account_payment_mode.py @@ -1,6 +1,7 @@ # Copyright 2016-2020 ForgeFlow S.L. # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html). +from odoo import Command from odoo.exceptions import UserError, ValidationError from odoo.tests.common import TransactionCase @@ -11,7 +12,6 @@ def setUpClass(cls): super().setUpClass() cls.env = cls.env(context=dict(cls.env.context, tracking_disable=True)) - cls.res_users_model = cls.env["res.users"] cls.journal_model = cls.env["account.journal"] cls.payment_mode_model = cls.env["account.payment.mode"] @@ -35,7 +35,7 @@ def setUpClass(cls): "company_id": cls.company.id, "fixed_journal_id": cls.journal_c1.id, "variable_journal_ids": [ - (6, 0, [cls.journal_c1.id, cls.journal_c3.id]) + Command.set([cls.journal_c1.id, cls.journal_c3.id]) ], } ) @@ -58,9 +58,7 @@ def test_payment_mode_company_consistency_change(self): self.payment_mode_c1.write( { "variable_journal_ids": [ - ( - 6, - 0, + Command.set( [ self.journal_c1.id, self.journal_c2.id, @@ -70,7 +68,7 @@ def test_payment_mode_company_consistency_change(self): ] } ) - with self.assertRaises(ValidationError): + with self.assertRaises(UserError): self.journal_c1.write({"company_id": self.company_2.id}) def test_payment_mode_company_consistency_create(self): @@ -94,7 +92,7 @@ def test_payment_mode_company_consistency_create(self): "bank_account_link": "variable", "payment_method_id": self.manual_out.id, "company_id": self.company.id, - "variable_journal_ids": [(6, 0, [self.journal_c2.id])], + "variable_journal_ids": [Command.set([self.journal_c2.id])], } ) diff --git a/account_payment_mode/views/account_payment_method.xml b/account_payment_mode/views/account_payment_method.xml index b6c7c29238c..e237ae9ea0a 100644 --- a/account_payment_mode/views/account_payment_method.xml +++ b/account_payment_mode/views/account_payment_method.xml @@ -57,6 +57,12 @@ here. I hate the objects that don't have a view... --> string="Outbound" domain="[('payment_type', '=', 'outbound')]" /> + + Customers > Deb This module also adds an action *Add to Payment Order* on supplier invoices and *Add to Debit Order* on customer invoices. -You can print a Payment order via the menu Invoicing/Accounting > Vendors > Payment Orders and then select the payment order to print. - -You can set a transfer journal via Accounting Settings or on the Payment Mode. -If there is no transfer journal, the bank journal itself will be used for the journal entry -created when confirming a payment order. Bug Tracker =========== diff --git a/account_payment_order/__manifest__.py b/account_payment_order/__manifest__.py index 5827d810a7a..55689467d5b 100644 --- a/account_payment_order/__manifest__.py +++ b/account_payment_order/__manifest__.py @@ -9,7 +9,7 @@ { "name": "Account Payment Order", - "version": "16.0.1.9.1", + "version": "16.0.2.0.0", "license": "AGPL-3", "author": "ACSONE SA/NV, " "Therp BV, " @@ -32,7 +32,6 @@ "views/account_payment_order.xml", "views/account_payment_line.xml", "views/account_move_line.xml", - "views/ir_attachment.xml", "views/account_invoice_view.xml", "data/payment_seq.xml", "report/print_account_payment_order.xml", diff --git a/account_payment_order/demo/payment_demo.xml b/account_payment_order/demo/payment_demo.xml index 95b42c3a4d1..877720502c5 100644 --- a/account_payment_order/demo/payment_demo.xml +++ b/account_payment_order/demo/payment_demo.xml @@ -24,24 +24,4 @@ > - - - - - - - - diff --git a/account_payment_order/migrations/16.0.2.0.0/pre-migration.py b/account_payment_order/migrations/16.0.2.0.0/pre-migration.py new file mode 100644 index 00000000000..309fd42a7aa --- /dev/null +++ b/account_payment_order/migrations/16.0.2.0.0/pre-migration.py @@ -0,0 +1,13 @@ +# Copyright 2023 Akretion France (http://www.akretion.com/) +# @author: Alexis de Lattre +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + + +def migrate(cr, version): + if not version: + return + + cr.execute( + 'ALTER TABLE "account_payment_method" RENAME "payment_order_only" ' + 'TO "payment_order_ok"' + ) diff --git a/account_payment_order/models/__init__.py b/account_payment_order/models/__init__.py index 67e60d814ba..25fd791f95a 100644 --- a/account_payment_order/models/__init__.py +++ b/account_payment_order/models/__init__.py @@ -5,6 +5,5 @@ from . import account_move_line from . import res_bank from . import account_payment_method -from . import account_journal from . import account_payment from . import res_company diff --git a/account_payment_order/models/account_journal.py b/account_payment_order/models/account_journal.py deleted file mode 100644 index e8a298ca1f1..00000000000 --- a/account_payment_order/models/account_journal.py +++ /dev/null @@ -1,33 +0,0 @@ -# Copyright 2019 ACSONE SA/NV -# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). - -from odoo import api, fields, models - - -class AccountJournal(models.Model): - _inherit = "account.journal" - - inbound_payment_order_only = fields.Boolean( - compute="_compute_inbound_payment_order_only", readonly=True, store=True - ) - outbound_payment_order_only = fields.Boolean( - compute="_compute_outbound_payment_order_only", readonly=True, store=True - ) - - @api.depends("inbound_payment_method_line_ids.payment_method_id.payment_order_only") - def _compute_inbound_payment_order_only(self): - for rec in self: - rec.inbound_payment_order_only = all( - p.payment_order_only - for p in rec.inbound_payment_method_line_ids.payment_method_id - ) - - @api.depends( - "outbound_payment_method_line_ids.payment_method_id.payment_order_only" - ) - def _compute_outbound_payment_order_only(self): - for rec in self: - rec.outbound_payment_order_only = all( - p.payment_order_only - for p in rec.outbound_payment_method_line_ids.payment_method_id - ) diff --git a/account_payment_order/models/account_move.py b/account_payment_order/models/account_move.py index 3faae049e31..2e20a9cc58a 100644 --- a/account_payment_order/models/account_move.py +++ b/account_payment_order/models/account_move.py @@ -47,6 +47,12 @@ def _compute_payment_line_count(self): ) ) + # Enable support for payment_state = "in_payment" on invoices + # _get_invoice_in_payment_state() is a method of the "account" module which returns "paid" + @api.model + def _get_invoice_in_payment_state(self): + return "in_payment" + def _get_payment_order_communication_direct(self): """Retrieve the communication string for this direct item.""" communication = self.payment_reference or self.ref or self.name diff --git a/account_payment_order/models/account_move_line.py b/account_payment_order/models/account_move_line.py index 656276abbb8..232ab1e4ce3 100644 --- a/account_payment_order/models/account_move_line.py +++ b/account_payment_order/models/account_move_line.py @@ -2,22 +2,12 @@ # © 2014 Serv. Tecnol. Avanzados - Pedro M. Baeza # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). -from odoo import api, fields, models -from odoo.fields import first +from odoo import fields, models class AccountMoveLine(models.Model): _inherit = "account.move.line" - partner_bank_id = fields.Many2one( - comodel_name="res.partner.bank", - string="Partner Bank Account", - compute="_compute_partner_bank_id", - readonly=False, - store=True, - help="Bank account on which we should pay the supplier", - check_company=True, - ) payment_line_ids = fields.One2many( comodel_name="account.payment.line", inverse_name="move_line_id", @@ -60,29 +50,9 @@ def _get_communication(self): def _prepare_payment_line_vals(self, payment_order): self.ensure_one() - communication_type, communication = self._get_communication() - if self.currency_id: - currency_id = self.currency_id.id - amount_currency = self.amount_residual_currency - else: - currency_id = self.company_id.currency_id.id - amount_currency = self.amount_residual - # TODO : check that self.amount_residual_currency is 0 - # in this case - if payment_order.payment_type == "outbound": - amount_currency *= -1 - partner_bank_id = self.partner_bank_id.id or first(self.partner_id.bank_ids).id vals = { "order_id": payment_order.id, - "partner_bank_id": partner_bank_id, - "partner_id": self.partner_id.id, "move_line_id": self.id, - "communication": communication, - "communication_type": communication_type, - "currency_id": currency_id, - "amount_currency": amount_currency, - "date": False, - # date is set when the user confirms the payment order } return vals diff --git a/account_payment_order/models/account_payment.py b/account_payment_order/models/account_payment.py index 84d8b212e61..7bfb45087e3 100644 --- a/account_payment_order/models/account_payment.py +++ b/account_payment_order/models/account_payment.py @@ -29,7 +29,7 @@ def _compute_payment_method_line_fields(self): pay.available_payment_method_line_ids = ( pay.journal_id._get_available_payment_method_lines( pay.payment_type - ).filtered(lambda x: not x.payment_method_id.payment_order_only) + ).filtered(lambda x: not x.payment_method_id.payment_order_ok) ) to_exclude = pay._get_payment_method_codes_to_exclude() if to_exclude: diff --git a/account_payment_order/models/account_payment_line.py b/account_payment_order/models/account_payment_line.py index 3b6a2803963..9e0111a1de9 100644 --- a/account_payment_order/models/account_payment_line.py +++ b/account_payment_order/models/account_payment_line.py @@ -1,7 +1,7 @@ # © 2015-2016 Akretion - Alexis de Lattre # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). -from odoo import _, api, fields, models +from odoo import Command, _, api, fields, models from odoo.exceptions import UserError @@ -19,34 +19,45 @@ class AccountPaymentLine(models.Model): check_company=True, ) company_id = fields.Many2one( - related="order_id.company_id", store=True, readonly=True + related="order_id.company_id", + store=True, ) company_currency_id = fields.Many2one( - related="order_id.company_currency_id", store=True, readonly=True + related="order_id.company_currency_id", + store=True, ) payment_type = fields.Selection( - related="order_id.payment_type", store=True, readonly=True + related="order_id.payment_type", + store=True, ) bank_account_required = fields.Boolean( - related="order_id.payment_method_id.bank_account_required", readonly=True - ) - state = fields.Selection( - related="order_id.state", string="State", readonly=True, store=True + related="order_id.payment_method_id.bank_account_required", ) + state = fields.Selection(related="order_id.state", string="State", store=True) move_line_id = fields.Many2one( comodel_name="account.move.line", string="Journal Item", ondelete="restrict", check_company=True, ) - ml_maturity_date = fields.Date(related="move_line_id.date_maturity", readonly=True) + ml_maturity_date = fields.Date(related="move_line_id.date_maturity") currency_id = fields.Many2one( comodel_name="res.currency", + compute="_compute_payment_line", + store=True, + readonly=False, + precompute=True, string="Currency of the Payment Transaction", required=True, - default=lambda self: self.env.user.company_id.currency_id, ) - amount_currency = fields.Monetary(string="Amount", currency_field="currency_id") + amount_currency = fields.Monetary( + compute="_compute_payment_line", + store=True, + readonly=False, + precompute=True, + string="Amount", + currency_field="currency_id", + ) amount_company_currency = fields.Monetary( compute="_compute_amount_company_currency", string="Amount in Company Currency", @@ -54,13 +65,20 @@ class AccountPaymentLine(models.Model): ) partner_id = fields.Many2one( comodel_name="res.partner", - string="Partner", + compute="_compute_payment_line", + store=True, + readonly=False, + precompute=True, required=True, domain=[("parent_id", "=", False)], check_company=True, ) partner_bank_id = fields.Many2one( comodel_name="res.partner.bank", + compute="_compute_payment_line", + store=True, + readonly=False, + precompute=True, string="Partner Bank Account", required=False, ondelete="restrict", @@ -75,10 +93,20 @@ class AccountPaymentLine(models.Model): # This field is required in the form view and there is an error message # when going from draft to confirm if the field is empty communication = fields.Char( - required=False, help="Label of the payment that will be seen by the destinee" + compute="_compute_payment_line", + store=True, + readonly=False, + precompute=True, + required=False, + help="Label of the payment that will be seen by the destinee", ) communication_type = fields.Selection( - selection=[("normal", "Free")], required=True, default="normal" + compute="_compute_payment_line", + store=True, + readonly=False, + precompute=True, + selection=[("normal", "Free")], + required=True, ) payment_ids = fields.Many2many( comodel_name="account.payment", @@ -143,26 +171,32 @@ def payment_line_hashcode(self): values.append(str(self.id)) return "-".join(values) - @api.onchange("partner_id") - def partner_id_change(self): - partner_bank = False - if self.partner_id.bank_ids: - partner_bank = self.partner_id.bank_ids[0] - self.partner_bank_id = partner_bank - - @api.onchange("move_line_id") - def move_line_id_change(self): - if self.move_line_id: - vals = self.move_line_id._prepare_payment_line_vals(self.order_id) - vals.pop("order_id") - for field, value in vals.items(): - self[field] = value - else: - self.partner_id = False - self.partner_bank_id = False - self.amount_currency = 0.0 - self.currency_id = self.env.user.company_id.currency_id - self.communication = False + @api.depends("partner_id", "move_line_id") + def _compute_payment_line(self): + for line in self: + communication = False + communication_type = "normal" + currency_id = line.company_id.currency_id.id + amount_currency = 0.0 + move_line = line.move_line_id + partner = line.partner_id + partner_bank_id = False + if move_line: + communication_type, communication = move_line._get_communication() + currency_id = move_line.currency_id.id + amount_currency = move_line.amount_residual_currency + if line.order_id.payment_type == "outbound": + amount_currency *= -1 + partner = move_line.partner_id + partner_bank_id = move_line.move_id.partner_bank_id.id + if partner and not partner_bank_id and partner.bank_ids: + partner_bank_id = partner.bank_ids[0] + line.communication = communication + line.communication_type = communication_type + line.currency_id = currency_id + line.amount_currency = amount_currency + line.partner_id = partner and partner.id or False + line.partner_bank_id = partner_bank_id def invoice_reference_type2communication_type(self): """This method is designed to be inherited by @@ -202,7 +236,7 @@ def _prepare_account_payment_vals(self): "journal_id": journal.id, "partner_bank_id": self.partner_bank_id.id, "payment_order_id": self.order_id.id, - "payment_line_ids": [(6, 0, self.ids)], + "payment_line_ids": [Command.set(self.ids)], } # Determine payment method line according payment method and journal line = self.env["account.payment.method.line"].search( diff --git a/account_payment_order/models/account_payment_method.py b/account_payment_order/models/account_payment_method.py index 2e42b544a2b..7d846e39731 100644 --- a/account_payment_order/models/account_payment_method.py +++ b/account_payment_order/models/account_payment_method.py @@ -7,9 +7,7 @@ class AccountPaymentMethod(models.Model): _inherit = "account.payment.method" - payment_order_only = fields.Boolean( - string="Only for payment orders", - help="This option helps enforcing the use of payment orders for " - "some payment methods.", - default=False, + payment_order_ok = fields.Boolean( + string="Payment Orders", + help="Check this option for payment methods designed to be used in payment orders.", ) diff --git a/account_payment_order/models/account_payment_mode.py b/account_payment_order/models/account_payment_mode.py index b1a136ecf11..390ea44908a 100644 --- a/account_payment_order/models/account_payment_mode.py +++ b/account_payment_order/models/account_payment_mode.py @@ -8,13 +8,21 @@ class AccountPaymentMode(models.Model): - """This corresponds to the object payment.mode of v8 with some - important changes""" - _inherit = "account.payment.mode" payment_order_ok = fields.Boolean( - string="Selectable in Payment Orders", default=True + string="Selectable in Payment Orders", + compute="_compute_payment_order_ok", + store=True, + readonly=False, + precompute=True, + ) + specific_sequence_id = fields.Many2one( + "ir.sequence", + check_company=True, + copy=False, + help="If left empty, the payment orders with this payment mode will use the " + "generic sequence for all payment orders.", ) no_debit_before_maturity = fields.Boolean( string="Disallow Debit Before Maturity Date", @@ -31,8 +39,13 @@ class AccountPaymentMode(models.Model): ) default_journal_ids = fields.Many2many( comodel_name="account.journal", + compute="_compute_default_journal_ids", + store=True, + readonly=False, + precompute=True, string="Journals Filter", domain="[('company_id', '=', company_id)]", + check_company=True, ) default_invoice = fields.Boolean( string="Linked to an Invoice or Refund", default=False @@ -78,23 +91,33 @@ class AccountPaymentMode(models.Model): help="Journal to write payment entries when confirming payment/debit orders", ) - @api.onchange("payment_method_id") - def payment_method_id_change(self): - if self.payment_method_id: - ajo = self.env["account.journal"] - aj_ids = [] - if self.payment_method_id.payment_type == "outbound": - aj_ids = ajo.search( - [ - ("type", "in", ("purchase_refund", "purchase")), - ("company_id", "=", self.company_id.id), - ] - ).ids - elif self.payment_method_id.payment_type == "inbound": - aj_ids = ajo.search( - [ - ("type", "in", ("sale_refund", "sale")), - ("company_id", "=", self.company_id.id), - ] - ).ids - self.default_journal_ids = [(6, 0, aj_ids)] + @api.depends("payment_method_id") + def _compute_payment_order_ok(self): + for mode in self: + mode.payment_order_ok = mode.payment_method_id.payment_order_ok + + @api.depends("payment_method_id", "company_id") + def _compute_default_journal_ids(self): + ptype_map = { + "outbound": "purchase", + "inbound": "sale", + } + for mode in self: + if ( + mode.payment_method_id + and mode.payment_method_id.payment_type in ptype_map + ): + mode.default_journal_ids = ( + self.env["account.journal"] + .search( + [ + ( + "type", + "=", + ptype_map[mode.payment_method_id.payment_type], + ), + ("company_id", "=", mode.company_id.id), + ] + ) + .ids + ) diff --git a/account_payment_order/models/account_payment_order.py b/account_payment_order/models/account_payment_order.py index cab62cdc367..b25982cf2fd 100644 --- a/account_payment_order/models/account_payment_order.py +++ b/account_payment_order/models/account_payment_order.py @@ -4,8 +4,6 @@ # Copyright 2016-2022 Tecnativa - Pedro M. Baeza # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). -import base64 - from odoo import _, api, fields, models from odoo.exceptions import UserError, ValidationError @@ -26,6 +24,7 @@ class AccountPaymentOrder(models.Model): readonly=True, states={"draft": [("readonly", False)]}, check_company=True, + domain="[('payment_order_ok', '=', True), ('payment_type', '=', payment_type)]", ) partner_banks_archive_msg = fields.Html( compute="_compute_partner_banks_archive_msg", @@ -38,17 +37,18 @@ class AccountPaymentOrder(models.Model): payment_method_id = fields.Many2one( comodel_name="account.payment.method", related="payment_mode_id.payment_method_id", - readonly=True, store=True, ) company_id = fields.Many2one( - related="payment_mode_id.company_id", store=True, readonly=True + related="payment_mode_id.company_id", + store=True, ) company_currency_id = fields.Many2one( - related="payment_mode_id.company_id.currency_id", store=True, readonly=True + related="payment_mode_id.company_id.currency_id", + store=True, ) bank_account_link = fields.Selection( - related="payment_mode_id.bank_account_link", readonly=True + related="payment_mode_id.bank_account_link", ) allowed_journal_ids = fields.Many2many( comodel_name="account.journal", @@ -57,19 +57,21 @@ class AccountPaymentOrder(models.Model): ) journal_id = fields.Many2one( comodel_name="account.journal", + compute="_compute_journal_id", + store=True, + precompute=True, string="Bank Journal", ondelete="restrict", - readonly=True, states={"draft": [("readonly", False)]}, tracking=True, check_company=True, + domain="[('id', 'in', allowed_journal_ids)]", ) # The journal_id field is only required at confirm step, to # allow auto-creation of payment order from invoice company_partner_bank_id = fields.Many2one( related="journal_id.bank_account_id", string="Company Bank Account", - readonly=True, ) state = fields.Selection( selection=[ @@ -91,11 +93,13 @@ class AccountPaymentOrder(models.Model): ("due", "Due Date"), ("fixed", "Fixed Date"), ], + compute="_compute_date_prefered", + store=True, + precompute=True, string="Payment Execution Date Type", required=True, default="due", tracking=True, - readonly=True, states={"draft": [("readonly", False)]}, ) date_scheduled = fields.Date( @@ -131,6 +135,7 @@ class AccountPaymentOrder(models.Model): ) payment_count = fields.Integer( compute="_compute_payment_count", + store=True, string="Number of Payment Transactions", ) total_company_currency = fields.Monetary( @@ -146,6 +151,21 @@ class AccountPaymentOrder(models.Model): compute="_compute_move_count", string="Number of Journal Entries" ) description = fields.Char() + payment_file_id = fields.Many2one("ir.attachment", string="Payment File Attachment") + payment_file_datas = fields.Binary( + related="payment_file_id.datas", string="Payment File" + ) + payment_file_name = fields.Char( + related="payment_file_id.name", string="Payment Filename" + ) + + _sql_constraints = [ + ( + "name_company_unique", + "unique(name, company_id)", + "A payment order with the same number already exists in this company.", + ) + ] @api.depends( "payment_line_ids.partner_bank_id", "payment_line_ids.partner_bank_id.active" @@ -188,7 +208,9 @@ def unlink(self): "cancel it in order to do so." ) ) - return super(AccountPaymentOrder, self).unlink() + if order.payment_file_id: + order.payment_file_id.unlink() + return super().unlink() @api.constrains("payment_type", "payment_mode_id") def payment_order_constraints(self): @@ -244,8 +266,16 @@ def _compute_total(self): @api.depends("payment_ids") def _compute_payment_count(self): + rg_res = self.env["account.payment"].read_group( + [("payment_order_id", "in", self.ids)], + ["payment_order_id"], + ["payment_order_id"], + ) + mapped_data = { + x["payment_order_id"][0]: x["payment_order_id_count"] for x in rg_res + } for order in self: - order.payment_count = len(order.payment_ids) + order.payment_count = mapped_data.get(order.id, 0) @api.depends("move_ids") def _compute_move_count(self): @@ -263,28 +293,39 @@ def _compute_move_count(self): @api.model_create_multi def create(self, vals_list): for vals in vals_list: - if vals.get("name", "New") == "New": - vals["name"] = ( - self.env["ir.sequence"].next_by_code("account.payment.order") - or "New" - ) + payment_mode = False if vals.get("payment_mode_id"): payment_mode = self.env["account.payment.mode"].browse( vals["payment_mode_id"] ) vals["payment_type"] = payment_mode.payment_type - if payment_mode.bank_account_link == "fixed": - vals["journal_id"] = payment_mode.fixed_journal_id.id - if not vals.get("date_prefered") and payment_mode.default_date_prefered: - vals["date_prefered"] = payment_mode.default_date_prefered - return super(AccountPaymentOrder, self).create(vals_list) + if vals.get("name", "New") == "New": + if payment_mode and payment_mode.specific_sequence_id: + vals["name"] = payment_mode.specific_sequence_id.next_by_id() + else: + vals["name"] = ( + self.env["ir.sequence"].next_by_code("account.payment.order") + or "New" + ) + return super().create(vals_list) - @api.onchange("payment_mode_id") - def payment_mode_id_change(self): - if len(self.allowed_journal_ids) == 1: - self.journal_id = self.allowed_journal_ids - if self.payment_mode_id.default_date_prefered: - self.date_prefered = self.payment_mode_id.default_date_prefered + @api.depends("payment_mode_id") + def _compute_date_prefered(self): + for order in self: + if order.payment_mode_id.default_date_prefered: + order.date_prefered = order.payment_mode_id.default_date_prefered + + @api.depends("payment_mode_id") + def _compute_journal_id(self): + for order in self: + payment_mode = order.payment_mode_id + if payment_mode.bank_account_link == "fixed": + order.journal_id = payment_mode.fixed_journal_id.id + elif ( + payment_mode.bank_account_link == "variable" + and len(payment_mode.variable_journal_ids) == 1 + ): + order.journal_id = payment_mode.variable_journal_ids.id def action_uploaded_cancel(self): self.action_cancel() @@ -298,7 +339,15 @@ def action_cancel(self): # Unreconcile and cancel payments self.payment_ids.action_draft() self.payment_ids.action_cancel() - self.write({"state": "cancel"}) + if self.payment_file_id: + self.payment_file_id.unlink() + self.write( + { + "state": "cancel", + "date_generated": False, + "generated_user_id": False, + } + ) return True def draft2open(self): @@ -425,37 +474,22 @@ def generate_payment_file(self): def open2generated(self): self.ensure_one() - payment_file_str, filename = self.generate_payment_file() - action = {} - if payment_file_str and filename: + payment_file_bytes, filename = self.generate_payment_file() + vals = { + "state": "generated", + "generated_user_id": self._uid, + "date_generated": fields.Date.context_today(self), + } + if payment_file_bytes and filename: attachment = self.env["ir.attachment"].create( { - "res_model": "account.payment.order", - "res_id": self.id, "name": filename, - "datas": base64.b64encode(payment_file_str), + "raw": payment_file_bytes, } ) - simplified_form_view = self.env.ref( - "account_payment_order.view_attachment_simplified_form" - ) - action = { - "name": _("Payment File"), - "view_mode": "form", - "view_id": simplified_form_view.id, - "res_model": "ir.attachment", - "type": "ir.actions.act_window", - "target": "current", - "res_id": attachment.id, - } - self.write( - { - "date_generated": fields.Date.context_today(self), - "state": "generated", - "generated_user_id": self._uid, - } - ) - return action + vals["payment_file_id"] = attachment.id + self.write(vals) + return def generated2uploaded(self): self.payment_ids.action_post() diff --git a/account_payment_order/models/res_bank.py b/account_payment_order/models/res_bank.py index 59a2d4dc15a..39de7e68987 100644 --- a/account_payment_order/models/res_bank.py +++ b/account_payment_order/models/res_bank.py @@ -20,6 +20,3 @@ def check_bic_length(self): num=len(bank.bic), ) ) - - -# starting from v9, on res.partner.bank bank_bic is a related of bank_id.bic diff --git a/account_payment_order/tests/test_payment_mode.py b/account_payment_order/tests/test_payment_mode.py index 51bce1e7032..9ed7620b37d 100644 --- a/account_payment_order/tests/test_payment_mode.py +++ b/account_payment_order/tests/test_payment_mode.py @@ -3,6 +3,7 @@ from unittest.mock import patch +from odoo import Command from odoo.tests.common import TransactionCase from odoo.addons.account.models.account_payment_method import AccountPaymentMethod @@ -63,30 +64,28 @@ def _get_payment_method_information(self): { "name": "Direct Debit of suppliers from Bank 1", "bank_account_link": "variable", - "payment_method_id": cls.manual_out.id, - "company_id": cls.company.id, - "fixed_journal_id": cls.journal_c1.id, - "variable_journal_ids": [(6, 0, [cls.journal_c1.id])], + "payment_method_id": self.manual_out.id, + "company_id": self.company.id, + "fixed_journal_id": self.journal_c1.id, + "variable_journal_ids": [Command.set([self.journal_c1.id])], } ) def test_onchange_payment_type(self): self.payment_mode_c1.payment_method_id = self.manual_in - self.payment_mode_c1.payment_method_id_change() self.assertTrue( all( [ - journal.type in ["sale_refund", "sale"] + journal.type == "sale" for journal in self.payment_mode_c1.default_journal_ids ] ) ) self.payment_mode_c1.payment_method_id = self.manual_out - self.payment_mode_c1.payment_method_id_change() self.assertTrue( all( [ - journal.type in ["purchase_refund", "purchase"] + journal.type == "purchase" for journal in self.payment_mode_c1.default_journal_ids ] ) diff --git a/account_payment_order/tests/test_payment_order_inbound.py b/account_payment_order/tests/test_payment_order_inbound.py index 775ac8cb454..5e953872e1b 100644 --- a/account_payment_order/tests/test_payment_order_inbound.py +++ b/account_payment_order/tests/test_payment_order_inbound.py @@ -26,13 +26,19 @@ def setUpClass(cls, chart_template_ref=None): "name": "Test Partner", } ) + cls.payment_method_in = cls.env["account.payment.method"].create( + { + "name": "test inbound payment order ok", + "code": "test_manual", + "payment_type": "inbound", + "payment_order_ok": True, + } + ) cls.inbound_mode = cls.env["account.payment.mode"].create( { "name": "Test Direct Debit of customers", "bank_account_link": "variable", - "payment_method_id": cls.env.ref( - "account.account_payment_method_manual_in" - ).id, + "payment_method_id": cls.payment_method_in.id, "company_id": cls.company.id, } ) diff --git a/account_payment_order/tests/test_payment_order_outbound.py b/account_payment_order/tests/test_payment_order_outbound.py index f922d612fc5..62702142110 100644 --- a/account_payment_order/tests/test_payment_order_outbound.py +++ b/account_payment_order/tests/test_payment_order_outbound.py @@ -5,7 +5,7 @@ from datetime import date, datetime, timedelta -from odoo import fields +from odoo import Command, fields from odoo.exceptions import UserError, ValidationError from odoo.tests import Form, tagged @@ -42,14 +42,20 @@ def setUpClass(cls, chart_template_ref=None): "account_type": "expense", } ) + cls.payment_method_out = cls.env["account.payment.method"].create( + { + "name": "test outbound payment order ok", + "code": "test_manual", + "payment_type": "outbound", + "payment_order_ok": True, + } + ) cls.mode = cls.env["account.payment.mode"].create( { "name": "Test Credit Transfer to Suppliers", "company_id": cls.company.id, "bank_account_link": "variable", - "payment_method_id": cls.env.ref( - "account.account_payment_method_manual_out" - ).id, + "payment_method_id": cls.payment_method_out.id, } ) cls.creation_mode = cls.env["account.payment.mode"].create( @@ -57,14 +63,18 @@ def setUpClass(cls, chart_template_ref=None): "name": "Test Direct Debit of suppliers from Société Générale", "company_id": cls.company.id, "bank_account_link": "variable", - "payment_method_id": cls.env.ref( - "account.account_payment_method_manual_out" - ).id, + "payment_method_id": cls.payment_method_out.id, } ) cls.invoice = cls._create_supplier_invoice(cls, "F1242") cls.invoice_02 = cls._create_supplier_invoice(cls, "F1243") cls.bank_journal = cls.company_data["default_journal_bank"] + cls.env["account.payment.method.line"].create( + { + "journal_id": cls.bank_journal.id, + "payment_method_id": cls.payment_method_out.id, + } + ) # Make sure no other payment orders are in the DB cls.domain = [ ("state", "=", "draft"), @@ -82,9 +92,7 @@ def _create_supplier_invoice(self, ref): "payment_mode_id": self.mode.id, "invoice_date": fields.Date.today(), "invoice_line_ids": [ - ( - 0, - None, + Command.create( { "product_id": self.env.ref("product.product_product_4").id, "quantity": 1.0, @@ -109,9 +117,7 @@ def _create_supplier_refund(self, move, manual=False): "payment_mode_id": self.mode.id, "invoice_date": fields.Date.today(), "invoice_line_ids": [ - ( - 0, - None, + Command.create( { "product_id": self.env.ref("product.product_product_4").id, "quantity": 1.0, @@ -185,7 +191,6 @@ def order_creation(self, date_prefered): order.draft2open() order.payment_mode_id = self.mode.id - order.payment_mode_id_change() self.assertEqual(order.journal_id.id, self.bank_journal.id) self.assertEqual(len(order.payment_line_ids), 0) @@ -201,7 +206,6 @@ def order_creation(self, date_prefered): ) ) line_create.payment_mode = "any" - line_create.move_line_filters_change() line_create.populate() line_create.create_payment_lines() line_created_due = ( diff --git a/account_payment_order/views/account_move_line.xml b/account_payment_order/views/account_move_line.xml index 0e712d67773..45df5b2518a 100644 --- a/account_payment_order/views/account_move_line.xml +++ b/account_payment_order/views/account_move_line.xml @@ -5,19 +5,6 @@ License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). --> - - account_payment_order.move_line_form - account.move.line - - - - - - - account.move.line.form.no_edit diff --git a/account_payment_order/views/account_payment_line.xml b/account_payment_order/views/account_payment_line.xml index 38f5160a097..40fe87b86bc 100644 --- a/account_payment_order/views/account_payment_line.xml +++ b/account_payment_order/views/account_payment_line.xml @@ -19,10 +19,6 @@ domain="[('reconciled','=', False), ('account_id.reconcile', '=', True)] " /> - - - - + + + + @@ -45,7 +45,12 @@ - + diff --git a/account_payment_order/views/account_payment_method.xml b/account_payment_order/views/account_payment_method.xml index 766636aa238..aad6314f718 100644 --- a/account_payment_order/views/account_payment_method.xml +++ b/account_payment_order/views/account_payment_method.xml @@ -13,8 +13,21 @@ /> - + + + account.payment.method + + + + + + + + diff --git a/account_payment_order/views/account_payment_mode.xml b/account_payment_order/views/account_payment_mode.xml index 0983aa20914..eb5fdee74fa 100644 --- a/account_payment_order/views/account_payment_mode.xml +++ b/account_payment_order/views/account_payment_mode.xml @@ -23,6 +23,10 @@ /> + - + - + - - + + - - - + + + + + + + @@ -164,11 +171,7 @@ - + - - - - ir.attachment.simplified.form - ir.attachment - - -
- - -
-
-
-
diff --git a/account_payment_order/wizard/account_payment_line_create.py b/account_payment_order/wizard/account_payment_line_create.py index 0759c5ef6d1..217ba6ffed7 100644 --- a/account_payment_order/wizard/account_payment_line_create.py +++ b/account_payment_order/wizard/account_payment_line_create.py @@ -26,7 +26,7 @@ class AccountPaymentLineCreate(models.TransientModel): selection=[("posted", "All Posted Entries"), ("all", "All Entries")], string="Target Moves", ) - allow_blocked = fields.Boolean(string="Allow Litigation Move Lines") + allow_blocked = fields.Boolean(string="Allow Litigation Journal Items") invoice = fields.Boolean(string="Linked to an Invoice or Refund") date_type = fields.Selection( selection=[("due", "Due Date"), ("move", "Move Date")], @@ -38,13 +38,20 @@ class AccountPaymentLineCreate(models.TransientModel): payment_mode = fields.Selection( selection=[("same", "Same"), ("same_or_null", "Same or Empty"), ("any", "Any")], ) + eligible_move_line_ids = fields.Many2many( + comodel_name="account.move.line", + compute="_compute_eligible_move_line_ids", + string="Eligible Journal Items", + ) move_line_ids = fields.Many2many( - comodel_name="account.move.line", string="Move Lines" + comodel_name="account.move.line", + string="Journal Items", + domain="[('id', 'in', eligible_move_line_ids)]", ) @api.model def default_get(self, field_list): - res = super(AccountPaymentLineCreate, self).default_get(field_list) + res = super().default_get(field_list) context = self.env.context assert ( context.get("active_model") == "account.payment.order" @@ -163,7 +170,7 @@ def populate(self): } return action - @api.onchange( + @api.depends( "date_type", "move_date", "due_date", @@ -174,10 +181,11 @@ def populate(self): "payment_mode", "partner_ids", ) - def move_line_filters_change(self): - domain = self._prepare_move_line_domain() - res = {"domain": {"move_line_ids": domain}} - return res + def _compute_eligible_move_line_ids(self): + for wiz in self: + domain = wiz._prepare_move_line_domain() + lines = self.env["account.move.line"].search(domain) + wiz.eligible_move_line_ids = lines.ids def create_payment_lines(self): if self.move_line_ids: diff --git a/account_payment_order/wizard/account_payment_line_create_view.xml b/account_payment_order/wizard/account_payment_line_create_view.xml index 39fd95dcf48..b64acd7d40e 100644 --- a/account_payment_order/wizard/account_payment_line_create_view.xml +++ b/account_payment_order/wizard/account_payment_line_create_view.xml @@ -12,6 +12,7 @@
+ = 0)", + "The number of digits for customer bank account must be positive or null.", + ) + ] diff --git a/account_payment_partner/models/res_partner_bank.py b/account_payment_partner/models/res_partner_bank.py new file mode 100644 index 00000000000..b6f1c9b8e67 --- /dev/null +++ b/account_payment_partner/models/res_partner_bank.py @@ -0,0 +1,64 @@ +# Copyright 2023 Akretion France (https://www.akretion.com/) +# @author: Alexis de Lattre +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +from odoo import api, fields, models + +SCRAMBLE_CHAR = "*" + + +class ResPartnerBank(models.Model): + _inherit = "res.partner.bank" + + def _do_scramble( + self, letter, position_from_start, position_from_end, first_n, last_n + ): + if first_n and position_from_start <= first_n: + return False + elif last_n and position_from_end <= last_n: + return False + return True + + def _scramble_acc_number(self, acc_number, first_n, last_n): + # scramble account number and while keeping spaces + scrambled_number_list = list(acc_number) + position_from_start = 1 + position_from_end = len(acc_number.replace(" ", "")) + position = 0 + for letter in acc_number: + if letter != " ": + do_scramble = self._do_scramble( + letter, position_from_start, position_from_end, first_n, last_n + ) + if do_scramble: + scrambled_number_list[position] = SCRAMBLE_CHAR + position_from_start += 1 + position_from_end -= 1 + position += 1 + scrambled_acc_number = "".join(scrambled_number_list) + return scrambled_acc_number + + def get_acc_number(self, show_policy, show_chars=4): + self.ensure_one() + assert show_policy in ("full", "first", "last", "first_last", "no") + if not self.acc_number or show_policy == "no": + return "" + if show_policy == "full": + res = self.acc_number + elif show_policy == "first": + res = self._scramble_acc_number(self.acc_number, show_chars, 0) + elif show_policy == "last": + res = self._scramble_acc_number(self.acc_number, 0, show_chars) + elif show_policy == "first_last": + res = self._scramble_acc_number(self.acc_number, show_chars, show_chars) + return res + + acc_number_scrambled = fields.Char(compute="_compute_acc_number_scrambled") + + @api.depends("acc_number") + @api.depends_context("show_bank_account", "show_bank_account_chars") + def _compute_acc_number_scrambled(self): + policy = self.env.context.get("show_bank_account", "first_last") + show_chars = self.env.context.get("show_bank_account_chars", 4) + for rec in self: + rec.acc_number_scrambled = rec.get_acc_number(policy, show_chars=show_chars) diff --git a/account_payment_partner/reports/account_invoice_report.py b/account_payment_partner/reports/account_invoice_report.py index 134f386715c..1e48bdf695f 100644 --- a/account_payment_partner/reports/account_invoice_report.py +++ b/account_payment_partner/reports/account_invoice_report.py @@ -9,7 +9,6 @@ class AccountInvoiceReport(models.Model): payment_mode_id = fields.Many2one( comodel_name="account.payment.mode", - string="Payment mode", readonly=True, ) diff --git a/account_payment_partner/reports/account_invoice_report_view.xml b/account_payment_partner/reports/account_invoice_report_view.xml index fd9aa61829c..4932639b71d 100644 --- a/account_payment_partner/reports/account_invoice_report_view.xml +++ b/account_payment_partner/reports/account_invoice_report_view.xml @@ -3,7 +3,7 @@ Copyright 2021 Tecnativa - Víctor Martínez License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). --> - + account.invoice.report.search account.invoice.report diff --git a/account_payment_partner/tests/test_account_payment_partner.py b/account_payment_partner/tests/test_account_payment_partner.py index 517746b275a..2daca861a5b 100644 --- a/account_payment_partner/tests/test_account_payment_partner.py +++ b/account_payment_partner/tests/test_account_payment_partner.py @@ -2,8 +2,8 @@ # Copyright 2021 Tecnativa - Víctor Martínez # License AGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html). -from odoo import _, fields -from odoo.exceptions import UserError, ValidationError +from odoo import Command, fields +from odoo.exceptions import UserError from odoo.fields import Date from odoo.tests.common import Form, TransactionCase @@ -24,16 +24,8 @@ def setUpClass(cls): cls.company = cls.env.ref("base.main_company") cls.company_2 = cls.env["res.company"].create({"name": "Company 2"}) - charts = cls.env["account.chart.template"].search([]) - if charts: - cls.chart = charts[0] - else: - raise ValidationError(_("No Chart of Account Template has been defined !")) - old_company = cls.env.user.company_id - cls.env.user.company_id = cls.company_2.id - cls.env.ref("base.user_admin").company_ids = [(4, cls.company_2.id)] - cls.chart.try_loading() - cls.env.user.company_id = old_company.id + cls.chart = cls.env["account.chart.template"].search([], limit=1) + cls.chart._load(cls.company_2) # refs cls.manual_out = cls.env.ref("account.account_payment_method_manual_out") @@ -83,10 +75,9 @@ def setUpClass(cls): "name": "Suppliers Bank 1", "bank_account_link": "variable", "payment_method_id": cls.manual_out.id, - "show_bank_account_from_journal": True, "company_id": cls.company.id, "fixed_journal_id": cls.journal_c1.id, - "variable_journal_ids": [(6, 0, [cls.journal_c1.id])], + "variable_journal_ids": [Command.set([cls.journal_c1.id])], } ) @@ -97,7 +88,7 @@ def setUpClass(cls): "payment_method_id": cls.manual_out.id, "company_id": cls.company_2.id, "fixed_journal_id": cls.journal_c2.id, - "variable_journal_ids": [(6, 0, [cls.journal_c2.id])], + "variable_journal_ids": [Command.set([cls.journal_c2.id])], } ) @@ -109,7 +100,7 @@ def setUpClass(cls): "company_id": cls.company.id, "fixed_journal_id": cls.journal_c1.id, "refund_payment_mode_id": cls.supplier_payment_mode.id, - "variable_journal_ids": [(6, 0, [cls.journal_c1.id])], + "variable_journal_ids": [Command.set([cls.journal_c1.id])], } ) cls.supplier_payment_mode.write( @@ -185,17 +176,22 @@ def setUpClass(cls): ) def _create_invoice(self, default_move_type, partner): - move_form = Form( - self.env["account.move"].with_context(default_move_type=default_move_type) + line_vals = { + "display_type": "product", + "product_id": self.env.ref("product.product_product_4").id, + "name": "product that cost 100", + "quantity": 1.0, + "price_unit": 100.0, + } + invoice = self.move_model.create( + { + "move_type": default_move_type, + "partner_id": partner.id, + "invoice_date": Date.today(), + "invoice_line_ids": [Command.create(line_vals)], + } ) - move_form.partner_id = partner - move_form.invoice_date = Date.today() - with move_form.invoice_line_ids.new() as line_form: - line_form.product_id = self.env.ref("product.product_product_4") - line_form.name = "product that cost 100" - line_form.quantity = 1.0 - line_form.price_unit = 100.0 - return move_form.save() + return invoice def test_create_partner(self): customer = ( @@ -328,27 +324,23 @@ def test_payment_mode_constrains_02(self): "ref": "reference", "state": "draft", "invoice_line_ids": [ - ( - 0, - 0, + Command.create( { "account_id": self.invoice_account.id, "credit": 1000, "debit": 0, "name": "Test", "ref": "reference", - }, + } ), - ( - 0, - 0, + Command.create( { "account_id": self.invoice_line_account.id, "credit": 0, "debit": 1000, "name": "Test", "ref": "reference", - }, + } ), ], } @@ -474,13 +466,12 @@ def test_print_report(self): res = str(report._render_qweb_html(report.id, self.supplier_invoice.ids)[0]) # self.assertIn(self.supplier_bank.acc_number, res) payment_mode = self.supplier_payment_mode - payment_mode.show_bank_account_from_journal = True self.supplier_invoice.payment_mode_id = payment_mode.id self.supplier_invoice.partner_bank_id = False res = str(report._render_qweb_html(report.id, self.supplier_invoice.ids)[0]) self.assertIn(self.journal_c1.bank_acc_number, res) payment_mode.bank_account_link = "variable" - payment_mode.variable_journal_ids = [(6, 0, self.journal.ids)] + payment_mode.variable_journal_ids = [Command.set(self.journal.ids)] res = str(report._render_qweb_html(report.id, self.supplier_invoice.ids)[0]) self.assertIn(self.journal_bank.acc_number, res) @@ -554,3 +545,41 @@ def test_account_move_payment_mode_id_default(self): ) ) self.assertEqual(move_form.payment_mode_id, payment_mode) + + def test_get_acc_number(self): + partner = self.env["res.partner"].create({"name": "Odoo Community Association"}) + pbank = self.partner_bank_model.create( + { + "acc_number": "FR65 9999 8888 7777 6666 5555 444", + "partner_id": partner.id, + } + ) + acc_number = pbank.sanitized_acc_number + self.assertEqual(acc_number, "FR6599998888777766665555444") + self.assertEqual( + pbank.get_acc_number("full"), "FR65 9999 8888 7777 6666 5555 444" + ) + self.assertEqual( + pbank.get_acc_number("first", 4), "FR65 **** **** **** **** **** ***" + ) + self.assertEqual( + pbank.get_acc_number("first", 2), "FR** **** **** **** **** **** ***" + ) + self.assertEqual( + pbank.get_acc_number("last", 4), "**** **** **** **** **** ***5 444" + ) + self.assertEqual( + pbank.get_acc_number("first_last", 4), "FR65 **** **** **** **** ***5 444" + ) + self.assertEqual( + pbank.get_acc_number("first_last", 5), "FR65 9*** **** **** **** **55 444" + ) + self.assertEqual( + pbank.acc_number_scrambled, "FR65 **** **** **** **** ***5 444" + ) + self.assertEqual( + pbank.with_context( + show_bank_account="last", show_bank_account_chars=6 + ).acc_number_scrambled, + "**** **** **** **** **** *555 444", + ) diff --git a/account_payment_partner/views/account_move_view.xml b/account_payment_partner/views/account_move_view.xml index 4f2ac00a179..6cc792f91b5 100644 --- a/account_payment_partner/views/account_move_view.xml +++ b/account_payment_partner/views/account_move_view.xml @@ -63,6 +63,13 @@ [('partner_id', '=', partner_bank_filter_type_domain), '|',('company_id', '=', company_id),('company_id', '=', False)] + + {'invisible': [('move_type', '=', 'out_invoice')]} + + diff --git a/account_payment_partner/views/account_payment_mode.xml b/account_payment_partner/views/account_payment_mode.xml index 86694db227d..b7111890230 100644 --- a/account_payment_partner/views/account_payment_mode.xml +++ b/account_payment_partner/views/account_payment_mode.xml @@ -13,14 +13,10 @@ - diff --git a/account_payment_partner/views/report_invoice.xml b/account_payment_partner/views/report_invoice.xml index 9e395cd1d4b..4ff25b1170c 100644 --- a/account_payment_partner/views/report_invoice.xml +++ b/account_payment_partner/views/report_invoice.xml @@ -17,19 +17,9 @@ t-esc="partner_bank.bank_id.name + ('' if not partner_bank.bank_id.bic else ' (' + partner_bank.bank_id.bic + ')')" /> - - - - - - - - - +

From c495144c06e10f625d76f96e6624f8666ca93f36 Mon Sep 17 00:00:00 2001 From: Alexis de Lattre Date: Tue, 7 May 2024 13:41:09 +0200 Subject: [PATCH 115/115] Add support for regulatory reporting in PAIN files Harmonize values for reference_type on account.move and communication_type on account.payment.line: 2 possible values : free and structured (migration script provided) Simplify code for reference. --- account_banking_mandate/README.rst | 2 +- .../views/account_banking_mandate_view.xml | 2 +- .../views/res_partner_bank_view.xml | 1 - account_banking_pain_base/__manifest__.py | 2 + account_banking_pain_base/models/__init__.py | 1 + .../account_pain_regulatory_reporting.py | 49 ++++++++++++ .../models/account_payment_line.py | 48 +++++++++-- .../models/account_payment_order.py | 19 ++--- .../security/ir.model.access.csv | 3 + .../account_pain_regulatory_reporting.xml | 80 +++++++++++++++++++ .../views/account_payment_line.xml | 10 +++ .../models/account_payment_order.py | 9 ++- .../tests/test_sct.py | 6 +- .../demo/sepa_direct_debit_demo.xml | 5 +- .../models/account_payment_order.py | 10 +-- .../tests/test_sdd.py | 6 +- account_payment_order/__manifest__.py | 2 +- .../migrations/16.0.2.0.0/pre-migration.py | 14 ++++ account_payment_order/models/account_move.py | 9 ++- .../models/account_move_line.py | 2 +- .../models/account_payment_line.py | 19 ++--- .../models/account_payment_order.py | 5 -- .../tests/test_payment_order_outbound.py | 11 +-- ...ount_invoice_view.xml => account_move.xml} | 7 +- .../wizard/account_payment_line_create.py | 1 - ...test_account_payment_order_notification.py | 1 + 26 files changed, 251 insertions(+), 73 deletions(-) create mode 100644 account_banking_pain_base/models/account_pain_regulatory_reporting.py create mode 100644 account_banking_pain_base/security/ir.model.access.csv create mode 100644 account_banking_pain_base/views/account_pain_regulatory_reporting.xml rename account_payment_order/views/{account_invoice_view.xml => account_move.xml} (92%) diff --git a/account_banking_mandate/README.rst b/account_banking_mandate/README.rst index 767034550a9..49f848343dc 100644 --- a/account_banking_mandate/README.rst +++ b/account_banking_mandate/README.rst @@ -7,7 +7,7 @@ Account Banking Mandate !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:a2e985ff665c753c4fc04968eca91622f81cf5c595fd9d26967c2aefea3556a3 + !! source digest: sha256:65a46ee9619fe8b739d955186a289a1fe533a2aab227896d9eb915f21c05ce58 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Production%2FStable-green.png diff --git a/account_banking_mandate/views/account_banking_mandate_view.xml b/account_banking_mandate/views/account_banking_mandate_view.xml index 5b2335e9072..ebde21253f9 100644 --- a/account_banking_mandate/views/account_banking_mandate_view.xml +++ b/account_banking_mandate/views/account_banking_mandate_view.xml @@ -50,7 +50,7 @@ diff --git a/account_banking_mandate/views/res_partner_bank_view.xml b/account_banking_mandate/views/res_partner_bank_view.xml index 1f1abe72cb2..c8ccadcf45e 100644 --- a/account_banking_mandate/views/res_partner_bank_view.xml +++ b/account_banking_mandate/views/res_partner_bank_view.xml @@ -15,7 +15,6 @@ name="mandate_ids" context="{'mandate_bank_partner_view': True}" nolabel="1" - colspan="4" />
diff --git a/account_banking_pain_base/__manifest__.py b/account_banking_pain_base/__manifest__.py index c00bebceab0..39303887640 100644 --- a/account_banking_pain_base/__manifest__.py +++ b/account_banking_pain_base/__manifest__.py @@ -16,11 +16,13 @@ "external_dependencies": {"python": ["unidecode", "lxml"]}, "data": [ "security/security.xml", + "security/ir.model.access.csv", "views/account_payment_line.xml", "views/account_payment_order.xml", "views/account_payment_mode.xml", "views/res_config_settings.xml", "views/account_payment_method.xml", + "views/account_pain_regulatory_reporting.xml", ], "post_init_hook": "set_default_initiating_party", "installable": True, diff --git a/account_banking_pain_base/models/__init__.py b/account_banking_pain_base/models/__init__.py index 4f1503393fe..e66683d13b0 100644 --- a/account_banking_pain_base/models/__init__.py +++ b/account_banking_pain_base/models/__init__.py @@ -1,6 +1,7 @@ from . import account_payment_line from . import account_payment_order from . import account_payment_mode +from . import account_pain_regulatory_reporting from . import res_company from . import res_config_settings from . import account_payment_method diff --git a/account_banking_pain_base/models/account_pain_regulatory_reporting.py b/account_banking_pain_base/models/account_pain_regulatory_reporting.py new file mode 100644 index 00000000000..ba534128db5 --- /dev/null +++ b/account_banking_pain_base/models/account_pain_regulatory_reporting.py @@ -0,0 +1,49 @@ +# Copyright 2023 Akretion France (http://www.akretion.com/) +# @author: Alexis de Lattre +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo import api, fields, models + + +class AccountPainRegulatoryReporting(models.Model): + _name = "account.pain.regulatory.reporting" + _description = "Regulatory Reporting Codes for ISO 20022/PAIN banking standard" + _order = "code, country_id" + + code = fields.Char(required=True, copy=False, size=10) + name = fields.Char(required=True, translate=True, copy=False) + country_id = fields.Many2one("res.country", ondelete="restrict", required=False) + active = fields.Boolean(default=True) + + _sql_constraints = [ + ( + "code_country_unique", + "unique(code, country_id)", + "This code already exists for that country.", + ) + ] + + @api.depends("code", "name") + def name_get(self): + res = [] + for rec in self: + res.append((rec.id, "[%s] %s" % (rec.code, rec.name))) + return res + + def _name_search( + self, name="", args=None, operator="ilike", limit=100, name_get_uid=None + ): + if args is None: + args = [] + ids = [] + if name and operator == "ilike": + ids = list(self._search([("code", "=", name)] + args, limit=limit)) + if ids: + return ids + return super()._name_search( + name=name, + args=args, + operator=operator, + limit=limit, + name_get_uid=name_get_uid, + ) diff --git a/account_banking_pain_base/models/account_payment_line.py b/account_banking_pain_base/models/account_payment_line.py index 2e3d0314753..ebb85f2dbd1 100644 --- a/account_banking_pain_base/models/account_payment_line.py +++ b/account_banking_pain_base/models/account_payment_line.py @@ -3,6 +3,8 @@ # Copyright 2014-2022 Tecnativa - Pedro M. Baeza # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). +from lxml import etree + from odoo import api, fields, models @@ -163,18 +165,50 @@ class AccountPaymentLine(models.Model): help="If neither your bank nor your local regulations oblige you to " "set the category purpose, leave the field empty.", ) + # Regulatory Reporting codes are provided by national central banks for the countries + # where this data is required in specific circumstances + regulatory_reporting_id = fields.Many2one( + "account.pain.regulatory.reporting", + ondelete="restrict", + domain="[('country_id', 'in', (False, company_country_id))]", + ) + company_country_id = fields.Many2one(related="company_id.country_id") # PAIN allows 140 characters communication = fields.Char(size=140) - # The field struct_communication_type has been dropped in v9 - # We now use communication_type ; you should add an option - # in communication_type with selection_add=[] - communication_type = fields.Selection( - selection_add=[("ISO", "ISO")], ondelete={"ISO": "cascade"} - ) @api.model def _get_payment_line_grouping_fields(self): """Add specific PAIN fields to the grouping criteria.""" res = super()._get_payment_line_grouping_fields() - res += ["priority", "local_instrument", "category_purpose", "purpose"] + res += [ + "priority", + "local_instrument", + "category_purpose", + "purpose", + "regulatory_reporting_id", + ] return res + + def generate_regulatory_reporting(self, parent_node, gen_args): + if self.regulatory_reporting_id: + regulatory_reporting = etree.SubElement(parent_node, "RgltryRptg") + regulatory_reporting_details = etree.SubElement( + regulatory_reporting, "Dtls" + ) + regulatory_reporting_details_code = etree.SubElement( + regulatory_reporting_details, "Cd" + ) + regulatory_reporting_details_code.text = self.env[ + "account.payment.order" + ]._prepare_field( + "Regulatory Details Code", + "line.regulatory_reporting_id.code", + {"line": self}, + 10, + gen_args=gen_args, + ) + + def generate_purpose(self, parent_node): + if self.purpose: + purpose = etree.SubElement(parent_node, "Purp") + etree.SubElement(purpose, "Cd").text = self.purpose diff --git a/account_banking_pain_base/models/account_payment_order.py b/account_banking_pain_base/models/account_payment_order.py index 990507247dd..b9af0d1f75c 100644 --- a/account_banking_pain_base/models/account_payment_order.py +++ b/account_banking_pain_base/models/account_payment_order.py @@ -285,7 +285,6 @@ def _validate_xml(self, xml_string, gen_args): ) % str(e) ) from None - return True def finalize_sepa_file_creation(self, xml_root, gen_args): xml_string = etree.tostring( @@ -461,7 +460,6 @@ def generate_initiating_party_block(self, parent_node, gen_args): ) % self.company_id.name ) - return True @api.model def generate_party_agent( @@ -495,7 +493,6 @@ def generate_party_agent( # for Credit Transfers, in the 'C' block, if BIC is not provided, # we should not put the 'Creditor Agent' block at all, # as per the guidelines of the EPC - return True @api.model def generate_party_id(self, parent_node, party_type, partner): @@ -519,7 +516,9 @@ def generate_party_acc_number( party_account_other = etree.SubElement(party_account_id, "Othr") party_account_other_id = etree.SubElement(party_account_other, "Id") party_account_other_id.text = partner_bank.sanitized_acc_number - return True + if party_type == "Dbtr" and partner_bank.currency_id: + party_account_current = etree.SubElement(party_account, "Ccy") + party_account_current.text = partner_bank.currency_id.name @api.model def generate_address_block(self, parent_node, partner, gen_args): @@ -567,7 +566,6 @@ def generate_address_block(self, parent_node, partner, gen_args): gen_args=gen_args, ) adrline2.text = val - return True @api.model def generate_party_block( @@ -625,13 +623,12 @@ def generate_party_block( gen_args, bank_line=bank_line, ) - return True @api.model def generate_remittance_info_block(self, parent_node, line, gen_args): remittance_info = etree.SubElement(parent_node, "RmtInf") communication_type = line.payment_line_ids[:1].communication_type - if communication_type == "normal": + if communication_type == "free": remittance_info_unstructured = etree.SubElement(remittance_info, "Ustrd") remittance_info_unstructured.text = self._prepare_field( "Remittance Unstructured Information", @@ -640,7 +637,7 @@ def generate_remittance_info_block(self, parent_node, line, gen_args): 140, gen_args=gen_args, ) - else: + elif communication_type == "structured": remittance_info_structured = etree.SubElement(remittance_info, "Strd") creditor_ref_information = etree.SubElement( remittance_info_structured, "CdtrRefInf" @@ -657,7 +654,7 @@ def generate_remittance_info_block(self, parent_node, line, gen_args): creditor_ref_info_type_issuer = etree.SubElement( creditor_ref_info_type, "Issr" ) - creditor_ref_info_type_issuer.text = communication_type + creditor_ref_info_type_issuer.text = "ISO" creditor_reference = etree.SubElement( creditor_ref_information, "CdtrRef" ) @@ -676,7 +673,7 @@ def generate_remittance_info_block(self, parent_node, line, gen_args): creditor_ref_info_type_issuer = etree.SubElement( creditor_ref_info_type, "Issr" ) - creditor_ref_info_type_issuer.text = communication_type + creditor_ref_info_type_issuer.text = "ISO" creditor_reference = etree.SubElement(creditor_ref_information, "Ref") @@ -687,7 +684,6 @@ def generate_remittance_info_block(self, parent_node, line, gen_args): 35, gen_args=gen_args, ) - return True @api.model def generate_creditor_scheme_identification( @@ -709,4 +705,3 @@ def generate_creditor_scheme_identification( csi_scheme_name = etree.SubElement(csi_other, "SchmeNm") csi_scheme_name_proprietary = etree.SubElement(csi_scheme_name, "Prtry") csi_scheme_name_proprietary.text = scheme_name_proprietary - return True diff --git a/account_banking_pain_base/security/ir.model.access.csv b/account_banking_pain_base/security/ir.model.access.csv new file mode 100644 index 00000000000..c866ab33ea3 --- /dev/null +++ b/account_banking_pain_base/security/ir.model.access.csv @@ -0,0 +1,3 @@ +id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink +access_account_pain_regulatory_reporting_read,Read access on account.pain.regulatory.reporting,model_account_pain_regulatory_reporting,base.group_user,1,0,0,0 +access_account_pain_regulatory_reporting_full,Full access on account.pain.regulatory.reporting,model_account_pain_regulatory_reporting,account.group_account_manager,1,1,1,1 diff --git a/account_banking_pain_base/views/account_pain_regulatory_reporting.xml b/account_banking_pain_base/views/account_pain_regulatory_reporting.xml new file mode 100644 index 00000000000..5a702388643 --- /dev/null +++ b/account_banking_pain_base/views/account_pain_regulatory_reporting.xml @@ -0,0 +1,80 @@ + + + + + + account.pain.regulatory.reporting + + + + + + + + + + + + + + + account.pain.regulatory.reporting + + + + + + + + + + + account.pain.regulatory.reporting + + + + + + + + + + + + + + + PAIN Regulatory Reporting + account.pain.regulatory.reporting + tree,form + + + + + diff --git a/account_banking_pain_base/views/account_payment_line.xml b/account_banking_pain_base/views/account_payment_line.xml index 918050524a7..6ae213cd6fe 100644 --- a/account_banking_pain_base/views/account_payment_line.xml +++ b/account_banking_pain_base/views/account_payment_line.xml @@ -17,6 +17,11 @@ + +
@@ -30,6 +35,11 @@ + + + + + diff --git a/account_banking_sepa_credit_transfer/models/account_payment_order.py b/account_banking_sepa_credit_transfer/models/account_payment_order.py index ebd4047408c..35aa61dc9d4 100644 --- a/account_banking_sepa_credit_transfer/models/account_payment_order.py +++ b/account_banking_sepa_credit_transfer/models/account_payment_order.py @@ -191,10 +191,11 @@ def generate_payment_file(self): # noqa: C901 gen_args, line, ) - line_purpose = line.payment_line_ids[:1].purpose - if line_purpose: - purpose = etree.SubElement(credit_transfer_transaction_info, "Purp") - etree.SubElement(purpose, "Cd").text = line_purpose + payment_line = line.payment_line_ids[0] + payment_line.generate_purpose(credit_transfer_transaction_info) + payment_line.generate_regulatory_reporting( + credit_transfer_transaction_info, gen_args + ) self.generate_remittance_info_block( credit_transfer_transaction_info, line, gen_args ) diff --git a/account_banking_sepa_credit_transfer/tests/test_sct.py b/account_banking_sepa_credit_transfer/tests/test_sct.py index 8096c703f26..5552133d58f 100644 --- a/account_banking_sepa_credit_transfer/tests/test_sct.py +++ b/account_banking_sepa_credit_transfer/tests/test_sct.py @@ -231,7 +231,7 @@ def check_eur_currency_sct(self): ), 0, ) - self.assertEqual(partner1_pay_line1.communication_type, "normal") + self.assertEqual(partner1_pay_line1.communication_type, "free") self.assertEqual(partner1_pay_line1.communication, "F1341") self.payment_order.draft2open() self.assertEqual(self.payment_order.state, "open") @@ -322,7 +322,7 @@ def test_usd_currency_sct(self): ), 0, ) - self.assertEqual(partner2_pay_line1.communication_type, "normal") + self.assertEqual(partner2_pay_line1.communication_type, "free") self.assertEqual(partner2_pay_line1.communication, "Inv9032") self.payment_order.draft2open() self.assertEqual(self.payment_order.state, "open") @@ -392,7 +392,7 @@ def create_invoice( } data = { "partner_id": partner_id, - "reference_type": "none", + "reference_type": "free", "ref": reference, "currency_id": currency_id, "invoice_date": time.strftime("%Y-%m-%d"), diff --git a/account_banking_sepa_direct_debit/demo/sepa_direct_debit_demo.xml b/account_banking_sepa_direct_debit/demo/sepa_direct_debit_demo.xml index 62bcdb05590..7d81acec755 100644 --- a/account_banking_sepa_direct_debit/demo/sepa_direct_debit_demo.xml +++ b/account_banking_sepa_direct_debit/demo/sepa_direct_debit_demo.xml @@ -5,7 +5,10 @@ variable - + FR78ZZZ424242 diff --git a/account_banking_sepa_direct_debit/models/account_payment_order.py b/account_banking_sepa_direct_debit/models/account_payment_order.py index bed20090fcc..78a40afff84 100644 --- a/account_banking_sepa_direct_debit/models/account_payment_order.py +++ b/account_banking_sepa_direct_debit/models/account_payment_order.py @@ -252,11 +252,11 @@ def generate_payment_file(self): gen_args, line, ) - line_purpose = line.payment_line_ids[:1].purpose - if line_purpose: - purpose = etree.SubElement(dd_transaction_info, "Purp") - etree.SubElement(purpose, "Cd").text = line_purpose - + payment_line = line.payment_line_ids[0] + payment_line.generate_purpose(dd_transaction_info) + payment_line.generate_regulatory_reporting( + dd_transaction_info, gen_args + ) self.generate_remittance_info_block(dd_transaction_info, line, gen_args) nb_of_transactions_b.text = str(transactions_count_b) diff --git a/account_banking_sepa_direct_debit/tests/test_sdd.py b/account_banking_sepa_direct_debit/tests/test_sdd.py index 1c25dedf027..2faa6c4ebcb 100644 --- a/account_banking_sepa_direct_debit/tests/test_sdd.py +++ b/account_banking_sepa_direct_debit/tests/test_sdd.py @@ -270,7 +270,7 @@ def check_sdd(self): ), 0, ) - self.assertEqual(partner1_pay_line1.communication_type, "normal") + self.assertEqual(partner1_pay_line1.communication_type, "free") self.assertEqual(partner1_pay_line1.communication, invoice1.name) payment_order._compute_sepa() payment_order.draft2open() @@ -313,7 +313,7 @@ def check_sdd(self): payment_order.generated2uploaded() self.assertEqual(payment_order.state, "uploaded") for inv in [invoice1, invoice2]: - self.assertEqual(inv.payment_state, "in_payment") + self.assertIn(inv.payment_state, ("in_payment", "paid")) self.assertEqual(self.partner2_mandate.recurrent_sequence_type, "recurring") return @@ -327,7 +327,7 @@ def create_invoice(self, partner_id, mandate, price_unit, inv_type="out_invoice" invoice = self.invoice_model.create( { "partner_id": partner_id, - "reference_type": "none", + "reference_type": "free", "currency_id": self.env.ref("base.EUR").id, "move_type": inv_type, "journal_id": self.journal_sale_company_B.id, diff --git a/account_payment_order/__manifest__.py b/account_payment_order/__manifest__.py index 55689467d5b..670acdee688 100644 --- a/account_payment_order/__manifest__.py +++ b/account_payment_order/__manifest__.py @@ -32,7 +32,7 @@ "views/account_payment_order.xml", "views/account_payment_line.xml", "views/account_move_line.xml", - "views/account_invoice_view.xml", + "views/account_move.xml", "data/payment_seq.xml", "report/print_account_payment_order.xml", "report/account_payment_order.xml", diff --git a/account_payment_order/migrations/16.0.2.0.0/pre-migration.py b/account_payment_order/migrations/16.0.2.0.0/pre-migration.py index 309fd42a7aa..39bb190b1bf 100644 --- a/account_payment_order/migrations/16.0.2.0.0/pre-migration.py +++ b/account_payment_order/migrations/16.0.2.0.0/pre-migration.py @@ -11,3 +11,17 @@ def migrate(cr, version): 'ALTER TABLE "account_payment_method" RENAME "payment_order_only" ' 'TO "payment_order_ok"' ) + # Harmonize values for reference_type on account.move + # and communication_type on account.payment.line: + # 2 possible values : free and structured + cr.execute( + "UPDATE account_move SET reference_type='free' WHERE reference_type='none'" + ) + cr.execute( + "UPDATE account_payment_line SET communication_type='free' " + "WHERE communication_type='normal'" + ) + cr.execute( + "UPDATE account_payment_line SET communication_type='structured' " + "WHERE communication_type='ISO'" + ) diff --git a/account_payment_order/models/account_move.py b/account_payment_order/models/account_move.py index 2e20a9cc58a..47a23cfc21f 100644 --- a/account_payment_order/models/account_move.py +++ b/account_payment_order/models/account_move.py @@ -19,13 +19,14 @@ class AccountMove(models.Model): ) payment_order_ok = fields.Boolean(compute="_compute_payment_order_ok") # we restore this field from <=v11 for now for preserving behavior - # TODO: Check if we can remove it and base everything in something at - # payment mode or company level + # in v16, we have a field invoice_reference_type on sale journals + # but it's not relevant because companies don't have a sale journal per country + # and we need it for supplier invoices too reference_type = fields.Selection( - selection=[("none", "Free Reference"), ("structured", "Structured Reference")], + selection=[("free", "Free Reference"), ("structured", "Structured Reference")], readonly=True, states={"draft": [("readonly", False)]}, - default="none", + default="free", ) payment_line_count = fields.Integer(compute="_compute_payment_line_count") diff --git a/account_payment_order/models/account_move_line.py b/account_payment_order/models/account_move_line.py index 232ab1e4ce3..01393ae0677 100644 --- a/account_payment_order/models/account_move_line.py +++ b/account_payment_order/models/account_move_line.py @@ -2,7 +2,7 @@ # © 2014 Serv. Tecnol. Avanzados - Pedro M. Baeza # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). -from odoo import fields, models +from odoo import api, fields, models class AccountMoveLine(models.Model): diff --git a/account_payment_order/models/account_payment_line.py b/account_payment_order/models/account_payment_line.py index 9e0111a1de9..4d27f57c9b4 100644 --- a/account_payment_order/models/account_payment_line.py +++ b/account_payment_order/models/account_payment_line.py @@ -105,7 +105,7 @@ class AccountPaymentLine(models.Model): store=True, readonly=False, precompute=True, - selection=[("normal", "Free")], + selection=[("free", "Free"), ("structured", "Structured")], required=True, ) payment_ids = fields.Many2many( @@ -167,7 +167,7 @@ def payment_line_hashcode(self): values.append(str(self.move_line_id.account_id or False)) # Don't group the payment lines that use a structured communication # otherwise it would break the structured communication system ! - if self.communication_type != "normal": + if self.communication_type != "free": values.append(str(self.id)) return "-".join(values) @@ -175,14 +175,17 @@ def payment_line_hashcode(self): def _compute_payment_line(self): for line in self: communication = False - communication_type = "normal" + communication_type = "free" currency_id = line.company_id.currency_id.id amount_currency = 0.0 move_line = line.move_line_id partner = line.partner_id partner_bank_id = False if move_line: - communication_type, communication = move_line._get_communication() + communication_type = move_line.move_id.reference_type + communication = ( + move_line.move_id._get_payment_order_communication_full() + ) currency_id = move_line.currency_id.id amount_currency = move_line.amount_residual_currency if line.order_id.payment_type == "outbound": @@ -198,14 +201,6 @@ def _compute_payment_line(self): line.partner_id = partner and partner.id or False line.partner_bank_id = partner_bank_id - def invoice_reference_type2communication_type(self): - """This method is designed to be inherited by - localization modules""" - # key = value of 'reference_type' field on account_invoice - # value = value of 'communication_type' field on account_payment_line - res = {"none": "normal", "structured": "structured"} - return res - def draft2open_payment_line_check(self): self.ensure_one() if self.bank_account_required and not self.partner_bank_id: diff --git a/account_payment_order/models/account_payment_order.py b/account_payment_order/models/account_payment_order.py index b25982cf2fd..bed02a47e91 100644 --- a/account_payment_order/models/account_payment_order.py +++ b/account_payment_order/models/account_payment_order.py @@ -329,11 +329,9 @@ def _compute_journal_id(self): def action_uploaded_cancel(self): self.action_cancel() - return True def cancel2draft(self): self.write({"state": "draft"}) - return True def action_cancel(self): # Unreconcile and cancel payments @@ -348,7 +346,6 @@ def action_cancel(self): "generated_user_id": False, } ) - return True def draft2open(self): """ @@ -461,7 +458,6 @@ def draft2open(self): payment_vals.append(paydict["paylines"]._prepare_account_payment_vals()) self.env["account.payment"].create(payment_vals) self.write({"state": "open"}) - return True def generate_payment_file(self): """Returns (payment file as string, filename). @@ -504,7 +500,6 @@ def generated2uploaded(self): self.write( {"state": "uploaded", "date_uploaded": fields.Date.context_today(self)} ) - return True def action_move_journal_line(self): self.ensure_one() diff --git a/account_payment_order/tests/test_payment_order_outbound.py b/account_payment_order/tests/test_payment_order_outbound.py index 62702142110..037f3047aea 100644 --- a/account_payment_order/tests/test_payment_order_outbound.py +++ b/account_payment_order/tests/test_payment_order_outbound.py @@ -310,7 +310,7 @@ def test_invoice_communication_01(self): def test_invoice_communication_02(self): self.invoice.payment_reference = "R1234" self.assertEqual( - "F1242", self.invoice._get_payment_order_communication_direct() + "R1234", self.invoice._get_payment_order_communication_direct() ) def test_invoice_communication_03(self): @@ -438,7 +438,7 @@ def test_supplier_refund_reference(self): self.invoice.payment_reference = "F/1234" self.invoice.action_post() self.assertEqual( - "F1242", self.invoice._get_payment_order_communication_direct() + "F/1234", self.invoice._get_payment_order_communication_direct() ) self.refund = self._create_supplier_refund(self.invoice) with Form(self.refund) as refund_form: @@ -448,7 +448,9 @@ def test_supplier_refund_reference(self): line_form.price_unit = 75.0 self.refund.action_post() - self.assertEqual("R1234", self.refund._get_payment_order_communication_direct()) + self.assertEqual( + "FR/1234", self.refund._get_payment_order_communication_direct() + ) # The user add the outstanding payment to the invoice invoice_line = self.invoice.line_ids.filtered( @@ -470,8 +472,7 @@ def test_supplier_refund_reference(self): self.assertEqual(len(payment_order.payment_line_ids), 1) - self.assertEqual("F1242 R1234", payment_order.payment_line_ids.communication) - self.assertNotIn("FR/1234", payment_order.payment_line_ids.communication) + self.assertEqual("F/1234 FR/1234", payment_order.payment_line_ids.communication) def test_supplier_manual_refund(self): """ diff --git a/account_payment_order/views/account_invoice_view.xml b/account_payment_order/views/account_move.xml similarity index 92% rename from account_payment_order/views/account_invoice_view.xml rename to account_payment_order/views/account_move.xml index a9ceaf6ea70..7252672ea81 100644 --- a/account_payment_order/views/account_invoice_view.xml +++ b/account_payment_order/views/account_move.xml @@ -59,12 +59,7 @@ - + diff --git a/account_payment_order/wizard/account_payment_line_create.py b/account_payment_order/wizard/account_payment_line_create.py index 217ba6ffed7..3fe01f724b8 100644 --- a/account_payment_order/wizard/account_payment_line_create.py +++ b/account_payment_order/wizard/account_payment_line_create.py @@ -190,4 +190,3 @@ def _compute_eligible_move_line_ids(self): def create_payment_lines(self): if self.move_line_ids: self.move_line_ids.create_payment_line_from_move_line(self.order_id) - return True diff --git a/account_payment_order_notification/tests/test_account_payment_order_notification.py b/account_payment_order_notification/tests/test_account_payment_order_notification.py index 43dec66783a..6bdb3847676 100644 --- a/account_payment_order_notification/tests/test_account_payment_order_notification.py +++ b/account_payment_order_notification/tests/test_account_payment_order_notification.py @@ -8,6 +8,7 @@ class TestAccountPaymentOrderNotification(TransactionCase): def setUpClass(cls): super().setUpClass() cls.payment_mode = cls.env.ref("account_payment_mode.payment_mode_inbound_dd1") + cls.payment_mode.payment_order_ok = True cls.partner_a = cls.env["res.partner"].create({"name": "Test partner A"}) cls.partner_a_child = cls.env["res.partner"].create( {