在尝试将应用程序/模块迁移到odoo 13时,我得到了KeyError:';税号';

在尝试将应用程序/模块迁移到odoo 13时,我得到了KeyError:';税号';,odoo,keyerror,Odoo,Keyerror,在尝试将模块从ODOO11迁移到13时,我得到了错误KeyError:“tax\u line\u id”。请帮我解决这个问题。 这是一个用于钢坯的巴西模块 我在代码中检测到tax\u line\u id的行中添加了“->”。谁来帮帮我。我不容易找到这个模块,因为它是巴西的。在Odoo11中生产的公司现在与另一家公司合作,该公司收取账单费用,因此他们停止更新 Odoo Server Error Traceback (most recent call last): File "C:\Users

在尝试将模块从ODOO11迁移到13时,我得到了错误KeyError:“tax\u line\u id”。请帮我解决这个问题。 这是一个用于钢坯的巴西模块 我在代码中检测到tax\u line\u id的行中添加了“->”。谁来帮帮我。我不容易找到这个模块,因为它是巴西的。在Odoo11中生产的公司现在与另一家公司合作,该公司收取账单费用,因此他们停止更新

Odoo Server Error

Traceback (most recent call last):
  File "C:\Users\Eliane\Documents\Odoo\server\odoo\http.py", line 624, in _handle_exception
    return super(JsonRequest, self)._handle_exception(exception)
  File "C:\Users\Eliane\Documents\Odoo\server\odoo\http.py", line 310, in _handle_exception
    raise pycompat.reraise(type(exception), exception, sys.exc_info()[2])
  File "C:\Users\Eliane\Documents\Odoo\server\odoo\tools\pycompat.py", line 14, in reraise
    raise value
  File "C:\Users\Eliane\Documents\Odoo\server\odoo\http.py", line 669, in dispatch
    result = self._call_function(**self.params)
  File "C:\Users\Eliane\Documents\Odoo\server\odoo\http.py", line 350, in _call_function
    return checked_call(self.db, *args, **kwargs)
  File "C:\Users\Eliane\Documents\Odoo\server\odoo\service\model.py", line 94, in wrapper
    return f(dbname, *args, **kwargs)
  File "C:\Users\Eliane\Documents\Odoo\server\odoo\http.py", line 339, in checked_call
    result = self.endpoint(*a, **kw)
  File "C:\Users\Eliane\Documents\Odoo\server\odoo\http.py", line 915, in __call__
    return self.method(*args, **kw)
  File "C:\Users\Eliane\Documents\Odoo\server\odoo\http.py", line 515, in response_wrap
    response = f(*args, **kw)
  File "C:\Users\Eliane\Documents\Odoo\server\odoo\addons\web\controllers\main.py", line 1326, in call_button
    action = self._call_kw(model, method, args, kwargs)
  File "C:\Users\Eliane\Documents\Odoo\server\odoo\addons\web\controllers\main.py", line 1314, in _call_kw
    return call_kw(request.env[model], method, args, kwargs)
  File "C:\Users\Eliane\Documents\Odoo\server\odoo\api.py", line 387, in call_kw
    result = _call_kw_multi(method, model, args, kwargs)
  File "C:\Users\Eliane\Documents\Odoo\server\odoo\api.py", line 374, in _call_kw_multi
    result = method(recs, *args, **kwargs)
  File "<decorator-gen-60>", line 2, in button_immediate_install
  File "C:\Users\Eliane\Documents\Odoo\server\odoo\addons\base\models\ir_module.py", line 72, in check_and_log
    return method(self, *args, **kwargs)
  File "C:\Users\Eliane\Documents\Odoo\server\odoo\addons\base\models\ir_module.py", line 463, in button_immediate_install
    return self._button_immediate_function(type(self).button_install)
  File "C:\Users\Eliane\Documents\Odoo\server\odoo\addons\base\models\ir_module.py", line 573, in _button_immediate_function
    modules.registry.Registry.new(self._cr.dbname, update_module=True)
  File "C:\Users\Eliane\Documents\Odoo\server\odoo\modules\registry.py", line 86, in new
    odoo.modules.load_modules(registry._db, force_demo, status, update_module)
  File "C:\Users\Eliane\Documents\Odoo\server\odoo\modules\loading.py", line 423, in load_modules
    loaded_modules, update_module, models_to_check)
  File "C:\Users\Eliane\Documents\Odoo\server\odoo\modules\loading.py", line 315, in load_marked_modules
    perform_checks=perform_checks, models_to_check=models_to_check
  File "C:\Users\Eliane\Documents\Odoo\server\odoo\modules\loading.py", line 201, in load_module_graph
    registry.setup_models(cr)
  File "C:\Users\Eliane\Documents\Odoo\server\odoo\modules\registry.py", line 266, in setup_models
    dependencies[field] = set(field.resolve_depends(model))
  File "C:\Users\Eliane\Documents\Odoo\server\odoo\fields.py", line 695, in resolve_depends
    field = field_model._fields[fname]
