[IMP] Inventory: Merged cycle count docs and updated for 17.0

closes odoo/documentation#11730

X-original-commit: 6852e4b980
Signed-off-by: Liz Bender (beli) <beli@odoo.com>
This commit is contained in:
benderliz 2025-01-02 19:23:42 +00:00
parent c80fee24c6
commit 3534f21f68
9 changed files with 97 additions and 91 deletions

View File

@ -8,80 +8,95 @@ due to damages, human errors, theft, or other factors. As such, inventory adjust
to reconcile the differences, and ensure that the recorded counts in the database match the actual
counts in the warehouse.
.. _inventory/inventory-adjustments-page:
Inventory Adjustments page
==========================
To view the *Inventory Adjustments* page, navigate to :menuselection:`Inventory app --> Operations
--> Inventory Adjustments`.
--> Physical Inventory`.
.. image:: count_products/inventory-adjustments-page.png
:align: center
:alt: In stock products listed on the Inventory adjustments page.
On the :guilabel:`Inventory Adjustments` page, all products that are currently in stock are listed,
In the :guilabel:`Inventory Adjustments` table, all products that are currently in stock are listed,
with each product line containing the following information:
- :guilabel:`Location`: the specific location in the warehouse where a product is stored.
- :guilabel:`Location`: the specific location in the warehouse where a product is stored. This field
needs to be enabled my going to :menuselection:`Inventory app --> Configuration --> Settings` and
ticking the :guilabel:`Storage Locations` checkbox.
- :guilabel:`Product`: the product whose quantity is listed on the inventory adjustment line.
- :guilabel:`Lot/Serial Number`: the tracking identifier assigned to the specific product listed. It
can contain letters, numbers, or a combination of both.
.. note::
If a specific product has a quantity of more than `1.00` in stock, and more than one serial
number (or lot number) assigned to it, each uniquely-identified product is displayed on its own
product line with its own lot/serial number, displayed under the :guilabel:`Lot/Serial Number`
column.
- :guilabel:`On Hand Quantity`: the quantity of the product currently recorded in the database.
- :guilabel:`UoM`: the *unit of measure* in which the product is measured. Unless otherwise
specified (i.e., in :guilabel:`Pounds` or :guilabel:`Ounces`), the default :abbr:`UoM (Unit of
Measure)` is :guilabel:`Units`.
- :guilabel:`Counted Quantity`: the real quantity counted during an inventory count. This field is
left blank by default, but can be changed, depending on if it matches the :guilabel:`On Hand
left blank by default but can be changed, depending on if it matches the :guilabel:`On Hand
Quantity` or not.
- :guilabel:`Difference`: the difference between the :guilabel:`On Hand Quantity` and
:guilabel:`Counted Quantity`, once an inventory adjustment is made. The difference is
automatically calculated after every inventory adjustment.
- :guilabel:`Scheduled Date`: the date at which a count should be made. If not otherwise specified,
this date will default to the 31st of December of the current year.
- :guilabel:`User`: the person assigned to the count in the database. This can either be the person
physically counting the inventory, or applying the count in the database.
.. note::
If a specific product has a quantity of more than `1.00` in stock, and more than one serial
number (or lot number) is assigned, each uniquely-identified product is displayed on its own
product line with its own lot/serial number, under the :guilabel:`Lot/Serial Number` column.
The fields below are optional and can be made visible by clicking the :icon:`oi-settings-adjust`
:guilabel:`(settings)` icon in the top right of the :guilabel:`Inventory Adjustments` page.
- :guilabel:`Inventory Frequency (Days)`: the frequency, in days, for inventory counts. The default
value of this field is set to `0`.
- :guilabel:`Favorite`: adds a clickable star icon next to each product. Adding a favorite will
bring the line item to the top of the dashboard.
- :guilabel:`Product Category`: the category assigned internally to a specific product. Unless
otherwise specified (i.e., as :guilabel:`Consumable` or :guilabel:`Rental`), the default *Product
Category* is set to :guilabel:`All`.
- :guilabel:`Expiration Date`: the date a product will expire, if it is a perishable good. Only
products that are tracked using lots and serial numbers can be assigned expiration information.
- :guilabel:`Last Count Date`: the date on which the last inventory count occurred.
- :guilabel:`Available Quantity`: the quantity of a specific product that is currently available,
based on any outstanding/uncompleted sales orders, purchase orders, or manufacturing orders that
might change the available quantity once fulfilled.
- :guilabel:`Accounting Date`: the date on which the adjustments will be accounted in the Odoo
*Accounting* app.
- :guilabel:`On Hand Quantity`: the quantity of the product currently recorded in the database.
- :guilabel:`Accounting Date`: the date on which the adjustments will be accounted for in the Odoo
**Accounting** app.
- :guilabel:`Scheduled Date`: the date at which a count should be made. If not otherwise specified,
this date defaults to the 31st of December of the current year.
- :guilabel:`User`: the person assigned to the count in the database. This can either be the person
physically counting the inventory, or applying the count in the database.
- :guilabel:`Company`: the company whose database these inventory adjustments are being made on. The
company is listed in the top right corner of the database, next to the user currently logged in.
company is listed in the top-right corner of the database, next to the user currently logged in.
.. tip::
Some columns are hidden by default. To reveal these columns, click the :guilabel:`additional
options` button (three dots icon) to the far right of the form's top row, and select any desired
column to reveal by clicking the checkbox next to that option.
Some columns are hidden by default. To reveal these columns, click the
:icon:`oi-settings-adjust` :guilabel:`(settings)` icon to the far right of the form's top row,
and select any desired column to reveal by clicking the checkbox next to that option.
.. seealso::
- :doc:`Product type <../../product_management/configure/type>`
- :doc:`Tracking with lots, serial numbers, and expiration dates
<../../product_management/product_tracking>`
Create an inventory adjustment
------------------------------
To create a new inventory adjustment from the :menuselection:`Inventory Adjustments` page, click
:guilabel:`Create`. Doing so creates a new, blank inventory adjustment line at the bottom of the
page.
To create a new inventory adjustment from the :ref:`Inventory Adjustments
<inventory/inventory-adjustments-page>` page, click :guilabel:`New`. Doing so creates a new, blank
inventory adjustment line at the bottom of the page.
On this blank inventory adjustment line, click the drop-down menu under the :guilabel:`Product`
column, and select a product. If the selected product is tracked using either lots or serial
numbers, the desired lot or serial number can also be chosen from the drop-down menu under the
:guilabel:`Lot/Serial Number` column.
On this blank inventory adjustment line, define the :guilabel:`Location` where the product is
stored. This is necessary to ensure the accuracy of the inventory adjustment, as the same product
can be stored in multiple locations.
Next, click the drop-down menu under the :guilabel:`Product` column, and select a product. If the
selected product is tracked using either lots or serial numbers, the desired lot or serial number
can also be chosen from the drop-down menu under the :guilabel:`Lot/Serial Number` column.
Next, set the value in the :guilabel:`Counted Quantity` column to the quantity counted for that
product during the inventory adjustment process.
.. note::
The :guilabel:`Counted Quantity` for new inventory adjustments is set to `0.00` by default. An
inventory move with `0.00` :guilabel:`Quantity Done` is recorded in the product's inventory
adjustment history, so it should be set to reflect the actual quantity counted.
To the right of the :guilabel:`Counted Quantity` column, the :guilabel:`Scheduled Date` and
:guilabel:`User` can also be changed via their respective drop-down menus. Changing the
:guilabel:`Scheduled Date` changes the date that the inventory adjustment should be processed on,
@ -98,7 +113,6 @@ quantities match, and haven't been changed at all, no value appears in the :guil
column.
.. image:: count_products/difference-column.png
:align: center
:alt: Difference column on inventory adjustments page.
At this stage, the count (:dfn:`inventory adjustment`) is recorded, but not yet applied. This means
@ -106,14 +120,17 @@ that the quantity on hand before the adjustment has not yet been updated to matc
counted quantity.
There are two ways to apply the new inventory adjustment. The first way is to click the
:guilabel:`Apply` button on the line at the far right of the page. The second way is to click the
checkbox on the far left of the line. Doing so reveals new button options at the top of the page,
one of which is an :guilabel:`Apply` button. Clicking this button instead causes an
:guilabel:`Inventory Adjustment Reference / Reason` pop-up window to appear.
:icon:`fa-save` :guilabel:`Apply` button on the line at the far right of the page. The second way is
to click the checkbox on the far left of the line. Doing so reveals new button options at the top of
the page, one of which is an :guilabel:`Apply` button. Clicking this button instead causes an
:guilabel:`Inventory Adjustment` pop-up window to appear.
.. image:: count_products/apply-inventory-adjustment.png
:alt: Apply all option applies the inventory adjustment once a reason is specified.
From this pop-up menu, a reference or reason can be assigned to the inventory adjustment. By
default, the :guilabel:`Inventory Reference / Reason` field is pre-populated with the date the
adjustment is being made on, but can be changed to reflect whatever reference or reason is desired.
default, the :guilabel:`Inventory Reason` field is pre-populated with the date the adjustment is
being made on, but can be changed to reflect whatever reference or reason is desired.
Once ready, click :guilabel:`Apply` to apply the inventory adjustment.
@ -121,20 +138,33 @@ Once ready, click :guilabel:`Apply` to apply the inventory adjustment.
Applying an inventory adjustment simultaneously creates a :doc:`stock move line (SML)
<../reporting/moves_history>` in the *Moves History* report for traceability.
.. image:: count_products/apply-inventory-adjustment.png
:align: center
:alt: Apply all option applies the inventory adjustment once a reason is specified.
.. tip::
Sometimes products end up in unexpected or incorrect locations. To quickly move a product to a
different storage location, check the box next to the product, and click the :guilabel:`Relocate`
button at the top of the :ref:`Inventory Adjustments <inventory/inventory-adjustments-page>`
page.
Count products
==============
Counting products is a recurring activity in a warehouse. Once a count is complete, go to
:menuselection:`Inventory app --> Operations --> Inventory Adjustments` to update the
:guilabel:`Counted Quantity` column for each product line.
Counting products (or stock-taking) is a recurring warehouse process to verify the physical quantity
of items against internal inventory records. The values recorded on file versus what is actually
counted in real life sometimes do not match, so inventory adjustments can be made on the *Inventory
Adjustments* dashboard.
Once a count is complete, go to :menuselection:`Inventory app --> Operations --> Physical Inventory`
to verify and update product :guilabel:`Count Quantities`, as it is necessary to do so.
.. tip::
To print a PDF of a count sheet, first select the desired product checkboxes, and then click the
:icon:`fa-print` :guilabel:`Print` button that appears at the top of the dashboard. Then, select
the :guilabel:`Count sheet` option in the sub-menu, which will download a PDF detailing the
selected products.
On each product line, identify whether the value in the :guilabel:`On Hand Quantity` column recorded
in the database matches the newly-counted value. If the recorded value and the counted value do
match, click the :guilabel:`Set` button (target icon) at the far right of the product line.
match, select the product using the checkbox, click the :guilabel:`Actions` button, then
:guilabel:`Set to quantity on hand`.
Doing so copies the value from the :guilabel:`On Hand Quantity` column over to the
:guilabel:`Counted Quantity` column, and sets the value of the :guilabel:`Difference` column to
@ -142,7 +172,6 @@ Doing so copies the value from the :guilabel:`On Hand Quantity` column over to t
recorded in the product's inventory adjustment history.
.. image:: count_products/zero-move.png
:align: center
:alt: Zero count inventory adjustment move.
If the newly-counted value for a given product does **not** match the value in the :guilabel:`On
@ -157,19 +186,20 @@ To change this value, type in a new value that matches the real, newly-counted v
away from the line. Doing so saves the adjustment, and automatically adjusts the value in the
:guilabel:`Difference` column.
If the :guilabel:`Counted Quantity` is greater than the :guilabel:`On Hand Quantity`, the value in
the :guilabel:`Difference` column is **green**. If the :guilabel:`Counted Quantity` is less than the
:guilabel:`On Hand Quantity`, the value in the :guilabel:`Difference` column is **red**. If the
quantities match, and haven't been changed at all, no value appears in the :guilabel:`Difference`
column.
Subsequently, once applied, a move with the difference between the :guilabel:`On Hand Quantity` and
the :guilabel:`Counted Quantity` is recorded in the product's inventory adjustment history.
.. image:: count_products/history-inventory-adjustments.png
:align: center
:alt: Inventory Adjustments History dashboard detailing a list of prior product moves.
The :guilabel:`Actions` menu appears when one or more products' checkboxes are selected. The
:guilabel:`Actions` menu includes the option to :guilabel:`Set to quantity on hand`, which sets the
selected products' :guilabel:`Counted Quantity` to the :guilabel:`On Hand Quantity`, and
:guilabel:`Set to 0`, which sets the selected products' :guilabel:`Counted Quantity` to zero.
.. image:: count_products/inventory-adjustment-actions.png
:alt: Inventory Adjustments Actions menu.
.. important::
Sometimes a count occurs, but cannot be applied in the database right away. In the time between
the actual count and applying the inventory adjustment, product moves can occur. In that case,
@ -177,34 +207,11 @@ the :guilabel:`Counted Quantity` is recorded in the product's inventory adjustme
quantity. As an extra precaution, Odoo asks for confirmation before applying the inventory
adjustment.
Change inventory count frequency
================================
Plan inventory counts
---------------------
By default, the *scheduled date* for inventory adjustments are always scheduled for the 31st of
December of the current year. However, for some companies, it is crucial that they have an accurate
inventory count at all times. In such cases, the default scheduled date can be modified.
To modify the default scheduled date, go to :menuselection:`Inventory app --> Configuration -->
Settings`. Then, in the :guilabel:`Operations` section, locate the :guilabel:`Annual Inventory Day
and Month` setting, which includes a drop-down menu that is set to `31 December` by default.
.. image:: count_products/annual-inventory.png
:align: center
:alt: Adjust the next inventory count date with the Annual Inventory Day and Month setting.
To change the day, click the :guilabel:`31`, and change it to a day within the range `1-31`,
depending on the desired month of the year.
Then, to change the month, click :guilabel:`December` to reveal the drop-down menu, and select the
desired month.
Once all desired changes have been made, click :guilabel:`Save` to save all changes.
Plan big inventory counts
-------------------------
To plan big inventory counts, such as a full count of everything currently in stock, first navigate
to :menuselection:`Inventory app --> Operations --> Inventory Adjustments`.
To plan inventory counts, such as a full count of everything currently in stock, first navigate to
:menuselection:`Inventory app --> Operations --> Physical Inventory`.
Then, select the desired products to be counted by clicking the checkbox on the far left of each
product line.
@ -214,13 +221,9 @@ product line.
the table, in the header row next to the :guilabel:`Location` label. This selects **all** product
lines.
.. image:: count_products/count-popup.png
:align: center
:alt: Request a count popup on inventory adjustments page.
Once all desired products have been selected, click the :guilabel:`Request a Count` button at the
top of the page. This causes a :guilabel:`Request a Count` pop-up window to appear. From this
pop-up, fill in the following information:
top of the page. Doing so opens the :guilabel:`Request a Count` pop-up window, where the following
information can be filled:
- :guilabel:`Inventory Date`: the planned date of the count.
- :guilabel:`User`: the user responsible for the count.
@ -231,8 +234,11 @@ pop-up, fill in the following information:
Finally, once ready, click :guilabel:`Confirm` to request the count.
.. image:: count_products/count-popup.png
:alt: Request a count popup on inventory adjustments page.
.. important::
In the Odoo *Barcode* app, users can only view inventory counts that are assigned to **them**,
In the Odoo **Barcode** app, users can only view inventory counts that are assigned to **them**,
and are scheduled for **today** or **earlier**.
.. seealso::

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 6.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 47 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 4.8 KiB