[IMP] stock: cannot select view location as destination
Do not allow to select views as destination or source location in a picking. Task-2428819 Part-of: odoo/odoo#74364
This commit is contained in:
@@ -254,7 +254,11 @@ class Location(models.Model):
|
||||
for values in quant_data:
|
||||
qty_by_location[values['location_id'][0]] += values['quantity']
|
||||
|
||||
return putaway_rules._get_putaway_location(product, quantity, package, qty_by_location) or self
|
||||
putaway_location = putaway_rules._get_putaway_location(product, quantity, package, qty_by_location)
|
||||
if not putaway_location:
|
||||
putaway_location = locations[0] if locations and self.usage == 'view' else self
|
||||
|
||||
return putaway_location
|
||||
|
||||
def _get_next_inventory_date(self):
|
||||
""" Used to get the next inventory date for a quant located in this location. It is
|
||||
|
||||
@@ -54,8 +54,8 @@ class StockMoveLine(models.Model):
|
||||
'res.partner', 'From Owner',
|
||||
check_company=True,
|
||||
help="When validating the transfer, the products will be taken from this owner.")
|
||||
location_id = fields.Many2one('stock.location', 'From', check_company=True, required=True)
|
||||
location_dest_id = fields.Many2one('stock.location', 'To', check_company=True, required=True)
|
||||
location_id = fields.Many2one('stock.location', 'From', domain="[('usage', '!=', 'view')]", check_company=True, required=True)
|
||||
location_dest_id = fields.Many2one('stock.location', 'To', domain="[('usage', '!=', 'view')]", check_company=True, required=True)
|
||||
lots_visible = fields.Boolean(compute='_compute_lots_visible')
|
||||
picking_code = fields.Selection(related='picking_id.picking_type_id.code', readonly=True)
|
||||
picking_type_use_create_lots = fields.Boolean(related='picking_id.picking_type_id.use_create_lots', readonly=True)
|
||||
|
||||
@@ -213,8 +213,8 @@
|
||||
<field name="product_uom_category_id" invisible="1"/>
|
||||
<field name="product_id" invisible="1"/>
|
||||
<field name="package_level_id" invisible="1"/>
|
||||
<field name="location_id" options="{'no_create': True}" attrs="{'readonly': ['&', ('package_level_id', '!=', False), ('parent.picking_type_entire_packs', '=', True)]}" invisible="not context.get('show_source_location')" domain="[('id', 'child_of', parent.location_id), '|', ('company_id', '=', False), ('company_id', '=', company_id)]" groups="stock.group_stock_multi_locations"/>
|
||||
<field name="location_dest_id" width="0.75" attrs="{'readonly': ['&', ('package_level_id', '!=', False), ('parent.picking_type_entire_packs', '=', True)]}" invisible="not context.get('show_destination_location')" domain="[('id', 'child_of', parent.location_dest_id), '|', ('company_id', '=', False), ('company_id', '=', company_id)]" groups="stock.group_stock_multi_locations"/>
|
||||
<field name="location_id" options="{'no_create': True}" attrs="{'readonly': ['&', ('package_level_id', '!=', False), ('parent.picking_type_entire_packs', '=', True)]}" invisible="not context.get('show_source_location')" domain="[('id', 'child_of', parent.location_id), '|', ('company_id', '=', False), ('company_id', '=', company_id), ('usage', '!=', 'view')]" groups="stock.group_stock_multi_locations"/>
|
||||
<field name="location_dest_id" width="0.75" attrs="{'readonly': ['&', ('package_level_id', '!=', False), ('parent.picking_type_entire_packs', '=', True)]}" invisible="not context.get('show_destination_location')" domain="[('id', 'child_of', parent.location_dest_id), '|', ('company_id', '=', False), ('company_id', '=', company_id), ('usage', '!=', 'view')]" groups="stock.group_stock_multi_locations"/>
|
||||
<field name="lot_id" groups="stock.group_production_lot"
|
||||
attrs="{'readonly': ['&', ('package_level_id', '!=', False), ('parent.picking_type_entire_packs', '=', True)]}"
|
||||
invisible="not context.get('show_lots_m2o')"
|
||||
@@ -253,8 +253,8 @@
|
||||
<field name="move_id" invisible="1"/>
|
||||
<field name="picking_id" invisible="1"/>
|
||||
<field name="product_uom_category_id" invisible="1"/>
|
||||
<field name="location_id" options="{'no_create': True}" attrs="{'column_invisible': [('parent.picking_type_code', '=', 'incoming')]}" groups="stock.group_stock_multi_locations" domain="[('id', 'child_of', parent.location_id), '|', ('company_id', '=', False), ('company_id', '=', company_id)]"/>
|
||||
<field name="location_dest_id" options="{'no_create': True}" attrs="{'column_invisible': [('parent.picking_type_code', '=', 'outgoing')]}" groups="stock.group_stock_multi_locations" domain="[('id', 'child_of', parent.location_dest_id), '|', ('company_id', '=', False), ('company_id', '=', company_id)]"/>
|
||||
<field name="location_id" options="{'no_create': True}" attrs="{'column_invisible': [('parent.picking_type_code', '=', 'incoming')]}" groups="stock.group_stock_multi_locations" domain="[('id', 'child_of', parent.location_id), '|', ('company_id', '=', False), ('company_id', '=', company_id), ('usage', '!=', 'view')]"/>
|
||||
<field name="location_dest_id" options="{'no_create': True}" attrs="{'column_invisible': [('parent.picking_type_code', '=', 'outgoing')]}" groups="stock.group_stock_multi_locations" domain="[('id', 'child_of', parent.location_dest_id), '|', ('company_id', '=', False), ('company_id', '=', company_id), ('usage', '!=', 'view')]"/>
|
||||
<field name="package_id" groups="stock.group_tracking_lot"/>
|
||||
<field name="result_package_id" groups="stock.group_tracking_lot"/>
|
||||
<field name="lots_visible" invisible="1"/>
|
||||
|
||||
Reference in New Issue
Block a user