documentation/manufacturing/management/subcontracting.rst

232 lines
7.6 KiB
ReStructuredText
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

==============================
Subcontract your Manufacturing
==============================
Outsourcing a portion of some or all your companys manufacturing needs
is not easy. To make it work right, you have to:
- Manage the inventory of raw materials at your subcontractor;
- Ship new materials to your subcontractors based on your forecasted
demand;
- Keep track of manufacturing operations done at the subcontractor
location;
- Control incoming goods quality;
- Control subcontractors bills.
Here is an example of subcontracting the manufacturing of “C”, which is
produced out of raw materials “A” and “B”.
.. image:: media/subcontracting_01.png
:align: center
:alt:
With its subcontracting feature, Odoo helps you handle this flow easily.
Configuration
=============
To use the subcontracting feature, go to :menuselection:`Manufacturing
--> Configuration --> Settings` and tick the box *Subcontracting*.
.. image:: media/subcontracting_02.png
:align: center
:alt:
To define if a product must be subcontracted, use a *Bill of Materials
(BoM)* of type *Subcontracting*.
To create a new *BoM*, go to :menuselection:`Manufacturing --> Master
Data --> Bill of Materials` and hit create. Then, list the components
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.
.. image:: media/subcontracting_03.png
:align: center
:alt:
Basic Subcontracting Flow
=========================
To let your subcontractor know how many products you need, create and
send them purchase orders (PO). To do so, open the *Purchase* app and
create a new one. Be sure to send the PO to a vendor that is defined as
a subcontractor on the *BoM*.
.. image:: media/subcontracting_04.png
:align: center
:alt:
Once the *PO* is validated (1), a pending receipt is created. When the
products are received, validate the receipt (2), with the actual
quantity received. Then Odoo automatically created several inventory
moves:
- Consume the components at the subcontractors location, based on the
*BoM* (3);
- Produce finished goods at the subcontractors location (4);
- Move products from the subcontractors location to YourCompany
through the validated receipt (5).
Of course, Odoo does all the transactions for you, automatically. Simply
control the vendor bill with the usual matching process with the
purchase order.
.. note::
The *PO* is optional. If you create a receipt manually, with the right
subcontractor, Odoo still performs all the moves. Useful if the
subcontractor does not bill a fixed price per item, but rather the time
and materials used.
Inventory Valuation
===================
The cost of the manufactured product “C” is defined as:
**C = A + B + s**
With:
- **A**: Cost of raw materials coming from YourCompany;
- **B**: Cost of raw materials sourced directly from the
subcontractor;
- **s**: Cost of the subcontracted service.
Sending raw materials to your subcontractors (**A**) does not impact
the inventory valuation, the components still belonging to your company.
To manage this, the *Subcontracting Location* is configured as an
*Internal Location* so that the components are still valued in the
inventory.
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.
Finally, the subcontractor bill matches the purchase order, with the
proposed price coming from the finished products C.
.. note::
If managing the replenishment of raw materials **B** at your
subcontractors location is not needed, simply include the cost of
**B** in the subcontractors price **s** and remove the products
*B* from the *BoM*.
Traceability
============
In case the products received from the subcontractor contain tracked
components, their serial or lot numbers need to be specified during the
receipt.
On the receipt of the subcontracted product, a *Record Components*
button appears when necessary. Click on it to open a dialog and record
the serial/lot numbers of the components. If the finished product is
also tracked, its serial/lot number can be registered here too.
.. image:: media/subcontracting_05.png
:align: center
:alt:
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:
.. image:: media/subcontracting_06.png
:align: center
:alt:
Automate Replenishment of Subcontractors
========================================
To manage the resupply of your subcontractor, activate
*Multi-locations* in :menuselection:`Inventory --> Configuration -->
Configuration`. Then, the inventory at the subcontractor location can
be tracked.
It is possible to resupply subcontractors by sending products from the
company locations, or by sending products from another supplier to the
subcontractors.
Replenishment from the warehouse
--------------------------------
Resupplying subcontractors manually is the simplest approach. To do so,
create delivery orders in which the subcontractor is set as a delivery
address and fill the components to deliver.
To automate the subcontractors replenishment propositions, there are
two approaches:
- Reordering rules;
- Replenish on order flow.
For the first one, just define a reordering rule on the subcontracting
location, with a minimum and maximum inventory level. When the
reordering rule is triggered, a delivery order is created to ship the
components to the subcontractor.
.. image:: media/subcontracting_07.png
:align: center
:alt:
The second approach is to use a “pull” flow. Here, the demand in the
finished product (real demand or forecasted one through the Master
Production Schedule) triggers the replenishment of the subcontractor. To
do so, select the route *Resupply Subcontractor on Order* on the
wanted components.
.. image:: media/subcontracting_08.png
:align: center
:alt:
Replenishment from another supplier
-----------------------------------
When purchasing items to another supplier, it is possible to ask him to
deliver the subcontractor directly. To do so, activate the *Drop
Shipping* feature in :menuselection:`Purchase --> Configuration -->
Configuration`.
Now, set the *Dropship* option in the *Deliver To* field of the
*Other Information* tab. Then, provide the address of the
subcontractor for the shipping.
.. image:: media/subcontracting_09.png
:align: center
:alt:
That way, the supplier can ship items directly and you simply receive
and pay the bill. However, it is still required to validate receipts for
the subcontractor.
.. image:: media/subcontracting_10.png
:align: center
:alt:
Quality Control
---------------
Controlling the quality of the products manufactured by subcontractors
is possible thanks to the Odoo Quality app. Quality checks can be made
on a manufacturing step but, because the manufacturing process is
handled by an external party, it can be defined on the product
reception.
.. image:: media/subcontracting_11.png
:align: center
:alt:
To create a quality check at the receipt, open the *Quality* app and
create a new *Control Point* on the reception.
.. image:: media/subcontracting_12.png
:align: center
:alt:
By doing so, a quality check is automatically created each time a
finished product is received.