Merge branch 'fix_8_0_3_6_3'

parents 106da622 a0ef3106
Pipeline #21338 failed with stage
in 44 seconds
<a name="8.0.3.6.3"></a>
## 8.0.3.6.3 (2023-10-11)
#### Bug Fixes
* **account.invoice:** se corrige migración para soporta el cambio del campo cfdi_fiscal_regime_id ([78393b60](78393b60))
<a name="8.0.3.6.2"></a>
## 8.0.3.6.2 (2023-09-12)
......
......@@ -7,48 +7,50 @@ from openerp import SUPERUSER_ID
@tools.migrate(use_env=True, uid=SUPERUSER_ID)
def migrate(env, installed_version):
tools.logged_query(
env.cr,
"""
WITH account_regimen_code as (
SELECT
ai.id AS invoice_id,
fr.id AS fiscal_regime_id
FROM account_invoice as ai
LEFT JOIN account_fiscal_position as afp ON afp.id = ai.fiscal_position
LEFT JOIN cfdi_fiscal_regime AS fr ON afp.code = fr.code
WHERE afp.code in (
'601','603','605','606','607','608','609','610','611','612','614',
'615','616','620','621','622','623','624','628','629','630'
legacy_name = tools.get_legacy_name("cfdi_fiscal_regime_id")
if tools.column_exists(env.cr, "account_invoice", legacy_name):
tools.logged_query(
env.cr,
"""
WITH account_regimen_code as (
SELECT
ai.id AS invoice_id,
fr.id AS fiscal_regime_id
FROM account_invoice as ai
LEFT JOIN account_fiscal_position as afp ON afp.id = ai.fiscal_position
LEFT JOIN cfdi_fiscal_regime AS fr ON afp.code = fr.code
WHERE afp.code in (
'601','603','605','606','607','608','609','610','611','612','614',
'615','616','620','621','622','623','624','628','629','630'
)
)
)
UPDATE account_invoice AS ai
SET cfdi_fiscal_regime_id=fr.fiscal_regime_id
FROM account_regimen_code AS fr
WHERE ai.id=fr.invoice_id
""",
)
UPDATE account_invoice AS ai
SET cfdi_fiscal_regime_id=fr.fiscal_regime_id
FROM account_regimen_code AS fr
WHERE ai.id=fr.invoice_id
""",
)
tools.logged_query(
env.cr,
"""
WITH account_regimen_code as (
SELECT
ai.id AS invoice_id,
fr.id AS fiscal_regime_id
FROM account_invoice as ai
LEFT JOIN account_fiscal_position as afp ON afp.id = ai.fiscal_position
LEFT JOIN cfdi_fiscal_regime AS fr ON afp.code = fr.code
WHERE afp.code in (
'601','603','605','606','607','608','609','610','611','612','614',
'615','616','620','621','622','623','624','628','629','630'
tools.logged_query(
env.cr,
"""
WITH account_regimen_code as (
SELECT
ai.id AS invoice_id,
fr.id AS fiscal_regime_id
FROM account_invoice as ai
LEFT JOIN account_fiscal_position as afp ON afp.id = ai.fiscal_position
LEFT JOIN cfdi_fiscal_regime AS fr ON afp.code = fr.code
WHERE afp.code in (
'601','603','605','606','607','608','609','610','611','612','614',
'615','616','620','621','622','623','624','628','629','630'
)
)
)
UPDATE account_invoice AS ai
SET fiscal_position=Null
FROM account_regimen_code AS fr
WHERE ai.id=fr.invoice_id
""",
)
UPDATE account_invoice AS ai
SET fiscal_position=Null
FROM account_regimen_code AS fr
WHERE ai.id=fr.invoice_id
""",
)
......@@ -274,8 +274,6 @@ class AccountInvoice(models.Model):
for invoice in self.filtered(lambda i: i.type in ("out_invoice", "out_refund")):
partner = invoice.partner_id
if partner:
if partner.cfdi_fiscal_regime_id.id:
invoice.cfdi_fiscal_regime_id = partner.cfdi_fiscal_regime_id.id
if partner.cfdi_use.id:
invoice.cfdi_use = partner.cfdi_use.id
invoice.payment_method_id = partner.payment_method_id.id
......@@ -402,7 +400,6 @@ class AccountInvoice(models.Model):
[
"cfdi_use",
"partner_id",
"cfdi_fiscal_regime_id",
"payment_type_ids",
"address_issued_id",
"journal_id",
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment