コンテンツへスキップ
メニュー
この質問にフラグが付けられました
1 返信
1199 ビュー

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
1215
1
5月 24
2605
1
1月 24
1659
2
12月 24
14942
0
2月 19
2373