summaryrefslogtreecommitdiff
path: root/addons
diff options
context:
space:
mode:
authorArnold Moyaux <arm@odoo.com>2019-09-05 07:57:21 +0000
committerSimon Lejeune <sle@openerp.com>2019-09-18 07:14:53 +0000
commit93c53265ed481b34c4ce3ce5f112b7e0486ef116 (patch)
treee2d12d67015b87cc193d6cdb7cbb621730c941a7 /addons
parent186b5120237b6e9b3dae12f074f9e48d2a2236ad (diff)
[FIX] mrp_subcontracting: multi company
Diffstat (limited to 'addons')
-rw-r--r--addons/mrp_subcontracting/models/stock_move.py2
-rw-r--r--addons/mrp_subcontracting/models/stock_picking.py7
-rw-r--r--addons/mrp_subcontracting/wizard/stock_picking_return.py2
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)],