diff --git a/l10n_es_aeat_sii/__manifest__.py b/l10n_es_aeat_sii/__manifest__.py index 6e4c10f2b1d..56224988e61 100755 --- a/l10n_es_aeat_sii/__manifest__.py +++ b/l10n_es_aeat_sii/__manifest__.py @@ -12,7 +12,7 @@ { "name": "Suministro Inmediato de InformaciĆ³n en el IVA", - "version": "12.0.1.5.0", + "version": "12.0.1.5.1", "category": "Accounting & Finance", "website": "https://odoospain.odoo.com", "author": "Acysos S.L.," diff --git a/l10n_es_aeat_sii/models/account_invoice_tax.py b/l10n_es_aeat_sii/models/account_invoice_tax.py index 6c0965bb0d9..7a8781cc958 100755 --- a/l10n_es_aeat_sii/models/account_invoice_tax.py +++ b/l10n_es_aeat_sii/models/account_invoice_tax.py @@ -1,12 +1,11 @@ -# -*- coding: utf-8 -*- # Copyright 2018 Comunitea - Omar CastiƱeira +# Copyright 2020 Tecnativa - Pedro M. Baeza # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). -from odoo import api, fields, models +from odoo import fields, models class AccountInvoiceTax(models.Model): - _inherit = "account.invoice.tax" base_company = fields.Monetary( @@ -18,18 +17,20 @@ class AccountInvoiceTax(models.Model): compute="_compute_base_amount_company", ) - @api.multi def _compute_base_amount_company(self): for tax in self: if (tax.invoice_id.currency_id != tax.invoice_id.company_id.currency_id): - currency = tax.invoice_id.currency_id.with_context( - date=tax.invoice_id.date_invoice, - company_id=tax.invoice_id.company_id.id) - tax.base_company = currency.compute( - tax.base, tax.invoice_id.company_id.currency_id) - tax.amount_company = currency.compute( - tax.amount, tax.invoice_id.company_id.currency_id) + rate_date = ( + tax.invoice_id._get_currency_rate_date() or + fields.Date.today() + ) + currency = tax.invoice_id.currency_id + company = tax.invoice_id.company_id + tax.base_company = currency._convert( + tax.base, company.currency_id, company, rate_date) + tax.amount_company = currency._convert( + tax.amount, company.currency_id, company, rate_date) else: tax.base_company = tax.base tax.amount_company = tax.amount