[IMP] mrp: update bills of materials

closes odoo/documentation#3714

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
This commit is contained in:
Brandon Seltenrich (BRSE) 2023-03-01 18:09:01 +00:00
parent af4ad4cf4d
commit d400d85a8c
11 changed files with 115 additions and 75 deletions

View File

@ -1,94 +1,134 @@
========================= ================================
Create Bills of Materials Create a bill of materials (BoM)
========================= ================================
A *Bill of Materials* is a document defining the quantity of each A *bill of materials* (or *BoM*) is a document that defines the quantity of each component required
component required to manufacture a finished product. It also includes to manufacture (or deliver) a finished product. It can also include various operations types, steps,
the routing and individual steps of the manufacturing process. and instructions for the individual guidelines needed to complete a production process.
With Odoo, you can link multiple BoMs to each product and use it to In Odoo *Manufacturing*, multiple :abbr:`BoMs (Bills of Materials)` can be linked to a product, so
describe multiple variants of them. Each BoM will, yet, be associated even product variants can have their own specific :abbr:`BoMs (Bills of Materials)`.
with one product only.
This feature will help optimize your manufacturing process while saving Correctly setting up a :abbr:`BoM (Bill of Materials)` helps optimize the manufacturing process, and
you time. saves time.
Setting up a BoM Set up a BoM
================ ============
You can use BoMs without routings. You will use this if you choose to :abbr:`BoMs (Bills of Materials)` can be set up with or without operations steps or instructions,
manage your manufacturing operations using manufacturing orders only. In and can include as many or as few components as needed. The simplest setup is one without operations
other words, you choose to realize your manufacturing process in one or instructions. In that case, the production is solely managed with *manufacturing orders* (MOs).
step and do not track the steps the product goes through.
Before creating your *BoM*, you have to create the product using the To create a :abbr:`BoM (Bill of Materials)`, navigate to :menuselection:`Manufacturing app -->
*BoM* and, at least, one of the components. Go to the :menuselection:`Master Data menu --> Products` Products --> Bills of Materials`, and click :guilabel:`Create`. Then, in the :guilabel:`Product`
and create both the finished product and the component. field, choose the product that will be associated with the :abbr:`BoM (Bill of Materials)`.
Once done, go to the *Bills of Materials* menu under *Master Data*. .. image:: bill_configuration/bill-configuration-bom-creation.png
Now, create it. Choose the product from the dropdown menu and add your
components and the quantity. In this case, keep the default *BoM*
type, which is *Manufacture this Product*.
.. image:: bill_configuration/bills_of_materials_01.png
:align: center :align: center
:alt: Bill of materials creation screen.
.. warning:: There are three :guilabel:`BoM Types` that can be chosen for any bill of materials:
The destination location should **not** be a scrap location. A scrap location is where you put
products that you don't need.
Using the same BoM to describe Variants #. :guilabel:`Manufacture this product` indicates that this product is manufactured in-house, from
--------------------------------------- start to finish using the components listed on the :abbr:`BoM (Bill of Materials)`.
#. :guilabel:`Kits` are sets of unassembled components that may be sold as products, and are useful
As said above, you can use *BoM* for *Product Variants*. It is for managing more complex :abbr:`BoMs (Bills of Materials)`.
basically the same as for the standard product. #. :guilabel:`Subcontracting` outsources the production of some (or all) components or products to
outside manufacturers. This feature needs to be enabled in :menuselection:`Manufacturing app -->
If your *BoM* is for one variant only, then specify which one in the Configuration --> Settings`, under the :guilabel:`Operations` section.
*Product Variant* field. If not, specify the variant it is consumed
for on each component line. You can add several variants for each
component.
.. image:: bill_configuration/bills_of_materials_02.png
:align: center
Adding a routing
================
You can add routing to your *BoM*. You will do this if you need to
define a series of operations required by your manufacturing process. To
use it, enable the *Work Orders* feature in the *Manufacturing* app
settings.
.. image:: bill_configuration/bills_of_materials_03.png
:align: center
.. note:: .. note::
Each *BoM* can have only one routing while each routing can be used A :abbr:`BoM (Bill of Materials)` can also be created directly from the :abbr:`BoM (Bill of
multiple times. Materials)` smart button on the product template, in which case the :guilabel:`Product` field is
pre-filled.
Now that you have created your routing, add it to your *BoM*. You can The most common :guilabel:`BoM Type` is :guilabel:`Manufacture this product`. Once the
select when, in the work operations, your components are consumed with :guilabel:`BoM Type` is chosen, click :guilabel:`Add a Line` to add all the :guilabel:`Components`
the dropdown menu. that go into the production of the final product, as well as the :guilabel:`Quantity` of each
component. Finally, click :guilabel:`Save` to finish creating the :abbr:`BoM (Bill of Materials)`.
.. image:: bill_configuration/bills_of_materials_04.png .. tip::
New components can be added, even during production, directly from the :abbr:`BoM (Bill of
Materials)`. After selecting :guilabel:`Add a line`, create the new component and select
:guilabel:`Create` or :guilabel:`Create and Edit`. Components can also be created by going to
:menuselection:`Manufacturing app --> Products --> Products`, and clicking :guilabel:`Create`.
Specify a BoM for a product variant
-----------------------------------
.. important::
To assign *product variants* to :abbr:`BoMs (Bills of Materials)`, the feature must be enabled in
:menuselection:`Inventory --> Configuration --> Settings`, under the :guilabel:`Products` section
by selecting :guilabel:`Variants` and clicking :guilabel:`Save`.
:abbr:`BoMs (Bills of Materials)` can also be assigned to specific *product variants*, with two
setup options available to choose from.
.. image:: bill_configuration/bill-configuration-product-variants.png
:align: center :align: center
:alt: Bill of materials product variants and apply on variants options.
Adding By-Products The first method is to create one :abbr:`BoM (Bill of Materials)` per product variant, by specifying
================== the :guilabel:`Product Variant` every time a new :abbr:`BoM (Bill of Materials)` is created.
In Odoo, a *by-product* is any product produced by a *BoM* in The second method is to create **one** master :abbr:`BoM (Bill of Materials)` that contains all
addition to the primary product. components, and specify which variant each component applies to in the :guilabel:`Apply on Variants`
column.
To add *by-products* to a *BoM*, you will first need to enable them .. seealso::
from the *Manufacturing* app settings. `Managing with Product Variants
<https://www.odoo.com/slides/slide/manufacturing-with-product-variants-2805>`_
.. image:: bill_configuration/bills_of_materials_05.png .. note::
The :guilabel:`Apply on Variants` column is hidden by default and can be accessed by clicking on
the :guilabel:`Additional Options` menu icon at the right of the :guilabel:`Components` tab.
Set up operations steps
=======================
Some :abbr:`BoMs (Bills of Materials)` require multiple operations and steps during the
manufacturing process. To create :guilabel:`Operations` on a :abbr:`BoM (Bill of Materials)`, first
enable the :guilabel:`Work Orders` feature in :menuselection:`Manufacturing app --> Configuration
--> Settings --> Operations`.
.. image:: bill_configuration/bill-configuration-create-operation.png
:align: center :align: center
:alt: An example of a Bill of Materials operation and the steps creation tab.
Once the feature is enabled, you can add your *By-Products* to your When creating a new :abbr:`BoM (Bill of Materials)`, click the :guilabel:`Operations` tab and click
*BoMs*. You can add as many *By-Products* as you want. Just keep in :guilabel:`Add a line` to add a new operation.
mind that you need to register during which operation your by-product is
produced.
.. image:: bill_configuration/bills_of_materials_06.png In the :guilabel:`Create Operations` box, give the operation a name, and specify the :guilabel:`Work
Center` and the :guilabel:`Default Duration` settings. Under the :guilabel:`Work Sheet` tab, the
type of :guilabel:`Work Sheet` can also be chosen, if assembly instructions need to be attached.
The :guilabel:`Work Sheet` types that can be added are: :guilabel:`Text` (with a
:guilabel:`Description`); :guilabel:`PDF` files; and :guilabel:`Google Slide` presentations. When
all the information has been filled out, select :guilabel:`Save & Close`.
.. image:: bill_configuration/bill-configuration-operations-popup.png
:align: center :align: center
:alt: Bill of materials create operations popup on operations tab.
Add by-products to a BoM
========================
A *by-product* is a residual product that is created during production of a :abbr:`BoM (bill of
materials)`. Unlike the finished product, there can be more than one by-product on a :abbr:`BoM
(Bill of Materials)`.
To add by-products to a :abbr:`BoM (Bill of Materials)`, first enable the :guilabel:`By-Products`
feature in :menuselection:`Manufacturing app --> Configuration --> Settings --> Operations`.
Once the feature is enabled, by-products can be added to a :abbr:`BoM (Bill of Materials)` from the
:guilabel:`By-products` tab by clicking :guilabel:`Add a line`. The by-product can be named, its
:guilabel:`Quantity` specified, and a :guilabel:`Unit of Measure` chosen.
If the :abbr:`BoM (Bill of Materials)` has :guilabel:`Operations` steps, specify exactly which
operation the by-product is produced from in the :guilabel:`Produced in Operation` field. Finally,
click :guilabel:`Save` to save changes.
.. seealso::
- :doc:`/applications/inventory_and_mrp/manufacturing/management/kit_shipping`
- :doc:`/applications/inventory_and_mrp/manufacturing/management/product_variants`
- :doc:`/applications/inventory_and_mrp/manufacturing/management/routing_kit_bom`