diff --git a/addons/point_of_sale/models/stock_picking.py b/addons/point_of_sale/models/stock_picking.py index 21fecc2e6f17a18188838ff1d0d4b8408410f87b..f04d9a44ba2ec6c6cd3e98292a674479cabb6778 100644 --- a/addons/point_of_sale/models/stock_picking.py +++ b/addons/point_of_sale/models/stock_picking.py @@ -43,6 +43,7 @@ class StockPicking(models.Model): ) positive_picking._create_move_from_pos_order_lines(positive_lines) + self.env.flush_all() try: with self.env.cr.savepoint(): positive_picking._action_done() @@ -62,6 +63,7 @@ class StockPicking(models.Model): self._prepare_picking_vals(partner, return_picking_type, location_dest_id, return_location_id) ) negative_picking._create_move_from_pos_order_lines(negative_lines) + self.env.flush_all() try: with self.env.cr.savepoint(): negative_picking._action_done() diff --git a/addons/stock/models/stock_move.py b/addons/stock/models/stock_move.py index 791299e6a1d075b08fe3fba903c08045283e64d1..0c063222318f6791900c92768cc32c534297f8cf 100644 --- a/addons/stock/models/stock_move.py +++ b/addons/stock/models/stock_move.py @@ -1494,6 +1494,7 @@ Please change the quantity done or the rounding precision of your unit of measur if float_compare(taken_quantity, int(taken_quantity), precision_digits=rounding) != 0: taken_quantity = 0 + self.env.flush_all() try: with self.env.cr.savepoint(): if not float_is_zero(taken_quantity, precision_rounding=self.product_id.uom_id.rounding):