mirror of
https://github.com/odoo/documentation.git
synced 2026-03-27 14:10:23 +07:00
[IMP] Inventory: Storage categories sublocation update
closes odoo/documentation#16416
X-original-commit: 0f7e1c1bd5
Signed-off-by: Erin Jerison (erjer) <erjer@odoo.com>
Co-authored-by: Rex <11528309+huisit@users.noreply.github.com>
Co-authored-by: Felicia Kuan <feku@odoo.com>
This commit is contained in:
@@ -3,7 +3,10 @@ Storage categories
|
||||
==================
|
||||
|
||||
A *storage category* is used with :doc:`putaway rules <putaway>` to assign a storage location to
|
||||
incoming products while accounting for the capacity of that location.
|
||||
incoming products while accounting for the capacity of that location. Assigning categories to
|
||||
storage locations tells Odoo these locations meet specific requirements, such as temperature or
|
||||
accessibility. Odoo then evaluates these locations, based on defined capacity, and recommends the
|
||||
best one on the warehouse transfer form.
|
||||
|
||||
Follow these steps to complete the setup:
|
||||
|
||||
@@ -16,33 +19,57 @@ Follow these steps to complete the setup:
|
||||
.. seealso::
|
||||
:doc:`putaway`
|
||||
|
||||
.. note::
|
||||
Assigning categories to storage locations tells Odoo these locations meet specific requirements,
|
||||
such as temperature or accessibility. Odoo then evaluates these locations, based on defined
|
||||
capacity, and recommends the best one on the warehouse transfer form.
|
||||
|
||||
.. _inventory/routes/enable-storage-categories:
|
||||
|
||||
Configuration
|
||||
=============
|
||||
Enable storage categories
|
||||
=========================
|
||||
|
||||
To enable storage categories, go to :menuselection:`Inventory app --> Configuration --> Settings`.
|
||||
Then, in the :guilabel:`Warehouse` section, ensure the :guilabel:`Storage Locations` and
|
||||
Then, in the *Warehouse* section, ensure the :guilabel:`Storage Locations` and
|
||||
:guilabel:`Multi-Step Routes` features are enabled.
|
||||
|
||||
If intending to set capacities by :ref:`package type <inventory/routes/set-capacity-package>`, also
|
||||
make sure :guilabel:`Packages` is enabled. Click :guilabel:`Save`.
|
||||
To set capacities by :ref:`package type <inventory/routes/set-capacity-package>`, also
|
||||
make sure :guilabel:`Packages` is enabled in the *Operations* section. Click :guilabel:`Save`.
|
||||
|
||||
.. image:: storage_category/enable-categories.png
|
||||
:alt: Enable Storage Locations and Multi-Step Routes to enable storage categories.
|
||||
|
||||
Storage location setup
|
||||
======================
|
||||
|
||||
Set up storage locations to work with the storage category. A parent location must be set up, with
|
||||
child locations (or *sublocations*) assigned to it. This is because the putaway rule's :ref:`Store
|
||||
to <inventory/routes/set-putaway-attribute>` location will be set to the parent location, and the
|
||||
:ref:`storage category <inventory/routes/assign-location>` will be set to the child location.
|
||||
|
||||
Go to :menuselection:`Inventory app --> Configuration --> Locations`.
|
||||
|
||||
First, set up a parent location. This can be as simple as the default `WH/Stock` location.
|
||||
Alternatively, create a new parent location by clicking the :guilabel:`New` button on the
|
||||
:guilabel:`Locations` page. On this parent location form, specify a :guilabel:`Location Name` and
|
||||
:guilabel:`Parent Location`. Select :guilabel:`Internal Location` as the :guilabel:`Location Type`.
|
||||
|
||||
Then, create *sublocations* of this parent location by clicking the :guilabel:`New` button. On the
|
||||
location form, specify a :guilabel:`Location Name`, and set the :guilabel:`Parent Location` to the
|
||||
parent location that was just created.
|
||||
|
||||
.. example::
|
||||
A beverage company stores all of its cans of lemonade on pallets in one section of its warehouse.
|
||||
|
||||
First, they create a location named `Pallets` in the `WH/Stock` location. Then, they create two
|
||||
sublocations, named `PAL1` and `PAL2`. Both have `WH/Stock/Pallets` set as the parent location.
|
||||
|
||||
.. image:: storage_category/new-child-location.png
|
||||
:alt: Create a sublocation.
|
||||
|
||||
.. _inventory/routes/define-storage:
|
||||
|
||||
Define storage category
|
||||
=======================
|
||||
Define storage category limitations
|
||||
===================================
|
||||
|
||||
A storage category with specific limitations **must** be created first, before it is applied to
|
||||
locations, in order to decide the optimal storage location.
|
||||
Before a storage category is applied to locations, it must be configured with specific limitations
|
||||
in order to decide the optimal storage location. Capacity can be limited by weight, product, and
|
||||
package type.
|
||||
|
||||
To create a storage category, go to :menuselection:`Inventory app --> Configuration --> Storage
|
||||
Categories`, and click :guilabel:`New`.
|
||||
@@ -50,15 +77,13 @@ Categories`, and click :guilabel:`New`.
|
||||
On the storage category form, type a name for the category in the :guilabel:`Storage Category`
|
||||
field.
|
||||
|
||||
Options are available to limit capacity by weight, product, and package type.
|
||||
|
||||
.. note::
|
||||
Weight limits can be combined with capacity by package or product (e.g. a maximum of one hundred
|
||||
products with a total weight of two hundred kilograms).
|
||||
|
||||
While it is possible to limit capacity by product and package type at the same location, it may
|
||||
be more practical to store items in different amounts across various locations, as shown in this
|
||||
example of :ref:`capacity by package <inventory/routes/set-capacity-package>`.
|
||||
be more practical to store items in different amounts across various locations, as shown in the
|
||||
:ref:`limit capacity by package <inventory/routes/set-capacity-package>` example.
|
||||
|
||||
The :guilabel:`Allow New Product` field defines when the location is considered available to store a
|
||||
product:
|
||||
@@ -69,10 +94,6 @@ product:
|
||||
- :guilabel:`Allow mixed products`: several different products can be stored in this location at the
|
||||
same time.
|
||||
|
||||
.. tip::
|
||||
When clicked, the :icon:`oi-arrows-v` :guilabel:`Locations` smart button shows which storage
|
||||
locations the category has been assigned to.
|
||||
|
||||
.. important::
|
||||
Odoo does **not** automatically split quantities across multiple storage locations. If an
|
||||
incoming receipt contains several units or packages and the first recommended location exceeds
|
||||
@@ -82,45 +103,44 @@ product:
|
||||
*(Example: If a location can hold 10 units and 12 units arrive, all 12 are still assigned to that
|
||||
location.)*
|
||||
|
||||
Capacity by weight
|
||||
------------------
|
||||
Limit capacity by weight
|
||||
------------------------
|
||||
|
||||
On a storage category form (:menuselection:`Inventory app --> Configuration --> Storage
|
||||
Categories`), set a maximum product weight in the :guilabel:`Max Weight` field. This limit applies
|
||||
to each location assigned this storage category.
|
||||
A maximum product weight can be set in the :guilabel:`Max Weight` field. This limit applies
|
||||
to each location assigned this storage category. If a product weight is defined, the value must be
|
||||
set to greater than `0`.
|
||||
|
||||
This value must be set to greater than `0` if a product weight is defined.
|
||||
Limit capacity by product
|
||||
-------------------------
|
||||
|
||||
Capacity by product
|
||||
-------------------
|
||||
|
||||
In the :guilabel:`Capacity by Product` tab, click :guilabel:`Add a Line` to input items, and enter
|
||||
their capacities in the :guilabel:`Quantity` field.
|
||||
In the :guilabel:`Capacity by Product` tab, click :guilabel:`Add a Line` to enter a product, and set
|
||||
the maximum capacity that should be stored at each location in the :guilabel:`Quantity` field.
|
||||
|
||||
.. example::
|
||||
Ensure only a maximum of five `Large Cabinets` and two `Corner Desk Right Sit` are stored at a
|
||||
single storage location, by specifying those amounts in the :guilabel:`Capacity by Product` tab
|
||||
of a storage category form.
|
||||
single storage location by specifying those amounts in the :guilabel:`Capacity by Product` tab.
|
||||
To ensure only a maximum of five `Large Cabinets` and two `Corner Desk Right Sit` are stored at a
|
||||
single storage location, specify those amounts in the :guilabel:`Capacity by Product` tab.
|
||||
|
||||
.. image:: storage_category/capacity-by-product.png
|
||||
:alt: Show storage category limiting by product count.
|
||||
|
||||
.. _inventory/routes/set-capacity-package:
|
||||
|
||||
Capacity by package
|
||||
-------------------
|
||||
Limit capacity by package type
|
||||
------------------------------
|
||||
|
||||
For companies using :doc:`packages <../../product_management/configure/package>`, it becomes
|
||||
possible to ensure real-time storage capacity checks, based on package types (e.g., crates, bins,
|
||||
Limiting capacity by :doc:`package <../../product_management/configure/package>` makes it
|
||||
possible to enforce real-time storage capacity checks based on package type (e.g., crates, bins,
|
||||
boxes, etc.).
|
||||
|
||||
Create the :ref:`package type <inventory/warehouses_storage/package-type>` before assigning it to a
|
||||
storage category. Create it on the :guilabel:`Inventory` tab of the product form (in the
|
||||
:guilabel:`Packaging` section), or create it from the :guilabel:`Product Packagings` page. Be sure
|
||||
to set the :guilabel:`Package Type`.
|
||||
Click :guilabel:`Add a line` to add a :ref:`package type
|
||||
<inventory/warehouses_storage/package-type>` to the storage category. Alternatively, create a
|
||||
new package type on the :guilabel:`Inventory` tab of the product form (in the :guilabel:`Packaging`
|
||||
section), or from the :guilabel:`Product Packagings` page.
|
||||
|
||||
.. example::
|
||||
Create putaway rules for pallet-stored items, by creating the `High frequency pallets` storage
|
||||
To help create putaway rules for pallet-stored items, create the `High frequency pallets` storage
|
||||
category.
|
||||
|
||||
In the :guilabel:`Capacity by Package` tab, specify the number of packages for the designated
|
||||
@@ -140,40 +160,48 @@ to set the :guilabel:`Package Type`.
|
||||
|
||||
.. _inventory/routes/assign-location:
|
||||
|
||||
Assign to location
|
||||
==================
|
||||
Assign storage locations
|
||||
========================
|
||||
|
||||
Once the storage category is created, assign it to a location. Navigate to the location by going to
|
||||
:menuselection:`Inventory app --> Configuration --> Locations`, and select the desired location.
|
||||
After the storage category is created, it can be assigned to the sublocations. Go to
|
||||
:menuselection:`Inventory app --> Configuration --> Locations`, and open the desired sublocation.
|
||||
Then, select the created category in the :guilabel:`Storage Category` field.
|
||||
|
||||
.. example::
|
||||
Assign the `High frequency pallets` storage category (which limits pallets stored at any location
|
||||
to two pallets) to the `WH/Stock/Pallets/PAL1` sub-location.
|
||||
to two pallets) to the `WH/Stock/Pallets/PAL1` sublocation.
|
||||
|
||||
.. image:: storage_category/location-storage-category.png
|
||||
:alt: When a Storage Category is created, it can be linked to a warehouse location.
|
||||
|
||||
Repeat this step for all sublocations to which the storage category should apply.
|
||||
|
||||
.. tip::
|
||||
On the storage category form, the :icon:`oi-arrows-v` :guilabel:`Locations` smart button shows
|
||||
which storage locations the category has been assigned to.
|
||||
|
||||
.. _inventory/routes/set-putaway-attribute:
|
||||
|
||||
Putaway rule
|
||||
============
|
||||
Create a putaway rule
|
||||
=====================
|
||||
|
||||
With the :ref:`storage category <inventory/routes/define-storage>` and :ref:`location
|
||||
With the :ref:`storage category <inventory/routes/define-storage>` and :ref:`locations
|
||||
<inventory/routes/assign-location>` set up, create the :doc:`putaway rule <putaway>` by navigating
|
||||
to :menuselection:`Inventory app --> Configuration --> Putaway Rules`.
|
||||
|
||||
Click the :guilabel:`New` button to create the putaway rule. Specify a location to store to in the
|
||||
Click the :guilabel:`New` button to create the putaway rule. Specify a location in the
|
||||
:guilabel:`Store to` field.
|
||||
|
||||
Use the :guilabel:`Sublocation` field to specify that you want to use a sublocation with the storage
|
||||
category:
|
||||
Use the :guilabel:`Sublocation` field to specify that you want to use a storage category on the
|
||||
sublocations of the :guilabel:`Store to` field:
|
||||
|
||||
- :guilabel:`Last Used`: The last location that had a move associated with it for that product or
|
||||
product category is used. If there is no last location used, the destination is whatever is
|
||||
specified in the :guilabel:`Store to` field.
|
||||
- :guilabel:`Closest Location`: The locations specified as part of the storage category are used. A
|
||||
storage category is mandatory in the :guilabel:`Having Category` field.
|
||||
storage category is mandatory in the :guilabel:`Having Category` field. The locations in the
|
||||
storage category must be sublocations of the location in the :guilabel:`Store to` field. If the
|
||||
closest locations in the storage category are full, the :guilabel:`Store to` location is used.
|
||||
|
||||
.. example::
|
||||
Continuing the example from above, the `High frequency pallets` storage category is assigned to
|
||||
@@ -194,7 +222,7 @@ Use case: limit capacity by package
|
||||
To limit the capacity of a storage location by a specific number of packages, :ref:`create a storage
|
||||
category with a Capacity By Package <inventory/routes/set-capacity-package>`.
|
||||
|
||||
Continuing the example from above, the `High frequency pallets` storage category is assigned to the
|
||||
Continuing the examples from above, the `High frequency pallets` storage category is assigned to the
|
||||
`PAL1` and `PAL2` locations.
|
||||
|
||||
Then, :ref:`putaway rules <inventory/routes/putaway-rule>` are set, so that any pallets received in
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 5.9 KiB |
Reference in New Issue
Block a user