Commit Graph
30 Commits
Author SHA1 Message Date
Josse Colpaert bb1642305f [IMP] l10n_multilang: allow tax report name to be translated too
closes odoo/odoo#82331

Signed-off-by: Olivier Colson <oco@odoo.com>
2022-01-12 10:17:47 +00:00
dht-odoo 23483865b1 [IMP] account: improves field type from text to html
Replace text fields to html fields as we have our own 'OdooEditor'.
Indeed, it gives more options to users in the way they format their
content without weighting too much on the UI
(tools appear on demand and not by default).

Models -> Fields

1) account.move -> narration
2) account.payment.term -> note
3) account.fiscal.position -> note
4) res.company -> invoice_terms
5) res.config.settings -> invoice_terms

Task Id: 2499504

X-original-commit: 0f3c7f153e8bd20f83b7d1df031634996d36935b
2021-06-07 05:24:08 +00:00
nie 231b367d16 [FIX] l10n_multilang: COA translations overwritten with new company
Steps:
- Install "Belgium - Accounting" and "Accounting"
- Add the Dutch language in settings
- Select a Belgian company
- Go to Accounting > Configuration > Chart of Account
- Select an account like "755000 Financial income - Foreign currency translation differences"
- Change the translation of the account name in English and Dutch
- Create a new company in Settings > Companies
- Select this new company
- Go to Accounting > Configuration > Settings, set the Fiscal Localization to Belgian PCMN and save
- Return in the first company
- Go to Accounting > Configuration > Chart of Account and check the translations you previously set

Bug:
The Dutch translation has been reset and the English one remains the same.

Explanation:
`process_coa_translations()` uses `spoken_languages` as seen here:
https://github.com/odoo/odoo/blob/bb31ce3bc6c0c7e1e101d93924eccea995206733/addons/l10n_multilang/models/l10n_multilang.py#L67
The spoken languages are defined here: https://github.com/odoo/odoo/blob/f4e7e06a1ff9756471d55138575c758f456b5905/addons/l10n_be/data/account_chart_template_data.xml#L10
This is why English is not affected.

The bug appeared with https://github.com/odoo/odoo/commit/c346e7af3314ce504fe3add9e9f6a4839bcad64a
It was meant to apply Chart of Account translations on the current company but applied it on all the companies. This reset edited translations on the other companies.

This commit refactors `process_coa_translations()` so that we can use the same logic on a single company while keeping the definition of the original function intact.

opw:2376334

closes odoo/odoo#63866

X-original-commit: 45e6309aa1d79d06c7110c86205781874ab44e30
Signed-off-by: backspac <backspac@users.noreply.github.com>
2020-12-29 09:25:50 +00:00
Josse Colpaert 023351b71e [FIX] l10n_multilang: method for loading translations was renamed
A method was written to copy translations from the template objects
(chart template) to the instantiated chart of accounts when installing
a multilang coa.  (e.g. to have the translations on the accounts, taxes, ...)

The problem was that to call this functionality, this module inherited
 a method, that was renamed in the meantime.  The consequence being that
this method was never called.

We renamed the method correctly here.

closes odoo/odoo#52769

X-original-commit: bb31ce3bc6c0c7e1e101d93924eccea995206733
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Signed-off-by: Josse Colpaert <jco@openerp.com>
2020-06-10 12:02:12 +00:00
william 9eba957e0d [IMP] l10n_multilang: allow the translation of the account groups
Before, only accounts, fiscal position, tags and taxes were
translatable, now account groups are too.

X-original-commit: da571b354293e852c1c4828f758eace8e6ededa4
2020-03-24 13:36:15 +00:00
Christophe Simonis 58a83d1222 [MERGE] forward port branch saas-12.4 up to 4a1321bc99
closes odoo/odoo#37127

Signed-off-by: Christophe Simonis <chs@odoo.com>
2019-09-20 14:33:54 +00:00
Nicolas Lempereur 10f15a4faf [FIX] l10n_multilang: ignore customized data conflict
If you:

- have a multilang COA
- create an account.account manually
- add a XML ID with structure {company_id}_{anything} manually
- reload COA translations (install COA language, install COA, set
  installed COA since c346e7af3)

