diff options
| author | Arnold Moyaux <arm@odoo.com> | 2019-09-05 07:57:21 +0000 |
|---|---|---|
| committer | Simon Lejeune <sle@openerp.com> | 2019-09-18 07:14:53 +0000 |
| commit | 93c53265ed481b34c4ce3ce5f112b7e0486ef116 (patch) | |
| tree | e2d12d67015b87cc193d6cdb7cbb621730c941a7 /addons | |
| parent | 186b5120237b6e9b3dae12f074f9e48d2a2236ad (diff) | |
[FIX] mrp_subcontracting: multi company
Diffstat (limited to 'addons')
| -rw-r--r-- | addons/mrp_subcontracting/models/stock_move.py | 2 | ||||
| -rw-r--r-- | addons/mrp_subcontracting/models/stock_picking.py | 7 | ||||
| -rw-r--r-- | addons/mrp_subcontracting/wizard/stock_picking_return.py | 2 |
3 files changed, 6 insertions, 5 deletions
diff --git a/addons/mrp_subcontracting/models/stock_move.py b/addons/mrp_subcontracting/models/stock_move.py index 80f8badbd24..73b454d22ee 100644 --- a/addons/mrp_subcontracting/models/stock_move.py +++ b/addons/mrp_subcontracting/models/stock_move.py @@ -96,7 +96,7 @@ class StockMove(models.Model): subcontract_details_per_picking[move.picking_id].append((move, bom)) move.write({ 'is_subcontract': True, - 'location_id': self.picking_id.partner_id.property_stock_subcontractor.id + 'location_id': move.picking_id.partner_id.with_context(force_company=move.company_id.id).property_stock_subcontractor.id }) for picking, subcontract_details in subcontract_details_per_picking.items(): picking._subcontracted_produce(subcontract_details) diff --git a/addons/mrp_subcontracting/models/stock_picking.py b/addons/mrp_subcontracting/models/stock_picking.py index 734a0e51933..7c366b9720c 100644 --- a/addons/mrp_subcontracting/models/stock_picking.py +++ b/addons/mrp_subcontracting/models/stock_picking.py @@ -123,12 +123,13 @@ class StockPicking(models.Model): product = subcontract_move.product_id warehouse = self._get_warehouse(subcontract_move) vals = { + 'company_id': subcontract_move.company_id.id, 'procurement_group_id': group.id, 'product_id': product.id, 'product_uom_id': subcontract_move.product_uom.id, 'bom_id': bom.id, - 'location_src_id': subcontract_move.picking_id.partner_id.property_stock_subcontractor.id, - 'location_dest_id': subcontract_move.picking_id.partner_id.property_stock_subcontractor.id, + 'location_src_id': subcontract_move.picking_id.partner_id.with_context(force_company=subcontract_move.company_id.id).property_stock_subcontractor.id, + 'location_dest_id': subcontract_move.picking_id.partner_id.with_context(force_company=subcontract_move.company_id.id).property_stock_subcontractor.id, 'product_qty': subcontract_move.product_uom_qty, 'picking_type_id': warehouse.subcontracting_type_id.id } @@ -137,7 +138,7 @@ class StockPicking(models.Model): def _subcontracted_produce(self, subcontract_details): self.ensure_one() for move, bom in subcontract_details: - mo = self.env['mrp.production'].create(self._prepare_subcontract_mo_vals(move, bom)) + mo = self.env['mrp.production'].with_context(force_company=move.company_id.id).create(self._prepare_subcontract_mo_vals(move, bom)) self.env['stock.move'].create(mo._get_moves_raw_values()) mo.action_confirm() diff --git a/addons/mrp_subcontracting/wizard/stock_picking_return.py b/addons/mrp_subcontracting/wizard/stock_picking_return.py index cb242839b80..94162fe308d 100644 --- a/addons/mrp_subcontracting/wizard/stock_picking_return.py +++ b/addons/mrp_subcontracting/wizard/stock_picking_return.py @@ -12,7 +12,7 @@ class ReturnPicking(models.TransientModel): res = super(ReturnPicking, self)._onchange_picking_id() if not any(self.product_return_moves.filtered(lambda r: r.quantity > 0).move_id.mapped('is_subcontract')): return res - subcontract_location = self.picking_id.partner_id.property_stock_subcontractor + subcontract_location = self.picking_id.partner_id.with_context(force_company=self.picking_id.company_id.id).property_stock_subcontractor self.location_id = subcontract_location.id domain_location = OR([ ['|', ('id', '=', self.original_location_id.id), ('return_location', '=', True)], |
