2020-04-21 13:24:38 +02:00
|
|
|
|
==============================
|
|
|
|
|
|
Subcontract your Manufacturing
|
|
|
|
|
|
==============================
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2022-01-04 16:02:48 +00:00
|
|
|
|
Outsourcing a portion or all of your company’s manufacturing needs
|
|
|
|
|
|
is not easy. To make it work correctly, you have to:
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2022-01-04 16:02:48 +00:00
|
|
|
|
- Manage the inventory of raw materials at your subcontractor
|
2022-11-18 10:10:48 +00:00
|
|
|
|
- Ship raw material to your subcontractors, at the right time
|
2022-01-04 16:02:48 +00:00
|
|
|
|
- Control incoming goods quality
|
|
|
|
|
|
- Control subcontractors bills
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2020-04-21 13:24:38 +02:00
|
|
|
|
Here is an example of subcontracting the manufacturing of “C”, which is
|
|
|
|
|
|
produced out of raw materials “A” and “B”.
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2022-05-20 09:54:32 +00:00
|
|
|
|
.. image:: subcontracting/subcontracting_01.png
|
2019-06-17 13:25:50 +02:00
|
|
|
|
:align: center
|
2022-11-18 10:10:48 +00:00
|
|
|
|
:alt:
|
2020-04-21 13:24:38 +02:00
|
|
|
|
|
2022-01-04 16:02:48 +00:00
|
|
|
|
With its MRP subcontracting feature, Odoo helps you handle this flow easily.
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2020-04-21 13:24:38 +02:00
|
|
|
|
Configuration
|
|
|
|
|
|
=============
|
|
|
|
|
|
|
|
|
|
|
|
To use the subcontracting feature, go to :menuselection:`Manufacturing
|
|
|
|
|
|
--> Configuration --> Settings` and tick the box *Subcontracting*.
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2022-05-20 09:54:32 +00:00
|
|
|
|
.. image:: subcontracting/sbc_1.png
|
2019-06-17 13:25:50 +02:00
|
|
|
|
:align: center
|
2022-11-18 10:10:48 +00:00
|
|
|
|
:alt:
|
2020-04-21 13:24:38 +02:00
|
|
|
|
|
|
|
|
|
|
To define if a product must be subcontracted, use a *Bill of Materials
|
|
|
|
|
|
(BoM)* of type *Subcontracting*.
|
|
|
|
|
|
|
2022-11-18 10:10:48 +00:00
|
|
|
|
To create a new *BoM*, go to :menuselection:`Manufacturing --> Products -->
|
2022-01-04 16:02:48 +00:00
|
|
|
|
Bill of Materials` and hit create. Then, list the components
|
2020-04-21 13:24:38 +02:00
|
|
|
|
your subcontractor needs to manufacture the product. For costing
|
|
|
|
|
|
purposes, you might want to register all the components, even the ones
|
|
|
|
|
|
that are sourced directly from the subcontractor.
|
|
|
|
|
|
|
|
|
|
|
|
Once you have set the *BoM Type* to *Subcontracting*, specify one or
|
|
|
|
|
|
several subcontractors.
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2022-05-20 09:54:32 +00:00
|
|
|
|
.. image:: subcontracting/sbc_2.png
|
2019-06-17 13:25:50 +02:00
|
|
|
|
:align: center
|
2022-11-18 10:10:48 +00:00
|
|
|
|
:alt:
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2020-04-21 13:24:38 +02:00
|
|
|
|
Basic Subcontracting Flow
|
|
|
|
|
|
=========================
|
2020-01-15 13:52:26 +01:00
|
|
|
|
|
2020-04-21 13:24:38 +02:00
|
|
|
|
To let your subcontractor know how many products you need, create and
|
2022-01-04 16:02:48 +00:00
|
|
|
|
send them purchase orders (PO). To do so, go to the *Purchase* app and
|
|
|
|
|
|
create a new purchase order. Be sure to send the PO to a vendor that is
|
|
|
|
|
|
defined as a subcontractor on the *BoM* of these products.
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2022-05-20 09:54:32 +00:00
|
|
|
|
.. image:: subcontracting/subcontracting_04.png
|
2020-04-21 13:24:38 +02:00
|
|
|
|
:align: center
|
2022-11-18 10:10:48 +00:00
|
|
|
|
:alt:
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2020-04-21 13:24:38 +02:00
|
|
|
|
Once the *PO* is validated (1), a pending receipt is created. When the
|
|
|
|
|
|
products are received, validate the receipt (2), with the actual
|
2022-01-04 16:02:48 +00:00
|
|
|
|
quantity received. As a result, Odoo does the following things for you:
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2022-01-04 16:02:48 +00:00
|
|
|
|
- Consumes the respective components at the subcontractor’s location, based on the *BoM* and your input (3);
|
|
|
|
|
|
|
|
|
|
|
|
- Produces the finished goods at the subcontractor’s location (4);
|
|
|
|
|
|
|
|
|
|
|
|
- Moves products from that subcontractor’s location to YourCompany
|
|
|
|
|
|
via the validated receipt (5).
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
|
|
|
|
|
|
2020-04-21 13:24:38 +02:00
|
|
|
|
.. note::
|
|
|
|
|
|
The *PO* is optional. If you create a receipt manually, with the right
|
2022-11-18 10:10:48 +00:00
|
|
|
|
subcontractor, Odoo still performs all the moves. This can be useful if
|
2022-01-04 16:02:48 +00:00
|
|
|
|
the subcontractor does not bill a fixed price per item, but rather the time
|
2020-04-21 13:24:38 +02:00
|
|
|
|
and materials used.
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2020-04-21 13:24:38 +02:00
|
|
|
|
Inventory Valuation
|
|
|
|
|
|
===================
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2020-04-21 13:24:38 +02:00
|
|
|
|
The cost of the manufactured product “C” is defined as:
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2020-04-21 13:24:38 +02:00
|
|
|
|
**C = A + B + s**
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2020-04-21 13:24:38 +02:00
|
|
|
|
With:
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2020-04-21 13:24:38 +02:00
|
|
|
|
- **A**: Cost of raw materials coming from YourCompany;
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2020-04-21 13:24:38 +02:00
|
|
|
|
- **B**: Cost of raw materials sourced directly from the
|
|
|
|
|
|
subcontractor;
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2020-04-21 13:24:38 +02:00
|
|
|
|
- **s**: Cost of the subcontracted service.
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2020-04-21 13:24:38 +02:00
|
|
|
|
Sending raw materials to your subcontractors (**A**) does not impact
|
2022-01-04 16:02:48 +00:00
|
|
|
|
the inventory valuation, as the components are still valued as part of
|
2022-11-18 10:10:48 +00:00
|
|
|
|
your stock. This is managed by making the *Subcontracting Location* an
|
|
|
|
|
|
*Internal Location*.
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2020-04-21 13:24:38 +02:00
|
|
|
|
Then, the vendor price set on the product C form has to be what has to
|
|
|
|
|
|
be paid to the subcontractor for his parts and service time: **B +
|
|
|
|
|
|
s**. The product cost has to be: **A + B + s**, how much the
|
|
|
|
|
|
product is valued in the accounting.
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2022-11-18 10:10:48 +00:00
|
|
|
|
Finally, the subcontractor bill then matches the purchase order, with
|
2022-01-04 16:02:48 +00:00
|
|
|
|
the proposed price coming from the finished products C.
|
2020-01-15 13:52:26 +01:00
|
|
|
|
|
2020-04-21 13:24:38 +02:00
|
|
|
|
.. note::
|
|
|
|
|
|
If managing the replenishment of raw materials **B** at your
|
|
|
|
|
|
subcontractor’s location is not needed, simply include the cost of
|
|
|
|
|
|
**B** in the subcontractor’s price **s** and remove the products
|
|
|
|
|
|
*B* from the *BoM*.
|
|
|
|
|
|
|
|
|
|
|
|
Traceability
|
|
|
|
|
|
============
|
2020-01-15 13:52:26 +01:00
|
|
|
|
|
2022-01-04 16:02:48 +00:00
|
|
|
|
In case the received products from the subcontractor contain tracked
|
2020-04-21 13:24:38 +02:00
|
|
|
|
components, their serial or lot numbers need to be specified during the
|
2022-11-18 10:10:48 +00:00
|
|
|
|
receipt.
|
2020-04-21 13:24:38 +02:00
|
|
|
|
|
2022-01-04 16:02:48 +00:00
|
|
|
|
In that case, on the receipt of the subcontracted product, a *Record Components*
|
2022-11-18 10:10:48 +00:00
|
|
|
|
button appears. Click on it to open a dialog box and record the serial/lot numbers of
|
2022-01-04 16:02:48 +00:00
|
|
|
|
the components. If the finished product is also tracked, its serial/lot number can
|
|
|
|
|
|
be registered here too.
|
2020-01-15 13:52:26 +01:00
|
|
|
|
|
2022-05-20 09:54:32 +00:00
|
|
|
|
.. image:: subcontracting/sbc_3.png
|
2020-01-15 13:52:26 +01:00
|
|
|
|
:align: center
|
2022-11-18 10:10:48 +00:00
|
|
|
|
:alt:
|
2020-04-21 13:24:38 +02:00
|
|
|
|
|
|
|
|
|
|
For audit purposes, it is possible to check the lot numbers recorded on
|
|
|
|
|
|
a receipt by using the icon on the right of the finished products:
|
2020-01-15 13:52:26 +01:00
|
|
|
|
|
2022-05-20 09:54:32 +00:00
|
|
|
|
.. image:: subcontracting/sbc_4.png
|
2020-01-15 13:52:26 +01:00
|
|
|
|
:align: center
|
2022-11-18 10:10:48 +00:00
|
|
|
|
:alt:
|
2020-01-15 13:52:26 +01:00
|
|
|
|
|
2022-11-18 10:10:48 +00:00
|
|
|
|
Also note that in case flexible consumption has been selected on the subcontracted
|
|
|
|
|
|
BOM for a non-tracked product, the record components option will also appear
|
|
|
|
|
|
optionally on each move line, if you want to register more or less component consumption
|
|
|
|
|
|
at your subcontracting location, when receiving your final product.
|
2020-04-21 13:24:38 +02:00
|
|
|
|
|
2022-05-20 09:54:32 +00:00
|
|
|
|
.. image:: subcontracting/sbc_5.png
|
2022-01-04 16:02:48 +00:00
|
|
|
|
:align: center
|
2022-11-18 10:10:48 +00:00
|
|
|
|
:alt:
|
2020-04-21 13:24:38 +02:00
|
|
|
|
|
2022-11-18 10:10:48 +00:00
|
|
|
|
As you can see, the reception of both of these non-tracked products can either be executed
|
|
|
|
|
|
by selecting the 'Set Quantities' Option or via the move line hamburger menus.
|
2020-04-21 13:24:38 +02:00
|
|
|
|
|
2022-01-04 16:02:48 +00:00
|
|
|
|
Automate Replenishment of Subcontractors
|
|
|
|
|
|
========================================
|
2020-01-15 13:52:26 +01:00
|
|
|
|
|
2022-11-18 10:10:48 +00:00
|
|
|
|
There are two ways to automate the supply of raw materials to your
|
2022-01-04 16:02:48 +00:00
|
|
|
|
subcontractors when purchasing the final product. The chosen method
|
|
|
|
|
|
depends on whether or not you want the materials to transit through your
|
2022-11-18 10:10:48 +00:00
|
|
|
|
warehouse. Both of these methods are described as pull style mechanisms as
|
|
|
|
|
|
their trigger is the inital PO to the subcontractor, which creates a need
|
|
|
|
|
|
at the subcontracting location, for raw material.
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2022-01-04 16:02:48 +00:00
|
|
|
|
If you are supplying your subcontractor with raw material from your own warehouse,
|
2022-11-18 10:10:48 +00:00
|
|
|
|
you must activate the 'Resupply Subcontractor on Order' route as shown
|
2022-01-04 16:02:48 +00:00
|
|
|
|
below. If this is a component that you buy from a vendor, the buy route
|
2022-11-18 10:10:48 +00:00
|
|
|
|
should also be activated.
|
2020-04-21 13:24:38 +02:00
|
|
|
|
|
|
|
|
|
|
|
2022-05-20 09:54:32 +00:00
|
|
|
|
.. image:: subcontracting/sbc_6.png
|
2020-04-21 13:24:38 +02:00
|
|
|
|
:align: center
|
2022-11-18 10:10:48 +00:00
|
|
|
|
:alt:
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
|
|
|
|
|
|
2022-11-18 10:10:48 +00:00
|
|
|
|
Now, if you want your vendor to resupply your subcontractor directly, you
|
|
|
|
|
|
must choose the 'Dropship Subcontractor on Order' option instead. In order
|
|
|
|
|
|
for this option to be active on the product form, you must first activate the
|
2022-01-04 16:02:48 +00:00
|
|
|
|
dropship option from :menuselection:`Purchase --> Configuration --> Settings -->
|
|
|
|
|
|
Dropshipping`.
|
2022-11-18 10:10:48 +00:00
|
|
|
|
Once the PO to the subcontractor is validated, this route will create a dropship
|
|
|
|
|
|
RFQ from your vendor to that subcontractor. You then just need to review and validate it.
|
2022-01-04 16:02:48 +00:00
|
|
|
|
|
|
|
|
|
|
|
2022-05-20 09:54:32 +00:00
|
|
|
|
.. image:: subcontracting/sbc_7.png
|
2019-06-17 13:25:50 +02:00
|
|
|
|
:align: center
|
2022-11-18 10:10:48 +00:00
|
|
|
|
:alt:
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2022-11-18 10:10:48 +00:00
|
|
|
|
Note that the buy route is not selected in this case, as the dropship route is
|
|
|
|
|
|
a buy route already.
|
2020-04-21 13:24:38 +02:00
|
|
|
|
|
2022-01-04 16:02:48 +00:00
|
|
|
|
Finally, if you want to track the stock of these raw materials at your subcontracting
|
|
|
|
|
|
location(s), then you must activate *Multi-locations* in :menuselection:`Inventory -->
|
2022-11-18 10:10:48 +00:00
|
|
|
|
Configuration --> Settings --> Storage locations`.
|
2020-04-21 13:24:38 +02:00
|
|
|
|
|
2022-11-18 10:10:48 +00:00
|
|
|
|
From the location form, you are then able to access the Current Stock.
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2022-05-20 09:54:32 +00:00
|
|
|
|
.. image:: subcontracting/sbc_8.png
|
2019-06-17 13:25:50 +02:00
|
|
|
|
:align: center
|
2022-11-18 10:10:48 +00:00
|
|
|
|
:alt:
|
2019-06-17 13:25:50 +02:00
|
|
|
|
|
2020-01-15 13:52:26 +01:00
|
|
|
|
|
2020-04-21 13:24:38 +02:00
|
|
|
|
|
2022-01-04 16:02:48 +00:00
|
|
|
|
Manual Replenishment
|
2023-02-13 15:50:13 +00:00
|
|
|
|
--------------------
|
2020-01-15 13:52:26 +01:00
|
|
|
|
|
2022-11-18 10:10:48 +00:00
|
|
|
|
You can also choose to replenish your subcontractors manually.
|
2020-04-21 13:24:38 +02:00
|
|
|
|
|
2022-11-18 10:10:48 +00:00
|
|
|
|
If you want to send components to your subcontractor at your own convenience,
|
|
|
|
|
|
select the 'Resupply Subcontractor' Operation Type from the *Inventory* Module,
|
|
|
|
|
|
and create a picking, specifying to which subcontractor you are delivering to.
|
2020-04-21 13:24:38 +02:00
|
|
|
|
|
2022-05-20 09:54:32 +00:00
|
|
|
|
.. image:: subcontracting/sbc_9.png
|
2020-04-21 13:24:38 +02:00
|
|
|
|
:align: center
|
2022-11-18 10:10:48 +00:00
|
|
|
|
:alt:
|
2020-04-21 13:24:38 +02:00
|
|
|
|
|
2022-11-18 10:10:48 +00:00
|
|
|
|
Alternatively, you can also manually ask your vendor to resupply your subcontractor
|
2022-01-04 16:02:48 +00:00
|
|
|
|
by creating a dropship type PO, with your subcontractor set as the delivery address.
|
|
|
|
|
|
|
2022-05-20 09:54:32 +00:00
|
|
|
|
.. image:: subcontracting/sbc_10.png
|
2022-11-18 10:10:31 +00:00
|
|
|
|
:align: center
|