OpenERP:多个模块覆盖onchange函数

时间:2015-05-06 15:09:13

标签: python openerp onchange openerp-7 override

我需要覆盖sale.order中存在的onchange_partner_id函数,但我正在使用已经有模块重写此函数的系统。 我尝试使用类似的代码编写自己的onchange_partner_id

def onchange_partner_id(self, cr, uid, ids, part):
    res = super(sale_order, self).onchange_partner_id(cr, uid, ids, part)
    // doing some stuff and adding it to res['value']['myfield']
return res

但我的功能并未被OpenERP读取。 所以我的问题是,是否有可能有多个功能覆盖相同的功能,如果可能,我该如何进行? 提前致谢

1 个答案:

答案 0 :(得分:0)

是的,您可以覆盖此方法,因为您需要定义继承sale.order的新类并定义您的方法。

您的方法将被明确调用。

class sale_order(osv.osv):
    _inherit = 'sale.order'

    def onchange_partner_id(self, cr, uid, ids, part, context=None):
        res = super(sale_order, self).onchange_partner_id(cr, uid, ids, part,context=context)
        // doing some stuff and adding it to res['value']['myfield']
        return res