[IMP] account: Trigger a validation error when trying to set the same currency on a journal as on its parent company.

Until v12, doing this is wrong. The currency_id field of account.journal should only be used if the journal is in a different currency. Otherwise, this field should stay empty.

//NOTE FOR FORWARD-PORT: this commit should not be ported to 12.0 and further.
This commit is contained in:
Olivier Colson
2018-10-19 15:04:12 +02:00
parent 3a2939d494
commit 22f0da809e
2 changed files with 7 additions and 0 deletions
+5
View File
@@ -10051,3 +10051,8 @@ msgstr ""
msgid "→ Count"
msgstr ""
#. module: account
#: code:addons/account/models/account.py:309
#, python-format
msgid "Currency field should only be set if the journal's currency is different from the company's. Leave the field blank to use company currency."
msgstr ""
+2
View File
@@ -305,6 +305,8 @@ class AccountJournal(models.Model):
@api.constrains('currency_id', 'default_credit_account_id', 'default_debit_account_id')
def _check_currency(self):
if self.currency_id:
if self.currency_id == self.company_id.currency_id:
raise ValidationError(_("Currency field should only be set if the journal's currency is different from the company's. Leave the field blank to use company currency."))
if self.default_credit_account_id and not self.default_credit_account_id.currency_id.id == self.currency_id.id:
raise ValidationError(_('Configuration error!\nThe currency of the journal should be the same than the default credit account.'))
if self.default_debit_account_id and not self.default_debit_account_id.currency_id.id == self.currency_id.id: