Skip to Content
Menu
This question has been flagged
1 Reply
1077 Views

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? 

Avatar
Discard
Author Best Answer

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

Avatar
Discard
Related Posts Replies Views Activity
0
Dec 24
1064
1
May 24
2394
1
Jan 24
1524
2
Dec 24
14729
0
Feb 19
2291