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

I have something like this in a wizard:

class SaleOrderLine():
    _inherit = 'sale.order.line'
    boolean_field = fields.Boolean(compute='_compute_boolean_field', store=True)

    @api.depends('product_id', 'qty')
    def _compute_boolean_field(self):
        self.flush_recordset()
        # execute query that uses the each recordset's product_id qty
        # loop and update boolean_field

My issue is when I'm updating sale.order.line from the parent(sale.order) in the UI, the query does not work with my recent change to product_id and so the boolean_field computation is wrong despite flush_recordset()(and all other forms of flushes even self.env.cr.commit()). 

How do I force the UI changes on sale.order.line to the database before the user saves the record so the query works as expected? 

頭像
捨棄
作者 最佳答案

For anyone in the same situation. 
if self._origin:
​self._origin.write(vals).

頭像
捨棄
相關帖文 回覆 瀏覽次數 活動
0
12月 24
1220
1
5月 24
2607
1
1月 24
1661
2
12月 24
14947
0
2月 19
2375