41 lines
1.7 KiB
Python
Executable File
41 lines
1.7 KiB
Python
Executable File
# This file is part of Tryton. The COPYRIGHT file at the top level of
|
|
# this repository contains the full copyright notices and license terms.
|
|
from sql import Table
|
|
|
|
from trytond.pool import PoolMeta
|
|
from trytond.transaction import Transaction
|
|
|
|
|
|
class TaxTemplate(metaclass=PoolMeta):
|
|
__name__ = 'account.tax.template'
|
|
|
|
@classmethod
|
|
def __register__(cls, module_name):
|
|
cursor = Transaction().connection.cursor()
|
|
model_data = Table('ir_model_data')
|
|
|
|
# Migration from 5.6: Rename main tax ids
|
|
if module_name == 'account_de_skr03':
|
|
for old_id, new_id in (
|
|
('tax_ust_19', 'tax_ust_standard_rate'),
|
|
('tax_ust_7', 'tax_ust_reduced_rate'),
|
|
('tax_vst_19', 'tax_vst_standard_rate'),
|
|
('tax_vst_7', 'tax_vst_reduced_rate'),
|
|
('tax_eu_19_purchase', 'tax_purchase_eu_standard_rate'),
|
|
('tax_eu_7_purchase', 'tax_purchase_eu_reduced_rate'),
|
|
('tax_import_19', 'tax_import_standard_rate'),
|
|
('tax_import_7', 'tax_import_reduced_rate'),
|
|
):
|
|
cursor.execute(*model_data.select(model_data.id,
|
|
where=(model_data.fs_id == new_id)
|
|
& (model_data.module == module_name)))
|
|
if cursor.fetchone():
|
|
continue
|
|
cursor.execute(*model_data.update(
|
|
columns=[model_data.fs_id],
|
|
values=[new_id],
|
|
where=(model_data.fs_id == old_id)
|
|
& (model_data.module == module_name)))
|
|
|
|
super().__register__(module_name)
|