Add picking location on warehouse

issue4911
review24281002
This commit is contained in:
Cédric Krier committed 2015-09-14 10:17:04 +02:00
1 parent aacba5e219
commit f6b10b766e
5 files changed
+25 -9

No files matched your search

+1
View File
@@ -1,3 +1,4 @@
* Add picking location on warehouse
* Always compute expected quantity in inventory
* Allow to change the destination of internal shipment's moves
* Allow to modify internal shipment moves in waiting state
+9 -8
View File
@@ -19,12 +19,13 @@ virtually stored. There are six types of locations:
* Warehouse
Warehouses are meta-locations which define input, storage and output
locations. These locations are all of type Storage. Input and Output
are locations where incoming an outgoing product are temporally
stored awaiting transportation. The storage location is often the
biggest location where products are stored for middle or long
periods of time.
Warehouses are meta-locations which define input, storage, picking and output
locations. These locations are all of type Storage. Input and Output are
locations where incoming an outgoing product are temporally stored awaiting
transportation. The storage location is often the biggest location where
products are stored for middle or long periods of time. The picking location
is optionally where the products are picked by the customer shipment
otherwise the storage location is used.
* Customer
@@ -154,8 +155,8 @@ out of which the product are going) and two list of moves:
* Inventory moves
The moves between a storage location and the output location of the
warehouse
The moves between the picking or storage location and the output location of
the warehouse
* Outgoing moves
+11
View File
@@ -90,6 +90,17 @@ class Location(ModelSQL, ModelView):
('parent', 'child_of', [Eval('id')]),
('parent', '=', None)]],
depends=['type', 'active', 'id'])
picking_location = fields.Many2One(
'stock.location', 'Picking', states={
'invisible': Eval('type') != 'warehouse',
'readonly': ~Eval('active'),
},
domain=[
('type', '=', 'storage'),
('parent', 'child_of', [Eval('storage_location', -1)]),
],
depends=['type', 'active', 'storage_location'],
help='If empty the Storage is used')
quantity = fields.Function(fields.Float('Quantity'), 'get_quantity')
forecast_quantity = fields.Function(fields.Float('Forecast Quantity'),
'get_quantity')
+2 -1
View File
@@ -1068,8 +1068,9 @@ class ShipmentOut(Workflow, ModelSQL, ModelView):
'Return inventory move for the outgoing move'
pool = Pool()
Move = pool.get('stock.move')
wrh = move.shipment.warehouse
return Move(
from_location=move.shipment.warehouse.storage_location,
from_location=wrh.picking_location or wrh.storage_location,
to_location=move.from_location,
product=move.product,
uom=move.uom,
+2
View File
@@ -24,4 +24,6 @@ this repository contains the full copyright notices and license terms. -->
<newline/>
<label name="storage_location"/>
<field name="storage_location"/>
<label name="picking_location"/>
<field name="picking_location"/>
</form>