跳至內容
選單
此問題已被標幟
1 回覆
3718 瀏覽次數

What i have understood so far is:

1. 'qty_available' is a computed field: which means it will not be called unless it is loaded from view

2. 'api.depends' can only be used on computed field

3. maybe "store=True" on qty_available will work but I feel a bit risky, its odoo base field so maybe it will break

4. override 'write' function is kinda overkill

My goal is really simple, I want to trigger a function when qty_available (Quantity on hand) of a product changes, what should I do? I dont know if 'stock.quant' has anything to do with it

頭像
捨棄

supering the action_done of stock move will help you in this case ?

最佳答案

Hi,

You can super the compute function for that qty_available field by inheriting the model and you can call a new function inside that compute function, and you can define the function inside that model so that whenever that compute function is called the new function will be automatically triggered.
Please refer to the following code:
from odoo import fields, models


class ProductTemplate(models.Model):
    _inherit = 'product.template'

    def _compute_quantities(self):
        super(ProductTemplate, self)._compute_quantities()
        self.my_function()
   
    def my_function(self):
        print("This function will calls when compute function works")


Hope it helps

頭像
捨棄
相關帖文 回覆 瀏覽次數 活動
2
8月 22
2522
1
5月 22
2958
0
8月 17
5475
2
3月 15
6503
2
1月 24
3245