[FIX] intrastat_product: Set the correct country code when the country of the delivery address is different (and to be consistent with the src_dest_country_id field).

TT40764
This commit is contained in:
Víctor Martínez
2022-12-12 09:02:14 +01:00
parent 23c4f7e8b2
commit 99835dc7bb
2 changed files with 4 additions and 2 deletions

View File

@@ -661,6 +661,7 @@ class IntrastatProductDeclaration(models.Model):
domain = self._prepare_invoice_domain()
order = "journal_id, name"
invoices = self.env["account.move"].search(domain, order=order)
partner_model = self.env["res.partner"]
for invoice in invoices:
@@ -705,8 +706,8 @@ class IntrastatProductDeclaration(models.Model):
# When the country is the same as the company's country must be skipped.
if partner_country == self.company_id.country_id:
continue
partner_country_code = (
invoice.commercial_partner_id._get_intrastat_country_code()
partner_country_code = partner_model._get_intrastat_country_code(
country=partner_country, state=invoice.partner_shipping_id.state_id
)
if inv_intrastat_line:

View File

@@ -53,6 +53,7 @@ class TestIntrastatBrexit(IntrastatProductCommon, SavepointCase):
inv_out_xi = self.inv_obj.with_context(default_move_type="out_invoice").create(
{
"partner_id": self.partner_xi.id,
"partner_shipping_id": self.partner_xi.id,
"fiscal_position_id": self.position.id,
}
)