From 89874faf2536ae481da2194af94b59c1b9983354 Mon Sep 17 00:00:00 2001 From: "John Holton (hojo)" Date: Fri, 31 May 2024 09:03:32 -0700 Subject: [PATCH] [ADD] Quality: Failure locations closes odoo/documentation#9678 X-original-commit: 3b1f9f6df2ad29a96641c9d9c7a8517264ef64c5 Signed-off-by: Samuel Lieber (sali) Signed-off-by: John Holton (hojo) --- .../quality/quality_management.rst | 1 + .../quality_management/failure_locations.rst | 108 ++++++++++++++++++ .../failure_locations/failed-pop-up.png | Bin 0 -> 8892 bytes .../failure_locations/qcp-form.png | Bin 0 -> 16314 bytes .../storage-locations-setting.png | Bin 0 -> 9882 bytes 5 files changed, 109 insertions(+) create mode 100644 content/applications/inventory_and_mrp/quality/quality_management/failure_locations.rst create mode 100644 content/applications/inventory_and_mrp/quality/quality_management/failure_locations/failed-pop-up.png create mode 100644 content/applications/inventory_and_mrp/quality/quality_management/failure_locations/qcp-form.png create mode 100644 content/applications/inventory_and_mrp/quality/quality_management/failure_locations/storage-locations-setting.png diff --git a/content/applications/inventory_and_mrp/quality/quality_management.rst b/content/applications/inventory_and_mrp/quality/quality_management.rst index 634933621..4f161d3d8 100644 --- a/content/applications/inventory_and_mrp/quality/quality_management.rst +++ b/content/applications/inventory_and_mrp/quality/quality_management.rst @@ -10,3 +10,4 @@ Quality control basics quality_management/quality_control_points quality_management/quality_alerts quality_management/quality_checks + quality_management/failure_locations diff --git a/content/applications/inventory_and_mrp/quality/quality_management/failure_locations.rst b/content/applications/inventory_and_mrp/quality/quality_management/failure_locations.rst new file mode 100644 index 000000000..3fe9861d0 --- /dev/null +++ b/content/applications/inventory_and_mrp/quality/quality_management/failure_locations.rst @@ -0,0 +1,108 @@ +================= +Failure locations +================= + +.. |QCP| replace:: :abbr:`QCP (Quality Control Point)` +.. |QCPs| replace:: :abbr:`QCP (Quality Control Points)` + +In Odoo, *quality control points* (QCPs) are used to create *quality checks*, which prompt employees +to confirm the quality of products, when they are included in certain operations. By setting one or +more *failure locations* on a |QCP|, products that fail the quality checks it creates can be sent to +one of the specified locations. + +.. important:: + The *Failure Location* feature was added in version 17.0 of Odoo, and does **not** appear in any + previous version. To upgrade an Odoo database to a more recent version, see the documentation on + :doc:`database upgrades <../../../../administration/upgrade>`. + +Configuration +============= + +To use failure locations, the *Storage Locations* setting **must** be enabled in the settings of the +*Inventory* app. This setting allows for the creation of sub-locations within a warehouse, including +failure locations. + +To enable the *Storage Locations* setting, navigate to :menuselection:`Inventory app --> +Configuration --> Settings`, and tick the checkbox next to :guilabel:`Storage Locations`, under the +:guilabel:`Warehouses` heading. Then, click :guilabel:`Save`. + +.. image:: failure_locations/storage-locations-setting.png + :align: center + :alt: The Storage Locations setting on the Inventory app settings page. + +.. important:: + Failure locations are most effective when used for products configured as *storable products*. + This is because inventory counts are only tracked for storable products, versus *consumable* + products, for which exact counts are not tracked. + + Quality checks can still be created for consumable products, and those products can be sent to a + failure location if they fail a check. However, Odoo does not track the exact quantity of a + consumable product stored at a failure location. + + To configure a product as storable, navigate to :menuselection:`Inventory app --> Products --> + Products`, and select a product. In the :guilabel:`Product Type` field on the :guilabel:`General + Information` tab, make sure that :guilabel:`Storable Product` is selected from the drop-down + menu. + +Add failure location to QCP +=========================== + +To add a failure location to a |QCP|, navigate to :menuselection:`Quality app --> Quality Control +--> Control Points`. Select an existing |QCP| from the list, or create a new one by clicking +:guilabel:`New`. + +.. note:: + The following instructions only detail the configuration settings necessary for adding a failure + location to a |QCP|. For a full overview of |QCPs| and all of the options available when + configuring them, see the documentation on :doc:`quality control points + `. + +In the :guilabel:`Control Per` field on the |QCP| form, select the :guilabel:`Quantity` option. +Doing so causes a :guilabel:`Failure Locations` field to appear on the form. This field is only +available when the :guilabel:`Quantity` option is selected. + +In the :guilabel:`Failure Locations` field, select one or more locations from the drop-down menu. To +create a new location, type the desired location name into the field, and then select +:guilabel:`Create "[name]"` from the drop-down menu. + +.. image:: failure_locations/qcp-form.png + :align: center + :alt: A QCP form in the Quality app, configured with a failure location. + +Send products to failure location +================================= + +Once a |QCP| has been configured with one or more failure locations, products that fail a check +created by the |QCP| can be routed to one of the locations. + +To do so, open an order that requires a quality check created by a |QCP| configured with a failure +location. For example, navigate to :menuselection:`Inventory app --> Operations --> Receipts`, and +select a receipt. + +At the top of the selected order, click the :guilabel:`Quality Checks` button to open a pop-up +window, from which the quality check can be processed. At the bottom of the pop-up window, click the +:guilabel:`Fail` button to fail the quality check, which opens a second pop-up window, titled +:guilabel:`Quality Check Failed for [Product]`. + +In the :guilabel:`Quantity Failed` field, enter the quantity of the product that failed to pass the +quality check. In the :guilabel:`Failure Location` field, select a location to which the failed +quantity should be sent. Then, click :guilabel:`Confirm` at the bottom of the pop-up window to close +it. + +.. image:: failure_locations/failed-pop-up.png + :align: center + :alt: The pop-up window that appears after a quality check fails. + +Finally, on the order, click the :guilabel:`Validate` button at the top of the page. Doing so +confirms the products that failed the quality check were sent to the failure location, while +products that passed it were sent to their normal storage locations. + +View failure location inventory +=============================== + +To view the product quantities stored in a failure location, navigate to :menuselection:`Inventory +app --> Configuration --> Locations`. Select a failure location from the list. Then, click the +:guilabel:`Current Stock` smart button on the location's page. + +A failure location's page lists all of the products stored within the location, along with the +quantity of each. diff --git a/content/applications/inventory_and_mrp/quality/quality_management/failure_locations/failed-pop-up.png b/content/applications/inventory_and_mrp/quality/quality_management/failure_locations/failed-pop-up.png new file mode 100644 index 0000000000000000000000000000000000000000..df46e0a12f107ff419e19e25bfb088a1b1c6eec7 GIT binary patch literal 8892 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 OfYg*Uo)kSY3;rL109~j6 literal 0 HcmV?d00001 diff --git a/content/applications/inventory_and_mrp/quality/quality_management/failure_locations/qcp-form.png b/content/applications/inventory_and_mrp/quality/quality_management/failure_locations/qcp-form.png new file mode 100644 index 0000000000000000000000000000000000000000..8879cb7f01591a6bc58cf1b7b6e9ff8c22b6bb3c GIT binary patch literal 16314 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 literal 0 HcmV?d00001 diff --git a/content/applications/inventory_and_mrp/quality/quality_management/failure_locations/storage-locations-setting.png b/content/applications/inventory_and_mrp/quality/quality_management/failure_locations/storage-locations-setting.png new file mode 100644 index 0000000000000000000000000000000000000000..886deebbeda50db7359c417df057246eef3c61df GIT binary patch literal 9882 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