From 6b9c50cba6a7bec2173c7785e22883d3cc84f31a Mon Sep 17 00:00:00 2001 From: "John Holton (hojo)" Date: Tue, 5 Dec 2023 14:19:04 -0800 Subject: [PATCH] [IMP] Quality: Pass - Fail check Shop Floor closes odoo/documentation#7561 X-original-commit: 30d2a5efd1f1cf4b97af002548fd97a232efa00e Signed-off-by: John Holton (hojo) --- .../quality_check_types/pass_fail_check.rst | 53 +++++++++++------- .../pass-fail-check-shop-floor.png | Bin 0 -> 8616 bytes .../work-order-pass-fail-check.png | Bin 14575 -> 0 bytes 3 files changed, 34 insertions(+), 19 deletions(-) create mode 100644 content/applications/inventory_and_mrp/quality/quality_check_types/pass_fail_check/pass-fail-check-shop-floor.png delete mode 100644 content/applications/inventory_and_mrp/quality/quality_check_types/pass_fail_check/work-order-pass-fail-check.png diff --git a/content/applications/inventory_and_mrp/quality/quality_check_types/pass_fail_check.rst b/content/applications/inventory_and_mrp/quality/quality_check_types/pass_fail_check.rst index e5513175d..f9478ae3f 100644 --- a/content/applications/inventory_and_mrp/quality/quality_check_types/pass_fail_check.rst +++ b/content/applications/inventory_and_mrp/quality/quality_check_types/pass_fail_check.rst @@ -2,6 +2,7 @@ Pass - Fail quality check ========================= +.. |MO| replace:: :abbr:`MO (Manufacturing Order)` .. |QCP| replace:: :abbr:`QCP (Quality Control Point)` .. |QCPs| replace:: :abbr:`QCP (Quality Control Points)` @@ -98,9 +99,11 @@ bottom of the window. If the criteria is not met, click the :guilabel:`Fail` but If a quality alert must be created, click the :guilabel:`Quality Alert` button that appears at the top of the manufacturing or inventory order after the check fails. Clicking :guilabel:`Quality -Alert` opens a quality alert form on a new page. For a complete guide on how to fill out quality -alert forms, view the documentation on :ref:`quality alerts -`. +Alert` opens a quality alert form on a new page. + +.. seealso:: + For a complete guide on how to fill out quality alert forms, view the documentation on + :ref:`quality alerts `. On a work order --------------- @@ -110,23 +113,35 @@ specified in the :guilabel:`Work Order Operation` field on the |QCP| form. If a specified, a *Pass - Fail* quality check is created for that specific work order, rather than the manufacturing order as a whole. -*Pass - Fail* quality checks configured for work orders must be processed from the tablet view. To -do so, begin by navigating to :menuselection:`Manufacturing --> Operations --> Manufacturing -Orders`. Select a manufacturing order that includes a work order for which a quality check is -required. Open the tablet view for that work order by selecting the :guilabel:`Work Orders` tab, and -then clicking the :guilabel:`📱 (tablet)` button on the order's line. +*Pass - Fail* quality checks configured for work orders **must** be completed from the *Shop Floor* +module. To do so, begin by navigating to :menuselection:`Manufacturing --> Operations --> +Manufacturing Orders`. Select an |MO| that includes a work order for which a *Pass - Fail* quality +check is required. -With tablet view open, complete the steps listed on the left side of the screen until the *Pass - -Fail* quality check step is reached. Upon reaching the check, follow the instructions that appear at -the top of the screen. If the criteria for the check is met, click the :guilabel:`Pass` button at -the top-right of the screen. If the criteria is not met, click the :guilabel:`Fail` button. +On the |MO|, select the :guilabel:`Work Orders` tab, and then click the :guilabel:`Open Work Order +(external link icon)` button on the line of the work order to be processed. On the resulting +:guilabel:`Work Orders` pop-up window, click the :guilabel:`Open Shop Floor` button to open the +*Shop Floor* module. -.. image:: pass_fail_check/work-order-pass-fail-check.png +When accessed from a specific work order, the *Shop Floor* module opens to the page for the work +center where the order is configured to be processed, and isolates the work order's card so that no +other cards are shown. + +Begin processing the work order's steps until the *Pass - Fail* quality check step is reached. Click +on the step to open a pop-up window that details the criteria for whether the check passes or fails. +Click the :guilabel:`Pass` button at the bottom of the pop-up window if the check passes, or the +:guilabel:`Fail` button if it fails. + +If the :guilabel:`Pass` button is clicked, the pop-up window moves to the next step for the work +order. If the :guilabel:`Fail` button is clicked, a :guilabel:`Quality Check Failed` pop-up window +appears, detailing what should be done next. + +.. image:: pass_fail_check/pass-fail-check-shop-floor.png :align: center - :alt: A Pass - Fail check for a manufacturing work order. + :alt: A Pass - Fail check as it appears in the Shop Floor module. -If a quality alert must be created, do so by clicking the :guilabel:`☰ (menu)` button in the tablet -view, and selecting :guilabel:`Quality Alert` from the :guilabel:`Menu` pop-up window. A -:guilabel:`Quality Alerts` pop-up window appears, from which a quality alert can be created. For a -complete guide on how to fill out quality alert forms, view the documentation on :ref:`quality -alerts `. +.. tip:: + Alternatively, instead of clicking on the step to open the pop-up window, a *Pass - Fail* quality + check can be completed by clicking the checkbox that appears on the right side of the step's line + on the work order card. When using this method, the quality check passes automatically, without a + pop-up window appearing. diff --git a/content/applications/inventory_and_mrp/quality/quality_check_types/pass_fail_check/pass-fail-check-shop-floor.png b/content/applications/inventory_and_mrp/quality/quality_check_types/pass_fail_check/pass-fail-check-shop-floor.png new file mode 100644 index 0000000000000000000000000000000000000000..ff595b8a0bad6f5004a2fb981df8c28070f5d896 GIT binary patch literal 8616 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 literal 0 HcmV?d00001 diff --git a/content/applications/inventory_and_mrp/quality/quality_check_types/pass_fail_check/work-order-pass-fail-check.png b/content/applications/inventory_and_mrp/quality/quality_check_types/pass_fail_check/work-order-pass-fail-check.png deleted file mode 100644 index 4c18264cdc6d090ed574d7d013cae2ba6db50568..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14575 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