From 76905721e8d1ae9d0ec1b899d6820fd0aed5f469 Mon Sep 17 00:00:00 2001 From: Alexis de Lattre Date: Fri, 24 Feb 2017 08:04:53 +0100 Subject: [PATCH 01/45] Add module l10n_fr_account_tax_unece --- l10n_fr_account_tax_unece/README.rst | 52 +++++++++++++++++ l10n_fr_account_tax_unece/__init__.py | 3 + l10n_fr_account_tax_unece/__manifest__.py | 17 ++++++ l10n_fr_account_tax_unece/post_install.py | 71 +++++++++++++++++++++++ 4 files changed, 143 insertions(+) create mode 100644 l10n_fr_account_tax_unece/README.rst create mode 100644 l10n_fr_account_tax_unece/__init__.py create mode 100644 l10n_fr_account_tax_unece/__manifest__.py create mode 100644 l10n_fr_account_tax_unece/post_install.py diff --git a/l10n_fr_account_tax_unece/README.rst b/l10n_fr_account_tax_unece/README.rst new file mode 100644 index 0000000000..ea0b437f03 --- /dev/null +++ b/l10n_fr_account_tax_unece/README.rst @@ -0,0 +1,52 @@ +.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg + :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html + :alt: License: AGPL-3 + +========================= +L10n FR Account Tax UNECE +========================= + +This module will auto-configure the parameters *UNECE Tax Type* and *UNECE Tax Category* on taxes that come from the *l10n_fr* module. + +Installation +============ + +This module will be installed automatically if the *l10n_fr* and *account_tax_unece* modules are installed. + +Usage +===== + +.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas + :alt: Try me on Runbot + :target: https://runbot.odoo-community.org/runbot/121/10.0 + +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. + +Credits +======= + +Contributors +------------ + +* Alexis de Lattre + +Maintainer +---------- + +.. image:: https://odoo-community.org/logo.png + :alt: Odoo Community Association + :target: https://odoo-community.org + +This module is maintained by the OCA. + +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. + +To contribute to this module, please visit https://odoo-community.org. diff --git a/l10n_fr_account_tax_unece/__init__.py b/l10n_fr_account_tax_unece/__init__.py new file mode 100644 index 0000000000..3e56e21c91 --- /dev/null +++ b/l10n_fr_account_tax_unece/__init__.py @@ -0,0 +1,3 @@ +# -*- coding: utf-8 -*- + +from .post_install import set_unece_on_taxes diff --git a/l10n_fr_account_tax_unece/__manifest__.py b/l10n_fr_account_tax_unece/__manifest__.py new file mode 100644 index 0000000000..7e9cc16c0f --- /dev/null +++ b/l10n_fr_account_tax_unece/__manifest__.py @@ -0,0 +1,17 @@ +# -*- coding: utf-8 -*- +# © 2017 Akretion (Alexis de Lattre ) +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +{ + 'name': u'L10n FR Account Tax UNECE', + 'summary': "Auto-configure UNECE params on French taxes", + 'version': '10.0.1.0.0', + 'category': 'French Localization', + 'author': "Akretion,Odoo Community Association (OCA)", + 'website': 'http://www.akretion.com', + 'license': 'AGPL-3', + 'depends': ['l10n_fr', 'account_tax_unece'], + 'post_init_hook': 'set_unece_on_taxes', + 'installable': True, + 'auto_installable': True, +} diff --git a/l10n_fr_account_tax_unece/post_install.py b/l10n_fr_account_tax_unece/post_install.py new file mode 100644 index 0000000000..8b1440d66d --- /dev/null +++ b/l10n_fr_account_tax_unece/post_install.py @@ -0,0 +1,71 @@ +# -*- coding: utf-8 -*- +# © 2016-2017 Akretion (Alexis de Lattre ) +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo import api, SUPERUSER_ID + +MAPPING = { + '20.0': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, + '20.0-TTC': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, + '10.0': {'categ': 'tax_categ_a', 'type': 'tax_type_vat'}, + '10.0-TTC': {'categ': 'tax_categ_a', 'type': 'tax_type_vat'}, + '8.5': {'categ': 'tax_categ_a', 'type': 'tax_type_vat'}, + '8.5-TTC': {'categ': 'tax_categ_a', 'type': 'tax_type_vat'}, + '5.5': {'categ': 'tax_categ_aa', 'type': 'tax_type_vat'}, + '5.5-TTC': {'categ': 'tax_categ_aa', 'type': 'tax_type_vat'}, + '2.1': {'categ': 'tax_categ_aa', 'type': 'tax_type_vat'}, + '2.1-TTC': {'categ': 'tax_categ_aa', 'type': 'tax_type_vat'}, + 'ACH-20.0': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, + 'ACH-20.0-TTC': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, + 'ACH-10.0': {'categ': 'tax_categ_a', 'type': 'tax_type_vat'}, + 'ACH-10.0-TTC': {'categ': 'tax_categ_a', 'type': 'tax_type_vat'}, + 'ACH-8.5': {'categ': 'tax_categ_a', 'type': 'tax_type_vat'}, + 'ACH-8.5-TTC': {'categ': 'tax_categ_a', 'type': 'tax_type_vat'}, + 'ACH-5.5': {'categ': 'tax_categ_aa', 'type': 'tax_type_vat'}, + 'ACH-5.5-TTC': {'categ': 'tax_categ_aa', 'type': 'tax_type_vat'}, + 'ACH-2.1': {'categ': 'tax_categ_aa', 'type': 'tax_type_vat'}, + 'ACH-2.1-TTC': {'categ': 'tax_categ_aa', 'type': 'tax_type_vat'}, + 'IMMO-20.0': {'categ': False, 'type': 'tax_type_vat'}, + 'IMMO-10.0': {'categ': False, 'type': 'tax_type_vat'}, + 'IMMO-8.5': {'categ': False, 'type': 'tax_type_vat'}, + 'IMMO-5.5': {'categ': False, 'type': 'tax_type_vat'}, + 'IMMO-2.1': {'categ': False, 'type': 'tax_type_vat'}, + 'ACH_UE_due-20.0': {'categ': 'tax_categ_b', 'type': 'tax_type_vat'}, + 'ACH_UE_due-10.0': {'categ': 'tax_categ_b', 'type': 'tax_type_vat'}, + 'ACH_UE_due-8.5': {'categ': 'tax_categ_b', 'type': 'tax_type_vat'}, + 'ACH_UE_due-5.5': {'categ': 'tax_categ_b', 'type': 'tax_type_vat'}, + 'ACH_UE_due-2.1': {'categ': 'tax_categ_b', 'type': 'tax_type_vat'}, + 'ACH_UE_ded.-20.0': {'categ': 'tax_categ_b', 'type': 'tax_type_vat'}, + 'ACH_UE_ded.-10.0': {'categ': 'tax_categ_b', 'type': 'tax_type_vat'}, + 'ACH_UE_ded.-8.5': {'categ': 'tax_categ_b', 'type': 'tax_type_vat'}, + 'ACH_UE_ded.-5.5': {'categ': 'tax_categ_b', 'type': 'tax_type_vat'}, + 'ACH_UE_ded.-2.1': {'categ': 'tax_categ_b', 'type': 'tax_type_vat'}, + 'EXO-0': {'categ': 'tax_categ_e', 'type': 'tax_type_vat'}, + 'EXPORT-0': {'categ': 'tax_categ_g', 'type': 'tax_type_vat'}, + 'UE-0': {'categ': 'tax_categ_g', 'type': 'tax_type_vat'}, + 'IMPORT-0': {'categ': 'tax_categ_g', 'type': 'tax_type_vat'}, + } + + +def set_unece_on_taxes(cr, registry): + with api.Environment.manage(): + env = api.Environment(cr, SUPERUSER_ID, {}) + companies = env['res.company'].search([]) + for company in companies: + if company.country_id and company.country_id != env.ref('base.fr'): + continue + taxes = env['account.tax'].search( + [('company_id', '=', company.id)]) + for tax in taxes: + if tax.description in MAPPING: + tdesc = tax.description + categ_id = MAPPING[tdesc]['categ'] and env.ref( + 'account_tax_unece.' + MAPPING[tdesc]['categ']).id\ + or False + utype_id = env.ref( + 'account_tax_unece.' + MAPPING[tdesc]['type']).id + tax.write({ + 'unece_type_id': utype_id, + 'unece_categ_id': categ_id, + }) + return From 5beb21f75668e273547410b0127464eb597eec2c Mon Sep 17 00:00:00 2001 From: Alexis de Lattre Date: Fri, 28 Jul 2017 09:01:45 +0200 Subject: [PATCH 02/45] l10n_fr_account_tax_unece: adapt default FR tax config to Factur-X specs --- l10n_fr_account_tax_unece/post_install.py | 54 +++++++++++------------ 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/l10n_fr_account_tax_unece/post_install.py b/l10n_fr_account_tax_unece/post_install.py index 8b1440d66d..f249d8e3d1 100644 --- a/l10n_fr_account_tax_unece/post_install.py +++ b/l10n_fr_account_tax_unece/post_install.py @@ -7,42 +7,42 @@ MAPPING = { '20.0': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, '20.0-TTC': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, - '10.0': {'categ': 'tax_categ_a', 'type': 'tax_type_vat'}, - '10.0-TTC': {'categ': 'tax_categ_a', 'type': 'tax_type_vat'}, - '8.5': {'categ': 'tax_categ_a', 'type': 'tax_type_vat'}, - '8.5-TTC': {'categ': 'tax_categ_a', 'type': 'tax_type_vat'}, - '5.5': {'categ': 'tax_categ_aa', 'type': 'tax_type_vat'}, - '5.5-TTC': {'categ': 'tax_categ_aa', 'type': 'tax_type_vat'}, - '2.1': {'categ': 'tax_categ_aa', 'type': 'tax_type_vat'}, - '2.1-TTC': {'categ': 'tax_categ_aa', 'type': 'tax_type_vat'}, + '10.0': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, + '10.0-TTC': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, + '8.5': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, + '8.5-TTC': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, + '5.5': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, + '5.5-TTC': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, + '2.1': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, + '2.1-TTC': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, 'ACH-20.0': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, 'ACH-20.0-TTC': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, - 'ACH-10.0': {'categ': 'tax_categ_a', 'type': 'tax_type_vat'}, - 'ACH-10.0-TTC': {'categ': 'tax_categ_a', 'type': 'tax_type_vat'}, - 'ACH-8.5': {'categ': 'tax_categ_a', 'type': 'tax_type_vat'}, - 'ACH-8.5-TTC': {'categ': 'tax_categ_a', 'type': 'tax_type_vat'}, - 'ACH-5.5': {'categ': 'tax_categ_aa', 'type': 'tax_type_vat'}, - 'ACH-5.5-TTC': {'categ': 'tax_categ_aa', 'type': 'tax_type_vat'}, - 'ACH-2.1': {'categ': 'tax_categ_aa', 'type': 'tax_type_vat'}, - 'ACH-2.1-TTC': {'categ': 'tax_categ_aa', 'type': 'tax_type_vat'}, + 'ACH-10.0': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, + 'ACH-10.0-TTC': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, + 'ACH-8.5': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, + 'ACH-8.5-TTC': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, + 'ACH-5.5': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, + 'ACH-5.5-TTC': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, + 'ACH-2.1': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, + 'ACH-2.1-TTC': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, 'IMMO-20.0': {'categ': False, 'type': 'tax_type_vat'}, 'IMMO-10.0': {'categ': False, 'type': 'tax_type_vat'}, 'IMMO-8.5': {'categ': False, 'type': 'tax_type_vat'}, 'IMMO-5.5': {'categ': False, 'type': 'tax_type_vat'}, 'IMMO-2.1': {'categ': False, 'type': 'tax_type_vat'}, - 'ACH_UE_due-20.0': {'categ': 'tax_categ_b', 'type': 'tax_type_vat'}, - 'ACH_UE_due-10.0': {'categ': 'tax_categ_b', 'type': 'tax_type_vat'}, - 'ACH_UE_due-8.5': {'categ': 'tax_categ_b', 'type': 'tax_type_vat'}, - 'ACH_UE_due-5.5': {'categ': 'tax_categ_b', 'type': 'tax_type_vat'}, - 'ACH_UE_due-2.1': {'categ': 'tax_categ_b', 'type': 'tax_type_vat'}, - 'ACH_UE_ded.-20.0': {'categ': 'tax_categ_b', 'type': 'tax_type_vat'}, - 'ACH_UE_ded.-10.0': {'categ': 'tax_categ_b', 'type': 'tax_type_vat'}, - 'ACH_UE_ded.-8.5': {'categ': 'tax_categ_b', 'type': 'tax_type_vat'}, - 'ACH_UE_ded.-5.5': {'categ': 'tax_categ_b', 'type': 'tax_type_vat'}, - 'ACH_UE_ded.-2.1': {'categ': 'tax_categ_b', 'type': 'tax_type_vat'}, + 'ACH_UE_due-20.0': {'categ': 'tax_categ_ic', 'type': 'tax_type_vat'}, + 'ACH_UE_due-10.0': {'categ': 'tax_categ_ic', 'type': 'tax_type_vat'}, + 'ACH_UE_due-8.5': {'categ': 'tax_categ_ic', 'type': 'tax_type_vat'}, + 'ACH_UE_due-5.5': {'categ': 'tax_categ_ic', 'type': 'tax_type_vat'}, + 'ACH_UE_due-2.1': {'categ': 'tax_categ_ic', 'type': 'tax_type_vat'}, + 'ACH_UE_ded.-20.0': {'categ': 'tax_categ_ic', 'type': 'tax_type_vat'}, + 'ACH_UE_ded.-10.0': {'categ': 'tax_categ_ic', 'type': 'tax_type_vat'}, + 'ACH_UE_ded.-8.5': {'categ': 'tax_categ_ic', 'type': 'tax_type_vat'}, + 'ACH_UE_ded.-5.5': {'categ': 'tax_categ_ic', 'type': 'tax_type_vat'}, + 'ACH_UE_ded.-2.1': {'categ': 'tax_categ_ic', 'type': 'tax_type_vat'}, 'EXO-0': {'categ': 'tax_categ_e', 'type': 'tax_type_vat'}, 'EXPORT-0': {'categ': 'tax_categ_g', 'type': 'tax_type_vat'}, - 'UE-0': {'categ': 'tax_categ_g', 'type': 'tax_type_vat'}, + 'UE-0': {'categ': 'tax_categ_ic', 'type': 'tax_type_vat'}, 'IMPORT-0': {'categ': 'tax_categ_g', 'type': 'tax_type_vat'}, } From 15cd1f8425619fc4f9c8f3160185d0c044f220c0 Mon Sep 17 00:00:00 2001 From: Alexis de Lattre Date: Wed, 6 Sep 2017 22:50:52 +0200 Subject: [PATCH 03/45] l10n_fr_account_tax_unece: Update following a change in the Factur-X beta standard --- l10n_fr_account_tax_unece/post_install.py | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/l10n_fr_account_tax_unece/post_install.py b/l10n_fr_account_tax_unece/post_install.py index f249d8e3d1..86f50641f5 100644 --- a/l10n_fr_account_tax_unece/post_install.py +++ b/l10n_fr_account_tax_unece/post_install.py @@ -30,19 +30,19 @@ 'IMMO-8.5': {'categ': False, 'type': 'tax_type_vat'}, 'IMMO-5.5': {'categ': False, 'type': 'tax_type_vat'}, 'IMMO-2.1': {'categ': False, 'type': 'tax_type_vat'}, - 'ACH_UE_due-20.0': {'categ': 'tax_categ_ic', 'type': 'tax_type_vat'}, - 'ACH_UE_due-10.0': {'categ': 'tax_categ_ic', 'type': 'tax_type_vat'}, - 'ACH_UE_due-8.5': {'categ': 'tax_categ_ic', 'type': 'tax_type_vat'}, - 'ACH_UE_due-5.5': {'categ': 'tax_categ_ic', 'type': 'tax_type_vat'}, - 'ACH_UE_due-2.1': {'categ': 'tax_categ_ic', 'type': 'tax_type_vat'}, - 'ACH_UE_ded.-20.0': {'categ': 'tax_categ_ic', 'type': 'tax_type_vat'}, - 'ACH_UE_ded.-10.0': {'categ': 'tax_categ_ic', 'type': 'tax_type_vat'}, - 'ACH_UE_ded.-8.5': {'categ': 'tax_categ_ic', 'type': 'tax_type_vat'}, - 'ACH_UE_ded.-5.5': {'categ': 'tax_categ_ic', 'type': 'tax_type_vat'}, - 'ACH_UE_ded.-2.1': {'categ': 'tax_categ_ic', 'type': 'tax_type_vat'}, + 'ACH_UE_due-20.0': {'categ': 'tax_categ_k', 'type': 'tax_type_vat'}, + 'ACH_UE_due-10.0': {'categ': 'tax_categ_k', 'type': 'tax_type_vat'}, + 'ACH_UE_due-8.5': {'categ': 'tax_categ_k', 'type': 'tax_type_vat'}, + 'ACH_UE_due-5.5': {'categ': 'tax_categ_k', 'type': 'tax_type_vat'}, + 'ACH_UE_due-2.1': {'categ': 'tax_categ_k', 'type': 'tax_type_vat'}, + 'ACH_UE_ded.-20.0': {'categ': 'tax_categ_k', 'type': 'tax_type_vat'}, + 'ACH_UE_ded.-10.0': {'categ': 'tax_categ_k', 'type': 'tax_type_vat'}, + 'ACH_UE_ded.-8.5': {'categ': 'tax_categ_k', 'type': 'tax_type_vat'}, + 'ACH_UE_ded.-5.5': {'categ': 'tax_categ_k', 'type': 'tax_type_vat'}, + 'ACH_UE_ded.-2.1': {'categ': 'tax_categ_k', 'type': 'tax_type_vat'}, 'EXO-0': {'categ': 'tax_categ_e', 'type': 'tax_type_vat'}, 'EXPORT-0': {'categ': 'tax_categ_g', 'type': 'tax_type_vat'}, - 'UE-0': {'categ': 'tax_categ_ic', 'type': 'tax_type_vat'}, + 'UE-0': {'categ': 'tax_categ_k', 'type': 'tax_type_vat'}, 'IMPORT-0': {'categ': 'tax_categ_g', 'type': 'tax_type_vat'}, } From cea0a01bacc647ec72b4a17c6b59977b76a41f5f Mon Sep 17 00:00:00 2001 From: Alexis de Lattre Date: Sun, 15 Oct 2017 16:24:33 +0200 Subject: [PATCH 04/45] l10n_fr_account_tax_unece: also update tax templates --- l10n_fr_account_tax_unece/__manifest__.py | 1 + .../data/account_tax_template.xml | 215 ++++++++++++++++++ 2 files changed, 216 insertions(+) create mode 100644 l10n_fr_account_tax_unece/data/account_tax_template.xml diff --git a/l10n_fr_account_tax_unece/__manifest__.py b/l10n_fr_account_tax_unece/__manifest__.py index 7e9cc16c0f..f660095833 100644 --- a/l10n_fr_account_tax_unece/__manifest__.py +++ b/l10n_fr_account_tax_unece/__manifest__.py @@ -11,6 +11,7 @@ 'website': 'http://www.akretion.com', 'license': 'AGPL-3', 'depends': ['l10n_fr', 'account_tax_unece'], + 'data': ['data/account_tax_template.xml'], 'post_init_hook': 'set_unece_on_taxes', 'installable': True, 'auto_installable': True, diff --git a/l10n_fr_account_tax_unece/data/account_tax_template.xml b/l10n_fr_account_tax_unece/data/account_tax_template.xml new file mode 100644 index 0000000000..7a41e3cd23 --- /dev/null +++ b/l10n_fr_account_tax_unece/data/account_tax_template.xml @@ -0,0 +1,215 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 7ca0a2fde969a7db732d78cc94a9009055e65245 Mon Sep 17 00:00:00 2001 From: oca-travis Date: Fri, 22 Jun 2018 20:43:20 +0000 Subject: [PATCH 05/45] Update l10n_fr_account_tax_unece.pot --- .../i18n/l10n_fr_account_tax_unece.pot | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 l10n_fr_account_tax_unece/i18n/l10n_fr_account_tax_unece.pot diff --git a/l10n_fr_account_tax_unece/i18n/l10n_fr_account_tax_unece.pot b/l10n_fr_account_tax_unece/i18n/l10n_fr_account_tax_unece.pot new file mode 100644 index 0000000000..b662aad9b3 --- /dev/null +++ b/l10n_fr_account_tax_unece/i18n/l10n_fr_account_tax_unece.pot @@ -0,0 +1,14 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"Last-Translator: <>\n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + From cac989a9ccd662eab0f49438c452309213b90601 Mon Sep 17 00:00:00 2001 From: Alexis de Lattre Date: Wed, 3 Oct 2018 12:27:28 +0200 Subject: [PATCH 06/45] l10n_fr_account_tax_unece: post_install now match on XMLID instead of description No more duplication of information between post_install and XML data --- .../data/account_tax_template.xml | 25 +++++ l10n_fr_account_tax_unece/post_install.py | 95 ++++++++----------- 2 files changed, 65 insertions(+), 55 deletions(-) diff --git a/l10n_fr_account_tax_unece/data/account_tax_template.xml b/l10n_fr_account_tax_unece/data/account_tax_template.xml index 7a41e3cd23..9091c7bab3 100644 --- a/l10n_fr_account_tax_unece/data/account_tax_template.xml +++ b/l10n_fr_account_tax_unece/data/account_tax_template.xml @@ -127,6 +127,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/l10n_fr_account_tax_unece/post_install.py b/l10n_fr_account_tax_unece/post_install.py index 86f50641f5..2b511979a3 100644 --- a/l10n_fr_account_tax_unece/post_install.py +++ b/l10n_fr_account_tax_unece/post_install.py @@ -3,69 +3,54 @@ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). from odoo import api, SUPERUSER_ID - -MAPPING = { - '20.0': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, - '20.0-TTC': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, - '10.0': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, - '10.0-TTC': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, - '8.5': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, - '8.5-TTC': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, - '5.5': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, - '5.5-TTC': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, - '2.1': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, - '2.1-TTC': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, - 'ACH-20.0': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, - 'ACH-20.0-TTC': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, - 'ACH-10.0': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, - 'ACH-10.0-TTC': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, - 'ACH-8.5': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, - 'ACH-8.5-TTC': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, - 'ACH-5.5': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, - 'ACH-5.5-TTC': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, - 'ACH-2.1': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, - 'ACH-2.1-TTC': {'categ': 'tax_categ_s', 'type': 'tax_type_vat'}, - 'IMMO-20.0': {'categ': False, 'type': 'tax_type_vat'}, - 'IMMO-10.0': {'categ': False, 'type': 'tax_type_vat'}, - 'IMMO-8.5': {'categ': False, 'type': 'tax_type_vat'}, - 'IMMO-5.5': {'categ': False, 'type': 'tax_type_vat'}, - 'IMMO-2.1': {'categ': False, 'type': 'tax_type_vat'}, - 'ACH_UE_due-20.0': {'categ': 'tax_categ_k', 'type': 'tax_type_vat'}, - 'ACH_UE_due-10.0': {'categ': 'tax_categ_k', 'type': 'tax_type_vat'}, - 'ACH_UE_due-8.5': {'categ': 'tax_categ_k', 'type': 'tax_type_vat'}, - 'ACH_UE_due-5.5': {'categ': 'tax_categ_k', 'type': 'tax_type_vat'}, - 'ACH_UE_due-2.1': {'categ': 'tax_categ_k', 'type': 'tax_type_vat'}, - 'ACH_UE_ded.-20.0': {'categ': 'tax_categ_k', 'type': 'tax_type_vat'}, - 'ACH_UE_ded.-10.0': {'categ': 'tax_categ_k', 'type': 'tax_type_vat'}, - 'ACH_UE_ded.-8.5': {'categ': 'tax_categ_k', 'type': 'tax_type_vat'}, - 'ACH_UE_ded.-5.5': {'categ': 'tax_categ_k', 'type': 'tax_type_vat'}, - 'ACH_UE_ded.-2.1': {'categ': 'tax_categ_k', 'type': 'tax_type_vat'}, - 'EXO-0': {'categ': 'tax_categ_e', 'type': 'tax_type_vat'}, - 'EXPORT-0': {'categ': 'tax_categ_g', 'type': 'tax_type_vat'}, - 'UE-0': {'categ': 'tax_categ_k', 'type': 'tax_type_vat'}, - 'IMPORT-0': {'categ': 'tax_categ_g', 'type': 'tax_type_vat'}, - } +from odoo.tools import file_open +from lxml import etree +import logging +logger = logging.getLogger(__name__) def set_unece_on_taxes(cr, registry): + f = file_open( + 'l10n_fr_account_tax_unece/data/account_tax_template.xml', 'rb') + xml_root = etree.parse(f) + data = {} + for record in xml_root.xpath('//record'): + xmlid = record.attrib['id'] + data[xmlid] = {} + for xfield in record.xpath('field'): + xfield_dict = xfield.attrib + data[xmlid][xfield_dict['name']] = xfield_dict.get('ref') + logger.debug('set_unece_on_taxes data=%s', data) with api.Environment.manage(): env = api.Environment(cr, SUPERUSER_ID, {}) companies = env['res.company'].search([]) + ato = env['account.tax'] + imdo = env['ir.model.data'] for company in companies: + logger.debug( + 'set_unece_on_taxes working on company %s ID %d', + company.display_name, company.id) if company.country_id and company.country_id != env.ref('base.fr'): continue - taxes = env['account.tax'].search( - [('company_id', '=', company.id)]) + taxes = ato.search([('company_id', '=', company.id)]) for tax in taxes: - if tax.description in MAPPING: - tdesc = tax.description - categ_id = MAPPING[tdesc]['categ'] and env.ref( - 'account_tax_unece.' + MAPPING[tdesc]['categ']).id\ - or False - utype_id = env.ref( - 'account_tax_unece.' + MAPPING[tdesc]['type']).id - tax.write({ - 'unece_type_id': utype_id, - 'unece_categ_id': categ_id, - }) + xmlid_obj = imdo.search([ + ('model', '=', 'account.tax'), + ('module', '=', 'l10n_fr'), + ('res_id', '=', tax.id)], limit=1) + if ( + xmlid_obj and xmlid_obj.name and + len(xmlid_obj.name.split('_')) > 1): + # Remove the 'companyID_' prefix from XMLID of tax + xmlid_ori_end = '_'.join(xmlid_obj.name.split('_')[1:]) + xmlid_ori = 'l10n_fr.%s' % xmlid_ori_end + if data.get(xmlid_ori): + vals = {} + for rfield, rxmlid in data[xmlid_ori].items(): + if rxmlid: + vals[rfield] = env.ref(rxmlid).id + logger.debug( + 'set_unece_on_taxes writing vals=%s on tax ID %d', + vals, tax.id) + tax.write(vals) return From 7e6d71a75a144bc88ad667c78f4a01b4e0e8fc31 Mon Sep 17 00:00:00 2001 From: Alexis de Lattre Date: Wed, 20 Feb 2019 11:55:51 +0100 Subject: [PATCH 07/45] l10n_fr_account_tax_unece from 10 to 12 Update README to new format --- l10n_fr_account_tax_unece/__manifest__.py | 8 +-- .../data/account_tax_template.xml | 55 ++++++++++++++++++- l10n_fr_account_tax_unece/post_install.py | 4 +- .../readme/CONTRIBUTORS.rst | 1 + .../readme/DESCRIPTION.rst | 1 + 5 files changed, 62 insertions(+), 7 deletions(-) create mode 100644 l10n_fr_account_tax_unece/readme/CONTRIBUTORS.rst create mode 100644 l10n_fr_account_tax_unece/readme/DESCRIPTION.rst diff --git a/l10n_fr_account_tax_unece/__manifest__.py b/l10n_fr_account_tax_unece/__manifest__.py index f660095833..b14a35be0f 100644 --- a/l10n_fr_account_tax_unece/__manifest__.py +++ b/l10n_fr_account_tax_unece/__manifest__.py @@ -1,14 +1,14 @@ -# -*- coding: utf-8 -*- -# © 2017 Akretion (Alexis de Lattre ) +# Copyright 2017-2019 Akretion France (http://www.akretion.com/) +# @author: Alexis de Lattre # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). { 'name': u'L10n FR Account Tax UNECE', 'summary': "Auto-configure UNECE params on French taxes", - 'version': '10.0.1.0.0', + 'version': '12.0.1.0.0', 'category': 'French Localization', 'author': "Akretion,Odoo Community Association (OCA)", - 'website': 'http://www.akretion.com', + 'website': 'https://github.com/OCA/l10n-france', 'license': 'AGPL-3', 'depends': ['l10n_fr', 'account_tax_unece'], 'data': ['data/account_tax_template.xml'], diff --git a/l10n_fr_account_tax_unece/data/account_tax_template.xml b/l10n_fr_account_tax_unece/data/account_tax_template.xml index 9091c7bab3..093fb83f2c 100644 --- a/l10n_fr_account_tax_unece/data/account_tax_template.xml +++ b/l10n_fr_account_tax_unece/data/account_tax_template.xml @@ -1,6 +1,7 @@ @@ -11,60 +12,112 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/l10n_fr_account_tax_unece/post_install.py b/l10n_fr_account_tax_unece/post_install.py index 2b511979a3..d5532b936e 100644 --- a/l10n_fr_account_tax_unece/post_install.py +++ b/l10n_fr_account_tax_unece/post_install.py @@ -1,5 +1,5 @@ -# -*- coding: utf-8 -*- -# © 2016-2017 Akretion (Alexis de Lattre ) +# Copyright 2016-2019 Akretion France (http://www.akretion.com/) +# @author: Alexis de Lattre # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). from odoo import api, SUPERUSER_ID diff --git a/l10n_fr_account_tax_unece/readme/CONTRIBUTORS.rst b/l10n_fr_account_tax_unece/readme/CONTRIBUTORS.rst new file mode 100644 index 0000000000..ff65d68ce6 --- /dev/null +++ b/l10n_fr_account_tax_unece/readme/CONTRIBUTORS.rst @@ -0,0 +1 @@ +* Alexis de Lattre diff --git a/l10n_fr_account_tax_unece/readme/DESCRIPTION.rst b/l10n_fr_account_tax_unece/readme/DESCRIPTION.rst new file mode 100644 index 0000000000..b1b1fcdb7f --- /dev/null +++ b/l10n_fr_account_tax_unece/readme/DESCRIPTION.rst @@ -0,0 +1 @@ +This module will auto-configure the parameters *UNECE Tax Type*, *UNECE Tax Category* and *UNECE Due Date* on taxes that come from the *l10n_fr* module. From 15468226cc07fda02f582ab78651351e2960cf61 Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Wed, 27 Feb 2019 22:28:14 +0000 Subject: [PATCH 08/45] README.rst --- l10n_fr_account_tax_unece/README.rst | 67 ++- .../static/description/index.html | 419 ++++++++++++++++++ 2 files changed, 463 insertions(+), 23 deletions(-) create mode 100644 l10n_fr_account_tax_unece/static/description/index.html diff --git a/l10n_fr_account_tax_unece/README.rst b/l10n_fr_account_tax_unece/README.rst index ea0b437f03..f64ef4e591 100644 --- a/l10n_fr_account_tax_unece/README.rst +++ b/l10n_fr_account_tax_unece/README.rst @@ -1,52 +1,73 @@ -.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg - :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html - :alt: License: AGPL-3 - ========================= L10n FR Account Tax UNECE ========================= -This module will auto-configure the parameters *UNECE Tax Type* and *UNECE Tax Category* on taxes that come from the *l10n_fr* module. +.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! 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%2Fl10n--france-lightgray.png?logo=github + :target: https://github.com/OCA/l10n-france/tree/12.0/l10n_fr_account_tax_unece + :alt: OCA/l10n-france +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/l10n-france-12-0/l10n-france-12-0-l10n_fr_account_tax_unece + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png + :target: https://runbot.odoo-community.org/runbot/121/12.0 + :alt: Try me on Runbot -Installation -============ +|badge1| |badge2| |badge3| |badge4| |badge5| -This module will be installed automatically if the *l10n_fr* and *account_tax_unece* modules are installed. +This module will auto-configure the parameters *UNECE Tax Type*, *UNECE Tax Category* and *UNECE Due Date* on taxes that come from the *l10n_fr* module. -Usage -===== +**Table of contents** -.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas - :alt: Try me on Runbot - :target: https://runbot.odoo-community.org/runbot/121/10.0 +.. contents:: + :local: 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. +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 +~~~~~~~ + +* Akretion + Contributors ------------- +~~~~~~~~~~~~ * Alexis de Lattre -Maintainer ----------- +Maintainers +~~~~~~~~~~~ + +This module is maintained by the OCA. .. image:: https://odoo-community.org/logo.png :alt: Odoo Community Association :target: https://odoo-community.org -This module is maintained by the OCA. - 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. -To contribute to this module, please visit https://odoo-community.org. +This module is part of the `OCA/l10n-france `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/l10n_fr_account_tax_unece/static/description/index.html b/l10n_fr_account_tax_unece/static/description/index.html new file mode 100644 index 0000000000..d251f39446 --- /dev/null +++ b/l10n_fr_account_tax_unece/static/description/index.html @@ -0,0 +1,419 @@ + + + + + + +L10n FR Account Tax UNECE + + + +
+

