diff options
| author | Nicolas Martinelli <nim@odoo.com> | 2020-10-30 14:29:31 +0000 |
|---|---|---|
| committer | Nicolas Martinelli <nim@odoo.com> | 2020-10-30 14:34:07 +0000 |
| commit | 15368c6d1316d43b1591b88e4d5786d86403f8a1 (patch) | |
| tree | e34589082249c1f9f2f847437458a35f2dc8a63a | |
| parent | d33785032b1ca2c6e1d4ade7e174d024fae9a151 (diff) | |
[FIX] sale_stock: prevent incorrect computation of kits
- Activate UoM
- Create 3 products: AB, A & B
- Create a kit BoM for AB
- 1 units of A
- 1 kg of B
- Sell 1 unit of AB, confirm
The error "The unit of measure Units defined on the order line
doesn't belong to the same category...".
This happens because `_compute_quantity` is called on `stock.moves`
related to different products.
As a first step, we simply keep only the moves of the same product,
meaning that the `qty_available_today` and `free_qty_today` are not
supported for kits.
opw-2372676
closes odoo/odoo#61057
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
| -rw-r--r-- | addons/sale_stock/models/sale_order.py | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/addons/sale_stock/models/sale_order.py b/addons/sale_stock/models/sale_order.py index e856e9a1732..6020a35e6ec 100644 --- a/addons/sale_stock/models/sale_order.py +++ b/addons/sale_stock/models/sale_order.py @@ -305,7 +305,7 @@ class SaleOrderLine(models.Model): for line in self.filtered(lambda l: l.state == 'sale'): if not line.display_qty_widget: continue - moves = line.move_ids + moves = line.move_ids.filtered(lambda m: m.product_id == line.product_id) line.forecast_expected_date = max(moves.filtered("forecast_expected_date").mapped("forecast_expected_date"), default=False) line.qty_available_today = 0 line.free_qty_today = 0 |