-> KeyError: 'tax_line_ids'
在文件1中仍然

    @api.model
def tax_line_move_line_get(self):
    res = super(AccountInvoice, self).tax_line_move_line_get()

    done_taxes = []
->  for tax_line in sorted(self.tax_line_ids, key=lambda x: -x.sequence):
        if tax_line.amount and tax_line.tax_id.deduced_account_id:
            tax = tax_line.tax_id
            done_taxes.append(tax.id)
            res.append({
                'invoice_tax_line_id': tax_line.id,
                'tax_line_id': tax_line.tax_id.id,
                'type': 'tax',
                'name': tax_line.name,
                'price_unit': tax_line.amount * -1,
                'quantity': 1,
                'price': tax_line.amount * -1,
                'account_id': tax_line.tax_id.deduced_account_id.id,
                'account_analytic_id': tax_line.account_analytic_id.id,
                'invoice_id': self.id,
                'tax_ids': [(6, 0, done_taxes)]
                if tax_line.tax_id.include_base_amount else []
            })
    return res
另一个xml文件

      ->    <field name="tax_line_ids" position="after">
            <group name="documentos_relacionados" string="Documentos Relacionados">
                <field colspan="4" nolabel="1" name="fiscal_document_related_ids">
                    <tree>
                        <field name="document_type"/>
                        <field name="access_key"/>
                        <field name="serie"/>
                        <field name="internal_number"/>
                    </tree>
->

该字段
税务行ID
不再可用

如果您检查,您将看到
o.tax\u line\u id
o.line\u id.filtered(lambda line:line.tax\u line\u id)
替换

  • 尝试将方法中的
    o.tax\u-line\u-id
    替换为
    o.line\u-id.filtered(lambda-line:line.tax\u-line\u-id)
  • 使用
    行id删除
    税务行id.金额
    中的
    税务行id.金额
    取决于装饰者
  • 在XML定义中使用另一个字段

该字段的
税号不再可用

如果您检查,您将看到
o.tax\u line\u id
o.line\u id.filtered(lambda line:line.tax\u line\u id)
替换

  • 尝试将方法中的
    o.tax\u-line\u-id
    替换为
    o.line\u-id.filtered(lambda-line:line.tax\u-line\u-id)
  • 使用
    行id删除
    税务行id.金额
    中的
    税务行id.金额
    取决于装饰者
  • 在XML定义中使用另一个字段

一位开发人员向我发送了此承诺,关于odoo 13的会计变更,我正在阅读并尝试适应,但目前没有成功,可能有人比我更了解一位开发人员向我发送的此承诺,关于odoo 13的会计变更,我正在阅读并尝试进行调整,但目前没有成功。当我替换line_id.tax_line_id.amount时,可能有人比我更了解,它只显示了它的税收金额。我的意思是,如果我在创建税收时写下10%的金额,仅显示10。这不是价格的计算。我想获取此税的计算价格。@aungkoklin它与
tax\u line\u id
的混合无关,因此尝试添加一个新问题。当我替换line\u id.tax\u line\u id.amount时,它只显示其税额。我的意思是,如果我在创建此税时写入10%的金额,仅显示10。这不是价格计算。我想获取此税的计算价格。@aungkoklin它与
tax\u line\u id
的混合无关,请尝试添加一个新问题。
      ->    <field name="tax_line_ids" position="after">
            <group name="documentos_relacionados" string="Documentos Relacionados">
                <field colspan="4" nolabel="1" name="fiscal_document_related_ids">
                    <tree>
                        <field name="document_type"/>
                        <field name="access_key"/>
                        <field name="serie"/>
                        <field name="internal_number"/>
                    </tree>