L10n FR Account Tax UNECE

+ + +

Beta License: AGPL-3 OCA/l10n-france Translate me on Weblate Try me on Runbot

+

This module will auto-configure the parameters UNECE Tax Type, UNECE Tax Category and UNECE Due Date on taxes that come from the l10n_fr module.

+

Table of contents

+ +
+

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

+
    +
  • Akretion
  • +
+
+
+

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/l10n-france project on GitHub.

+

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

+
+
+
+ + From 9b3fb0222bcb05f7861464d24dff71f2a8258b3c Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Wed, 3 Apr 2019 02:53:21 +0000 Subject: [PATCH 09/45] icon.png --- .../static/description/icon.png | Bin 0 -> 9455 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 l10n_fr_account_tax_unece/static/description/icon.png diff --git a/l10n_fr_account_tax_unece/static/description/icon.png b/l10n_fr_account_tax_unece/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 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 Xviia!U7SGha1wx#SCgwmn*{w2TRX*I literal 0 HcmV?d00001 From 64026435da5129fa0a0f47f0c69317e1e7f6457f Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Mon, 29 Jul 2019 03:01:30 +0000 Subject: [PATCH 10/45] README.rst --- l10n_fr_account_tax_unece/static/description/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/l10n_fr_account_tax_unece/static/description/index.html b/l10n_fr_account_tax_unece/static/description/index.html index d251f39446..b404514b59 100644 --- a/l10n_fr_account_tax_unece/static/description/index.html +++ b/l10n_fr_account_tax_unece/static/description/index.html @@ -3,7 +3,7 @@ - + L10n FR Account Tax UNECE -
-

L10n FR Account Tax UNECE

+
+ + +Odoo Community Association + +
+

L10n FR Account Tax UNECE

-

Beta License: AGPL-3 OCA/l10n-france Translate me on Weblate Try me on Runboat

+

Beta License: AGPL-3 OCA/l10n-france Translate me on Weblate Try me on Runboat

This module will auto-configure the parameters UNECE Tax Type and UNECE Tax Category on taxes defined in the l10n_fr module.

Table of contents

@@ -385,29 +390,29 @@

L10n FR Account Tax UNECE

-

Bug Tracker

+

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.

+feedback.

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

-

Credits

+

Credits

-

Authors

+

Authors

  • Akretion
-

Maintainers

+

Maintainers

This module is maintained by the OCA.

Odoo Community Association @@ -417,10 +422,11 @@

Maintainers

promote its widespread use.

Current maintainer:

alexis-via

-

This module is part of the OCA/l10n-france project on GitHub.

+

This module is part of the OCA/l10n-france project on GitHub.

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

+