首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >开发Odoo 9自定义模块时的错误?

开发Odoo 9自定义模块时的错误?
EN

Stack Overflow用户
提问于 2016-10-15 06:32:08
回答 2查看 103关注 0票数 0

我试图编写继承其他模块的Odoo 9模块,当我试图安装新模块时,出现了以下错误:

Odoo服务器错误

代码语言:javascript
复制
Traceback (most recent call last):
  File "/opt/odoo/openerp/http.py", line 648, in _handle_exception
    return super(JsonRequest, self)._handle_exception(exception)
  File "/opt/odoo/openerp/http.py", line 685, in dispatch
    result = self._call_function(**self.params)
  File "/opt/odoo/openerp/http.py", line 321, in _call_function
    return checked_call(self.db, *args, **kwargs)
  File "/opt/odoo/openerp/service/model.py", line 118, in wrapper
    return f(dbname, *args, **kwargs)
  File "/opt/odoo/openerp/http.py", line 314, in checked_call
    result = self.endpoint(*a, **kw)
  File "/opt/odoo/openerp/http.py", line 964, in __call__
    return self.method(*args, **kw)
  File "/opt/odoo/openerp/http.py", line 514, in response_wrap
    response = f(*args, **kw)
  File "/opt/odoo/addons/web/controllers/main.py", line 892, in call_button
    action = self._call_kw(model, method, args, {})
  File "/opt/odoo/addons/web/controllers/main.py", line 880, in _call_kw
    return getattr(request.registry.get(model), method)(request.cr, request.uid, *args, **kwargs)
  File "/opt/odoo/openerp/api.py", line 250, in wrapper
    return old_api(self, *args, **kwargs)
  File "/opt/odoo/openerp/addons/base/module/wizard/base_module_upgrade.py", line 87, in upgrade_module
    openerp.modules.registry.RegistryManager.new(cr.dbname, update_module=True)
  File "/opt/odoo/openerp/modules/registry.py", line 386, in new
    openerp.modules.load_modules(registry._db, force_demo, status, update_module)
  File "/opt/odoo/openerp/modules/loading.py", line 338, in load_modules
    loaded_modules, update_module)
  File "/opt/odoo/openerp/modules/loading.py", line 237, in load_marked_modules
    loaded, processed = load_module_graph(cr, graph, progressdict, report=report, skip_modules=loaded_modules, perform_checks=perform_checks)
  File "/opt/odoo/openerp/modules/loading.py", line 123, in load_module_graph
    load_openerp_module(package.name)
  File "/opt/odoo/openerp/modules/module.py", line 331, in load_openerp_module
    __import__('openerp.addons.' + module_name)
  File "/opt/odoo/openerp/modules/module.py", line 61, in load_module
    mod = imp.load_module('openerp.addons.' + module_part, f, path, descr)
  File "/opt/odoo/addons/old_residual/__init__.py", line 3, in <module>
    from . import models
  File "/opt/odoo/addons/old_residual/models/__init__.py", line 3, in <module>
    from . import old_residual
  File "/opt/odoo/addons/old_residual/models/old_residual.py", line 14
    for invoice in self:
      ^
IndentationError: expected an indented block**
EN

回答 2

Stack Overflow用户

发布于 2016-10-15 14:16:57

代码语言:javascript
复制
# -*- coding: utf-8 -*-

from openerp import models, fields, api

class old_residual(models.Model):

    _inherit = "account.invoice"

    old_residual = fields.Monetary(string='Nợ cũ',currency_field='company_currency_id', compute='_compute_o$


@api.multi
def _compute_old_residual(self):
for invoice in self:
    invs = self.search([('state', '=', 'open'), ('partner_id', '=', invoice.partner_id.id)])
    out_invoice = 0
    in_invoice = 0
    out_refund = 0
    in_refund = 0
    for inv in invs:
        if inv.type == 'out_invoice':
            out_invoice += inv.residual
        if inv.type == 'in_invoice':
            in_invoice += inv.residual
        if inv.type == 'out_refund':
            out_refund += inv.residual
        if inv.type == 'in_refund':
            in_refund += inv.residual
    invoice.old_residual = out_invoice + in_refund - in_invoice - out_refund - invoice.amount_total
票数 0
EN

Stack Overflow用户

发布于 2016-11-17 09:30:01

在函数声明之后,您应该提供意图

代码语言:javascript
复制
@api.multi
def _compute_old_residual(self):
    for invoice in self:
        invs = self.search([('state', '=', 'open'), ('partner_id', '=', invoice.partner_id.id)])
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40055799

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档