=> there is an error since the code try to copy translations of
account.account.template associated to custom XML ID.

fix: ignore this torcivous use case

fixes #36310
opw-2063207
closes #36544

closes odoo/odoo#36659

X-original-commit: 0fc0b7484c48fbdcf549e199b5c8cabff3ab726c
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
2019-09-10 19:04:53 +00:00
Christophe Simonis 5a273e74f0 [MERGE] forward port branch saas-12.4 up to fe59754c52
closes odoo/odoo#36721

Signed-off-by: Christophe Simonis <chs@odoo.com>
2019-09-13 13:32:51 +00:00
Nicolas Lempereur c346e7af33 [FIX] l10n_*: translate COA on load without install
When a COA is installed being loaded for current company, the
translations of taxes, account name, ... (in l10n_be, l10n_ca, l10n_ch,
l10n_sa) are copied from the templates to the accounting records.

This is done in `post_init_hook` which is correct since then
translations are available to be copied.

But when an accounting localization is already installed and we set it
to a company, the translations are not copied.

eg. install l10n_be for company1: accounts name are translated in
french and dutch, set company2 to belgian accounting: only original
language is available.

With this changeset, the translation copy is also performed when an
accounting localization is loaded for a company after it has been
installed.

note: if we install language for first times after setting accounting
localizations, chart of account are translated in that language.

opw-2047013
closes #35985

Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
2019-08-27 11:19:10 +00:00
Meghna Jaswani 9b49f00078 [IMP] l10n_multilang: Added translate True on account.tax.report.line
Both the name and the tag_name need to be set as translatable.
As the tag_name is seen by the user for the configuration.

Unlike the financial reports that are linked to multiple countries,
the tax report is linked to just one country. This way it makes sense
to only make it translatable in multilang.

Task: 2042430

closes odoo/odoo#35436

Signed-off-by: Josse Colpaert <jco@openerp.com>
2019-08-05 14:38:52 +00:00
Martin Trigaux 85ee046b37 [IMP] *: use res.lang methods
get_installed and _lang_get_id are both ormcached and correctly check
the context

Retrieving a res.lang from a code is a frequent action that can be
achieved with _lang_get (cf previous commit).
Using _lang_get ensure the active_test in the context is correct and
is not poluted with another context propagation issue.
odoo/odoo#35490 discussion is an example of bad context propagation

closes odoo/odoo#35504

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2019-08-07 13:06:17 +00:00
Adrian Torres 4b38cc6590 [REM] *: calls to @api.multi
Multi is the default api for methods, it is not necessary to explicitly
decorate methods with it, adds clutter and most people use it because
they see that the rest of the code uses it.

Done with `find . -type f -name '*.py' | xargs sed -i '/@api.multi/d'`
2019-07-17 14:13:12 +02:00
Martin Trigaux 23afec1b8d [FIX] l10n_multilang: avoid module conflicts
In case two modules are using the same local name for their external identifier,
a conflict may occure.
e.g. the templates
- l10n_generic_coa.a_salary_expense
- l10n_be.a_salary_expense

will generate
- l10n_generic_coa.1_a_salary_expense
- l10n_be.2_a_salary_expense

As the previous search for in_xml_ids was using a domain
   ('name', '=', 'a_salary_expense')
both records were returned, making in_ids to have one more record than out_ids

Followup of review made at odoo/odoo#31510

closes odoo/odoo#31604

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2019-04-03 11:24:35 +00:00
Martin Trigaux 8dd456cb82 [FIX] l10n_multilang: ensure order with record and template
On some chart of accounts, some records (e.g. account.tax on l10n_be) have
children and some are deactivated when the chart of account is created.
The children on the account.tax and templates were not created in the same order
The deactivated records were not found in the search.

Before this commit the translations did not match the right record on the
account.tax (e.g. 21% tax translated with a 12% name in Dutch)

Bug noticed with avw

closes odoo/odoo#31510

