如何在Odoo 10中每次调用python函数

How to call python function every time in Odoo 10

本文关键字:调用 python 函数 Odoo      更新时间:2023-09-26

我在purchase.order上有一个按钮,它做了一些我想在采购订单通过采购创建销售订单时自动运行按钮的功能。

我认为这也是可以通过javascript当屏幕加载(不知道太多的js)。

class Purchase_Order(models.Model):
    _inherit = 'purchase.order'
    @api.multi
    def _unlink_imprint_charges(self):
        self.env['purchase.order.line'].search(['&', ('order_id', '=', self.ids), ('is_charge', '=', True)]).unlink()
    @api.multi
    def charge_set_po(self):
        self._unlink_imprint_charges()
        for obj in self.order_line:
            obj.env['purchase.order.line']._add_imprint_location(obj, self)

我想在用户单击PO或采购完成时调用charge_set_po函数。



您可以为此目的创建一个计算字段。

@api.one
def _foo(self):
   print 'Foo'
action_compute = fields.Char(compute='_foo')

当您在树视图中单击采购订单时,此功能将起作用。