diff --git a/addons/stock/models/res_config_settings.py b/addons/stock/models/res_config_settings.py index c52262e9515..c6f52d3d258 100644 --- a/addons/stock/models/res_config_settings.py +++ b/addons/stock/models/res_config_settings.py @@ -86,6 +86,9 @@ class ResConfigSettings(models.TransientModel): res = super(ResConfigSettings, self).execute() self.ensure_one() if self.group_stock_multi_locations or self.group_stock_production_lot or self.group_stock_tracking_lot: - picking_types = self.env['stock.picking.type'].with_context(active_test=False).search([('show_operations', '=', False)]) + picking_types = self.env['stock.picking.type'].with_context(active_test=False).search([ + ('code', '!=', 'incoming'), + ('show_operations', '=', False) + ]) picking_types.write({'show_operations': True}) return res diff --git a/addons/stock/models/stock_picking.py b/addons/stock/models/stock_picking.py index b6a76e5ebf3..06f7d2e4247 100644 --- a/addons/stock/models/stock_picking.py +++ b/addons/stock/models/stock_picking.py @@ -136,6 +136,11 @@ class PickingType(models.Model): elif self.code == 'outgoing': self.default_location_src_id = self.env.ref('stock.stock_location_stock').id self.default_location_dest_id = self.env.ref('stock.stock_location_customers').id + self.show_operations = self.code != 'incoming' and self.user_has_groups( + 'stock.group_production_lot,' + 'stock.group_stock_multi_locations,' + 'stock.group_tracking_lot' + ) def _get_action(self, action_xmlid): # TDE TODO check to have one view + custo in methods