diff --git a/content/applications/inventory_and_mrp/inventory/warehouses_storage/advanced_operations_warehouse.rst b/content/applications/inventory_and_mrp/inventory/warehouses_storage/advanced_operations_warehouse.rst index 730e592d2..f9e363829 100644 --- a/content/applications/inventory_and_mrp/inventory/warehouses_storage/advanced_operations_warehouse.rst +++ b/content/applications/inventory_and_mrp/inventory/warehouses_storage/advanced_operations_warehouse.rst @@ -19,3 +19,4 @@ Advanced operations advanced_operations_warehouse/removal advanced_operations_warehouse/fifo advanced_operations_warehouse/fefo + advanced_operations_warehouse/closest_location diff --git a/content/applications/inventory_and_mrp/inventory/warehouses_storage/advanced_operations_warehouse/closest_location.rst b/content/applications/inventory_and_mrp/inventory/warehouses_storage/advanced_operations_warehouse/closest_location.rst new file mode 100644 index 000000000..396a37c87 --- /dev/null +++ b/content/applications/inventory_and_mrp/inventory/warehouses_storage/advanced_operations_warehouse/closest_location.rst @@ -0,0 +1,98 @@ +======================== +Closest location removal +======================== + +For the *Closest Location* removal strategy, products are picked based on the alphanumeric order of +storage location titles. + +The goal of this strategy is to save the warehouse worker from taking a long journey to a farther +shelf when the product is also available at a closer location. + +.. seealso:: + :doc:`Other removal strategies ` + +.. _inventory/warehouses_storage/sequence: + +To understand *location sequence* in the closest removal strategy, consider the following example: + +.. example:: + A product is stored in the following locations: `Shelf A/Pallet`, `Shelf A/Rack 1`, and `Shelf + A/Rack 2`. + + .. image:: closest_location/locations.png + :align: center + :alt: Show a mockup of real storage location in a warehouse. + + The sublocation, `Pallet`, is on the ground level. Products stored here are easier to retrieve, + compared to requiring a forklift to reach `Rack 1` and `Rack 2`. The storage locations were + strategically named in alphabetic order, based on ease of access. + +.. important:: + To use this removal strategy, the :guilabel:`Storage Locations` and :guilabel:`Multi-Step Routes` + settings **must** be enabled in :menuselection:`Inventory app --> Configuration --> Settings`. + +.. seealso:: + :ref:`Set up removal strategy ` + +.. _inventory/warehouses_storage/location-name: + +Location names +============== + +To configure location names, begin by navigating to :menuselection:`Inventory app --> Configuration +--> Locations`. Then, select an existing location, or click :guilabel:`New` to create a new one, and +then enter the desired name in the :guilabel:`Location Name` field. + +Once the locations are named in alphabetical order, based on their proximity to the output or +packing location, set the removal strategy on the :ref:`parent location +`. + +To do that, in the :guilabel:`Locations` list, select the parent location of the alphabetically +named storage locations. + +Doing so opens the form for the parent location. In the :guilabel:`Removal Strategy` field, select +:guilabel:`Closest Location`. + +.. example:: + In a warehouse, the storage location `WH/Stock/Shelf 1` is located closest to the packing area, + where products retrieved from shelves are packed for shipment. The popular product, `iPhone + charger` is stored in three locations, `WH/Stock/Shelf 1`, `WH/Stock/Shelf 2`, and + `WH/Stock/Shelf 3`. + + To use closest location, set the removal strategy on the parent location, 'WH/Stock'. + +Workflow +======== + +To see how the closest location removal strategy works, consider the following example, featuring +the popular product, `iPhone charger`, which is stored in `WH/Stock/Shelf 1`, `WH/Stock/Shelf 2`, +and `WH/Stock/Shelf 3`. + +Fifteen, five, and thirty units are in stock at each respective location. + +.. tip:: + To check the on-hand stock at each storage location, navigate to the product form, and click the + :guilabel:`On Hand` smart button. + + .. image:: closest_location/on-hand-stock.png + :align: center + :alt: Show on-hand stock at all locations. + +Create a :ref:`delivery order ` for eighteen units of the `iPhone +charger` by navigating to the :menuselection:`Sales app` and creating a new quotation. + +After adding the products, clicking :guilabel:`Confirm` creates a delivery order that reserves items +stored at the closest location, using the removal strategy. + +For more details about *where* the units were picked, select the :guilabel:`⦙≣ (bulleted list)` +icon, located on the far-right. Doing so opens the :guilabel:`Open: Stock move` pop-up window that +displays how the reserved items were picked, according to the removal strategy. + +In the :guilabel:`Open: Stock move` pop-up window, the :guilabel:`Pick from` field displays where +the quantities to fulfill the :guilabel:`Demand` are picked. All fifteen of the units stored at the +closest location, `WH/Stock/Shelf 1`, are picked first. The remaining three units are then selected +from the second closest location, `WH/Stock/Shelf 2`. + +.. image:: closest_location/stock-move-window.png + :align: center + :alt: Display *Pick From* quantities for the order for iPhone chargers. diff --git a/content/applications/inventory_and_mrp/inventory/warehouses_storage/advanced_operations_warehouse/closest_location/locations.png b/content/applications/inventory_and_mrp/inventory/warehouses_storage/advanced_operations_warehouse/closest_location/locations.png new file mode 100644 index 000000000..74da473f0 Binary files /dev/null and b/content/applications/inventory_and_mrp/inventory/warehouses_storage/advanced_operations_warehouse/closest_location/locations.png differ diff --git a/content/applications/inventory_and_mrp/inventory/warehouses_storage/advanced_operations_warehouse/closest_location/on-hand-stock.png b/content/applications/inventory_and_mrp/inventory/warehouses_storage/advanced_operations_warehouse/closest_location/on-hand-stock.png new file mode 100644 index 000000000..cd3dab48c Binary files /dev/null and b/content/applications/inventory_and_mrp/inventory/warehouses_storage/advanced_operations_warehouse/closest_location/on-hand-stock.png differ diff --git a/content/applications/inventory_and_mrp/inventory/warehouses_storage/advanced_operations_warehouse/closest_location/stock-move-window.png b/content/applications/inventory_and_mrp/inventory/warehouses_storage/advanced_operations_warehouse/closest_location/stock-move-window.png new file mode 100644 index 000000000..c00e70b04 Binary files /dev/null and b/content/applications/inventory_and_mrp/inventory/warehouses_storage/advanced_operations_warehouse/closest_location/stock-move-window.png differ diff --git a/content/applications/inventory_and_mrp/inventory/warehouses_storage/advanced_operations_warehouse/removal.rst b/content/applications/inventory_and_mrp/inventory/warehouses_storage/advanced_operations_warehouse/removal.rst index 207b59fc8..ef3a28134 100644 --- a/content/applications/inventory_and_mrp/inventory/warehouses_storage/advanced_operations_warehouse/removal.rst +++ b/content/applications/inventory_and_mrp/inventory/warehouses_storage/advanced_operations_warehouse/removal.rst @@ -18,19 +18,19 @@ Odoo automatically select how products are selected for orders: - :doc:`FIFO ` - LIFO - :doc:`FEFO ` - - Closest Location + - :doc:`Closest Location ` - Least Packages * - Based on - :ref:`Incoming date ` - :ref:`Incoming date ` - :ref:`Removal date ` - - Location sequence + - :ref:`Location sequence ` - Package quantity * - Selection order - First in - Last in - :ref:`First to expire ` - - Alphanumeric name of location + - :ref:`Alphanumeric name of location ` - Quantity closest to fulfilling demand For comprehensive examples for how to use each removal strategy, refer to each individual @@ -144,7 +144,7 @@ and alert dates on a lot or serial number by navigating to :menuselection:`Inven Configuration --> Settings`. Under the :guilabel:`Traceability` heading, ensure the :guilabel:`Lots & Serial Numbers` feature is -selected, and then select the checkbox for :guilabel:`Expiration Dates` to enable the feature. +selected, and then select the check box for :guilabel:`Expiration Dates` to enable the feature. .. image:: removal/enable-expiration.png :align: center