From c82e523289e4907d435e6cd6d3c137e0219df191 Mon Sep 17 00:00:00 2001 From: "John Holton (hojo)" Date: Wed, 13 Mar 2024 11:52:53 -0700 Subject: [PATCH] [ADD] Maintenance: Maintenance requests closes odoo/documentation#8329 X-original-commit: e0e97ea763dd1bc0de6310480b58ae60fa5cffdb Signed-off-by: Zachary Straub (zst) Signed-off-by: John Holton (hojo) --- .../inventory_and_mrp/maintenance.rst | 3 +- .../add_new_equipment.rst | 0 .../add_new_equipment/new-equipment-form.png | Bin .../new-equipment-maintenance.png | Bin .../new-equipment-product-information.png | Bin .../maintenance/equipment_management.rst | 10 -- .../maintenance/maintenance_requests.rst | 106 ++++++++++++++++++ .../maintenance_requests/request-form.png | Bin 0 -> 16534 bytes 8 files changed, 108 insertions(+), 11 deletions(-) rename content/applications/inventory_and_mrp/maintenance/{equipment_management => }/add_new_equipment.rst (100%) rename content/applications/inventory_and_mrp/maintenance/{equipment_management => }/add_new_equipment/new-equipment-form.png (100%) rename content/applications/inventory_and_mrp/maintenance/{equipment_management => }/add_new_equipment/new-equipment-maintenance.png (100%) rename content/applications/inventory_and_mrp/maintenance/{equipment_management => }/add_new_equipment/new-equipment-product-information.png (100%) delete mode 100644 content/applications/inventory_and_mrp/maintenance/equipment_management.rst create mode 100644 content/applications/inventory_and_mrp/maintenance/maintenance_requests.rst create mode 100644 content/applications/inventory_and_mrp/maintenance/maintenance_requests/request-form.png diff --git a/content/applications/inventory_and_mrp/maintenance.rst b/content/applications/inventory_and_mrp/maintenance.rst index 6f90c4bd1..ed1fcb390 100644 --- a/content/applications/inventory_and_mrp/maintenance.rst +++ b/content/applications/inventory_and_mrp/maintenance.rst @@ -17,4 +17,5 @@ requirements. .. toctree:: :titlesonly: - maintenance/equipment_management + maintenance/add_new_equipment + maintenance/maintenance_requests diff --git a/content/applications/inventory_and_mrp/maintenance/equipment_management/add_new_equipment.rst b/content/applications/inventory_and_mrp/maintenance/add_new_equipment.rst similarity index 100% rename from content/applications/inventory_and_mrp/maintenance/equipment_management/add_new_equipment.rst rename to content/applications/inventory_and_mrp/maintenance/add_new_equipment.rst diff --git a/content/applications/inventory_and_mrp/maintenance/equipment_management/add_new_equipment/new-equipment-form.png b/content/applications/inventory_and_mrp/maintenance/add_new_equipment/new-equipment-form.png similarity index 100% rename from content/applications/inventory_and_mrp/maintenance/equipment_management/add_new_equipment/new-equipment-form.png rename to content/applications/inventory_and_mrp/maintenance/add_new_equipment/new-equipment-form.png diff --git a/content/applications/inventory_and_mrp/maintenance/equipment_management/add_new_equipment/new-equipment-maintenance.png b/content/applications/inventory_and_mrp/maintenance/add_new_equipment/new-equipment-maintenance.png similarity index 100% rename from content/applications/inventory_and_mrp/maintenance/equipment_management/add_new_equipment/new-equipment-maintenance.png rename to content/applications/inventory_and_mrp/maintenance/add_new_equipment/new-equipment-maintenance.png diff --git a/content/applications/inventory_and_mrp/maintenance/equipment_management/add_new_equipment/new-equipment-product-information.png b/content/applications/inventory_and_mrp/maintenance/add_new_equipment/new-equipment-product-information.png similarity index 100% rename from content/applications/inventory_and_mrp/maintenance/equipment_management/add_new_equipment/new-equipment-product-information.png rename to content/applications/inventory_and_mrp/maintenance/add_new_equipment/new-equipment-product-information.png diff --git a/content/applications/inventory_and_mrp/maintenance/equipment_management.rst b/content/applications/inventory_and_mrp/maintenance/equipment_management.rst deleted file mode 100644 index 6e890526b..000000000 --- a/content/applications/inventory_and_mrp/maintenance/equipment_management.rst +++ /dev/null @@ -1,10 +0,0 @@ -:nosearch: - -==================== -Equipment management -==================== - -.. toctree:: - :titlesonly: - - equipment_management/add_new_equipment diff --git a/content/applications/inventory_and_mrp/maintenance/maintenance_requests.rst b/content/applications/inventory_and_mrp/maintenance/maintenance_requests.rst new file mode 100644 index 000000000..bc66dea56 --- /dev/null +++ b/content/applications/inventory_and_mrp/maintenance/maintenance_requests.rst @@ -0,0 +1,106 @@ +==================== +Maintenance requests +==================== + +.. |MO| replace:: :abbr:`MO (Manufacturing Order)` + +In order to keep equipment and work centers functioning properly, it is often necessary to perform +maintenance on them. This can include preventive maintenance, intended to prevent equipment from +breaking down, or corrective maintenance, which is used to fix equipment that is broken or otherwise +unusable. + +In Odoo *Maintenance*, users can create *maintenance requests* to schedule and track the progress of +equipment and work center maintenance. + +Create maintenance request +========================== + +To create a new maintenance request, navigate to :menuselection:`Maintenance app --> Maintenance --> +Maintenance Requests`, and click :guilabel:`New`. + +Begin filling out the form by entering a descriptive title in the :guilabel:`Request` field (e.g., +`Drill not working`). + +The :guilabel:`Created By` field auto-populates with the user creating the request, but a different +user can be selected by clicking on the drop-down menu. + +In the :guilabel:`For` drop-down menu, select :guilabel:`Equipment` if the maintenance request is +being created for a piece of equipment, or :guilabel:`Work Center` if it is being created for a work +center. + +Depending on the option selected in the :guilabel:`For` field, the next field is titled either +:guilabel:`Equipment` or :guilabel:`Work Center`. Using the drop-down menu for either field, select +a piece of equipment or a work center. + +If the *Custom Maintenance Worksheets* setting is enabled in the *Maintenance* app's settings, a +:guilabel:`Worksheet Template` field appears below the :guilabel:`Equipment` or :guilabel:`Work +Center` field. If necessary, use this field to select a worksheet to be filled out by the employee +performing the maintenance. + +The next field is titled :guilabel:`Request Date`, and is set by default to the date on which the +maintenance request is created. This date cannot be changed by the user. + +In the :guilabel:`Maintenance Type` field, select the :guilabel:`Corrective` option if the request +is intended to fix an existing issue, or the :guilabel:`Preventive` option if the request is +intended to prevent issues from occurring in the future. + +If the request is being created to address an issue that arose during a specific manufacturing order +(MO), select it in the :guilabel:`Manufacturing Order` field. + +If an |MO| was selected in the :guilabel:`Manufacturing Order` field, a :guilabel:`Work Order` field +appears below it. If the issue arose during a specific work order, specify it in this field. + +In the :guilabel:`Team` field, select the maintenance team that is responsible for managing the +request. If a specific team member is responsible, select them in the :guilabel:`Responsible` field. + +The :guilabel:`Scheduled Date` field is used to specify the date on which maintenance should take +place, and the time it should begin. Choose a date by clicking on the field to open a calendar in a +pop-up window, and then select a day on the calendar. Enter an hour and minute in the two fields +below the calendar, and click :guilabel:`Apply` to save the date and time. + +The :guilabel:`Duration` field is used to specify the time it takes to complete the maintenance +request. Use the text-entry field to enter the time in a `00:00` format. + +If :guilabel:`Work Center` was selected in the :guilabel:`For` field, a :guilabel:`Block Workcenter` +checkbox appears below the :guilabel:`Duration` field. Enable the checkbox to prevent work orders or +other maintenance from being scheduled at the specified work center while the maintenance request is +being processed. + +The :guilabel:`Priority` field is used to communicate the importance (or urgency) of the maintenance +request. Assign the request a priority between zero and three :guilabel:`⭐⭐⭐ (stars)`, by clicking +on the desired star number. Requests assigned a higher priority appear above those with a lower +priority, on the Kanban board used to track the progression of maintenance requests. + +In the :guilabel:`Notes` tab at the bottom of the form, enter any relevant details about the +maintenance request (why the maintenance issue arose, when it occurred, etc.). + +The :guilabel:`Instructions` tab is used to include instructions for how maintenance should be +performed. Select one of the three options, and then include the instructions as detailed below: + +- :guilabel:`PDF`: click the :guilabel:`Upload your file` button to open the device's file manager, + and then select a file to upload. +- :guilabel:`Google Slide`: enter a :guilabel:`Google Slide link` in the text-entry field that + appears after the option is selected. +- :guilabel:`Text`: enter the instructions in the text-entry field that appears after the option is + selected. + +.. image:: maintenance_requests/request-form.png + :align: center + :alt: A maintenance request form filled out for a piece of equipment. + +Process maintenance request +=========================== + +Once a maintenance request has been created, it appears in the *New Request* stage of the +*Maintenance Requests* page, which can be accessed by navigating to :menuselection:`Maintenance app +--> Maintenance --> Maintenance Requests`. + +Maintenance requests can be moved to different stages by dragging and dropping them. They can also +be moved by clicking on a request to open it in a new page, and then selecting the desired stage +from the stage indicator bar, located above the top-right corner of the request's form. + +Successful maintenance requests should be moved to the :guilabel:`Repaired` stage, indicating that +the specified piece of equipment or work center is repaired. + +Failed maintenance requests should be moved to the :guilabel:`Scrap` stage, indicating the specified +piece of equipment, or work center, could not be repaired, and must instead be scrapped. diff --git a/content/applications/inventory_and_mrp/maintenance/maintenance_requests/request-form.png b/content/applications/inventory_and_mrp/maintenance/maintenance_requests/request-form.png new file mode 100644 index 0000000000000000000000000000000000000000..2f413f0917287991c7812baf68f7b642285abd13 GIT binary patch literal 16534 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 VjCp#?_Yb1UNh?d0fB5+2zX9i>_tXFY literal 0 HcmV?d00001