Default language for "model" values hardcoded as 'en_US' should be configurable
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Odoo Server (MOVED TO GITHUB) |
Confirmed
|
Wishlist
|
OpenERP's Framework R&D |
Bug Description
In the current v5.0, the default language for data strings in objects is hardcoded to be 'en_US' in the server code.
This complicates usage when the main language in the company is not English.
For example even in a company where all the business is done in French, you cannot change (and correct!) the value of a translatable field in the table, because the new value will be written to ir_translation instead when you don't use en_US.
This is particularly disturbing in companies where English is not used at all.
We should be able to change the default language from en_US to the locale of our choice, preferably at database creation time, or else in the server config file or command-line.
This is only for data strings input by users ("model" values in ir_translate), and the default language for field names, help texts and other stuff must remain en_US.
Changed in openobject-server: | |
status: | New → Invalid |
status: | Invalid → Confirmed |
Changed in openobject-server: | |
assignee: | nobody → sme (OpenERP) (sme.tiny.axelor) |
Changed in openobject-server: | |
assignee: | sme (OpenERP) (sme-tiny) → nobody |
summary: |
- Main locale hardcoded as 'en_US' makes translations wrong when modifying - or copying objects + Main locale hardcoded as 'en_US' should be configurable |
Changed in openobject-server: | |
status: | Invalid → New |
description: | updated |
summary: |
- Main locale hardcoded as 'en_US' should be configurable + Default language for "model" values hardcoded as 'en_US' should be + configurable |
description: | updated |
Changed in openobject-server: | |
status: | New → In Progress |
Changed in openobject-server: | |
status: | Fix Released → In Progress |
assignee: | nobody → Numérigraphe (numerigraphe) |
Changed in openobject-server: | |
assignee: | nobody → OpenERP's Framework R&D (openerp-dev-framework) |
Ruud Riem-Vis wrote a detailed use-case for this misbehavior in bug #426653: >Configuration- >Product Categories"
"
First create a clean database using the minimal profile using french (or another non-english language) and use all the default values.
Then add the module "product".
Now do the following (in the non-english language):
Go to "Products-
Clic "New" and give the name "aa", then clic "Save".
Clic "New" and give the name "bb", then clic "Save".
Clic "Form->Duplicate" (one the top menu) and give the name "cc", then clic "Save".
Clic "Form->Duplicate" (one the top menu) and give the name "dd", then clic "Save".
Now clic on "List", you will have the product categorie "aa", "bb", "cc" and "dd".
Double clic on"aa" and clic on the flag to see the translations. You will see "aa" for the non-english language and "aa" for english.
Clic "Next" to select the next record and clic on the flag to see the translations. You will see "bb" for the non-english language and "bb" for english.
Clic "Next" to select the next record and clic on the flag to see the translations. You will see "cc" for the non-english language and "bb" for english!
Clic "Next" to select the next record and clic on the flag to see the translations. You will see "dd" for the non-english language and "cc" for english!!!
Apparently the duplicate action does not duplicate the translated version but puts the non-english value into the english entry of the duplicate.
It is also very misleading that the english translation follows the non-english original until the first "Save " action, after which it is frozen. Any modification made afterwards will not be taken into account although you haven't done any translation.
Now for each record change the name as follows "aa" becomes "aaa", "bb" becomes "bbb", "cc" becomes "ccc" and "dd" becomes "ddd". Look at the translations, only the non-english version has changed.
Now change the user language preference to english and look at the "Product Categories" list. You will see "aa", "bb", "bb" and "cc"!
This behavior is very disturbing as it all happens behind the scenes. In fact, the english names (or even the names for all installed languages) should "follow" the non-english naming as long as there is no explicit translation entered. A correct duplicate action should copy the entire record information (and not take the non-english source for the english duplicate), but the side effect in this case can be very misleading.
The worse situation occurs when you switch your language (for example to report bugs), and modify sometimes in English, sometimes in the non-English language. In that case, you get a real mess..."
Lionel