Signed-off-by: "Martin Trigaux (mat)" <mat@odoo.com>
2019-03-04 12:38:33 +00:00
Christophe Simonis f2e105eeca [MERGE] forward port branch saas-15 up to d3a040cebe 2018-05-08 18:12:03 +02:00
Christophe Simonis d3a040cebe [MERGE] forward port branch saas-14 up to 1813f42dbc 2018-05-08 17:18:48 +02:00
chirag cf1b1b6e2c [FIX] l10n_multilang: overwrite existing translations
When a record is created in a different language than English, empty
translations are created using the _set_ids method for translatable fields.

l10n_multilang makes the account translatable, an empty translation is created
when the CoA data is processed.

After the CoA installation, l10n_multilang transfer the translations of the
account templates to the related accounts.

No need to create translation terms again, use _set_ids to update the existing
translations.

This will prevent a cause of translation duplication, forbidden in the future by
160d657704

opw-1832071
Closes #24158
2018-05-07 14:43:28 +02:00
Christophe Simonis 4715d7e35a [MERGE] forward port branch saas-15 up to 0d55241185 2018-03-19 19:29:58 +01:00
Christophe Simonis 0d55241185 [MERGE] forward port branch saas-14 up to 82effcca83 2018-03-19 18:26:25 +01:00
Martin Trigaux 38e4b2b50a [FIX] l10n_multilang: followup of 3bf9cf4f36
The change was made in the code but not in the error message

Courtesy of Stephane Bidoul
2018-03-16 15:22:27 +01:00
Stephane Bidoul 3bf9cf4f36 [FIX] l10n_multilang: correctly set src
While it is the name of the record that is set most of the time, it can also
be different value (like tax description)

Closes #21651
2018-03-15 16:40:53 +01:00
Martin Trigaux bc84eb2035 [FIX] l10n_multilang: translate country states name
Countries with several official languages often have multiple names for their
states. Allow to translate the state name for such countries.

Some monolingual countries but, yet, with a need of translation of the addresses
such as China or Germany can add the same flag in their respective l10n_* module

Closes #19481
Closes #20259
2017-10-24 17:04:12 +02:00
Christophe Simonis 4ac347735d [MERGE] forward port branch saas-15 up to 063381e0f6 2017-08-28 14:02:35 +02:00
Goffin Simon 2eac9788f6 [FIX] l10n_multilang: Getting translations of templates from records
Bug:

Before the the fix, when trying to get all the translations of templates from a
specific model:
-All the translations for the templates of this model were catched first -> TT
-All the records of this model for a specific company were catched afterwards -> RC

Then, the linked between the translations(TT) and the records(RC) were made in function
process_translations.

But in some cases, a few records were removed and then it raised an error because the number
of translations was different than the number of records.

Fix:

Thanks to the function create_record_with_xmlid in addons/account/models/chart_template.py, all the records
created from a template have an xml_id in ir.model.data with str(company.id)+'_'+template_xmlid.name

So with this way, it is possible to catch only the records created from a template.

opw:767095
2017-08-24 11:00:28 +02:00
xmo-odoo b4429c2a91 [FIX] Various P3-related import changes
* LDAP import: python-ldap is not python3-compatible, pyldap is

  Warning: only supported from debian Stretch (current testing)?
  https://packages.debian.org/search?searchon=names&keywords=pyldap

* implicitly relative imports
* imports of moved or removed stdlib modules

issue #8530
2017-04-28 09:06:53 +02:00
Christophe Simonis 81f59cee2c [MERGE] forward port branch saas-11 up to b844d93889 2017-01-02 14:38:59 +01:00
Martin Trigaux c965e64e52 [FIX] l10n_multilang: add only translate flag
No need to redifine existing attributes.
Introduced at db682bf
2016-11-30 13:58:03 +01:00
David Tran 0d160851c7 [ADD] l10n_multilang: allow to translate account tag
Account tags are used to describe accounts and contains text that makes ense to
be translated for multilangue CoA

Closes #14527
2016-11-30 13:55:53 +01:00
Rohan Patel db682bfe74 [MIG] l10n_multilang : Migrated to new API. 2016-07-07 16:16:01 +02:00
Rohan Patel e4daa3df40 [MOV] l10n_multilang : Re-organized directory structure. 2016-07-07 16:10:07 +02:00