# Week 2 Implementation Guide: Manufacturing (MRP) + Multi-Output BOM + Yield/Wastage This guide explains what Odoo Community Edition already provides, what we built custom, and how to verify each feature. --- ## Odoo Community vs Custom — What You Get | Feature | Odoo Community | C2C Custom | |---|---|---| | Work Centers (Cleaning, Grading, Packing) | ✅ Built-in | — | | Standard BOM + Single Finished Product | ✅ Built-in | — | | Operations/Routing on Work Centers | ✅ Built-in | — | | Byproducts on BOM | ✅ Built-in (1 extra output) | — | | Standard Costing + Labor on Work Centers | ✅ Built-in | — | | Scrap during MO | ✅ Built-in | — | | **Multiple Finished Products per BOM** | ❌ Not supported | ✅ `c2c_multi_output_bom` | | **Stock moves per output on MO completion** | ❌ Not supported | ✅ `c2c_multi_output_bom` | | **Yield % / Wastage report per batch/lot** | ❌ Not supported | ✅ `c2c_yield_wastage` | | **Auto-generate yield record on MO done** | ❌ Not supported | ✅ `c2c_yield_wastage` | --- ## Step 0 — Initial Settings Configuration (For a Fresh Database) If you are deploying this on a brand-new database, you **must manually turn on** these advanced Odoo features before the custom features will appear. **Turn on Manufacturing Features:** 1. Open the **Manufacturing app**. 2. Go to **Configuration > Settings**. 3. Under the **Operations** section, check the box for **Work Orders**. 4. Click the purple **Save** button at the top left. *(Note: If you do not do this, the "Work Centers" menu will remain completely hidden!)* --- ## Step 2.1 — Standard MRP Configuration ### (Step 2.1.1) Create Work Centers 1. Open **Manufacturing** app > **Configuration** > **Work Centers**. 2. Click **New** and create the following 4 work centers for C2C Agricorp: | Work Center | Company | Cost per Hour | |---|---|---| | Cleaning Station | C2C Agricorp India Pvt Ltd | ₹150 | | Grading Table | C2C Agricorp India Pvt Ltd | ₹200 | | Packing Line | C2C Agricorp India Pvt Ltd | ₹250 | | Stringing Station | C2C Agricorp India Pvt Ltd | ₹180 | 3. On each Work Center form, set the **Costing Method** to `Time-based` and set the **Cost per Hour**. ### (Step 2.1.3) Set Standard Cost on Raw Materials 1. Open **Inventory** > **Products** > **Products**. 2. Open **Raw Turmeric** (or your flower product). 3. Under the **Purchase** tab, verify the cost. 4. Under **General Information** > **Product Type**: set to `Storable Product`. 5. Go to **Accounting** tab > **Costing Method**: should read `Standard Price`. --- ## Step 2.2 — Multi-Output BOM (`c2c_multi_output_bom`) This custom module allows a single BOM to produce **multiple finished products** in one Manufacturing Order. ### How to create a Multi-Output BOM (Example: Roses) 1. Open **Manufacturing** > **Products** > **Bills of Materials**. 2. Click **New**. 3. Set: - **Product**: `Pack 500g Roses` (your primary/main output) - **Quantity**: `200` - **BOM Type**: `Manufacture This Product` 4. In the **Components** tab, add: `Raw Roses | 100 kg`. 5. Click the **Output Products** tab (new custom tab). 6. Click **Add a line** and add co-products: | Output Product | Quantity | Notes | |---|---|---| | Pack 500g Roses (Stems) | 5 | Byproduct stems | 7. **Save** the BOM. ### How to run a Multi-Output Manufacturing Order 1. Go to **Manufacturing** > **Manufacturing Orders** > **New**. 2. Select the **BOM** you just created. The **Additional Outputs** tab will appear automatically with your co-products pre-filled. 3. Set the **Actual Qty** for each output on the **Additional Outputs** tab. 4. Assign **Lot/Batch** to each output line (for FEFO traceability). 5. Click **Mark as Done**. 6. ✅ Odoo will automatically create separate stock moves for EACH output product into your finished goods location. --- ## Step 2.3 — Yield & Wastage (`c2c_yield_wastage`) This module auto-generates a yield report every time a Manufacturing Order is marked as Done. ### How Yield is Calculated ``` Input Qty = Total raw materials consumed Output Qty = Finished goods produced (what went to stock) Wastage = Input - Output Yield % = (Output / Input) × 100 ``` ### How to View Yield Reports 1. Go to **Manufacturing** > **Reporting** > **Yield & Wastage** (new menu). 2. You will see a list of all completed MOs with their yield data. 3. **Colour coding**: - 🔴 Red = Yield below 70% (critical — investigate) - 🟡 Yellow = Yield below 85% (warning — review process) - ✅ White = Yield 85% and above (acceptable) 4. Click any record to open the form view with full detail, lot traceability, and a **Notes** field to record root cause. ### Smart Button on MO After marking an MO as Done, go back to the Manufacturing Order. A new **Yield Reports** smart button (bar chart icon) will appear in the top right of the MO form. Click it to jump directly to the yield data for that batch. --- ## Step 2.4 — Manufacturing Cost Rollup ### How to include labor/overhead in finished goods cost 1. Open **Manufacturing** > **Configuration** > **Work Centers**. 2. Open each work center. Set the **Cost per Hour** (labor rate). 3. On the BOM, under the **Operations** tab, add: - Work Center: `Grading Table` - Duration: `30 minutes` 4. When the MO is completed, Odoo's `mrp_account` module (already installed) will post: - **Raw material cost** → Debit Work In Progress - **Labor cost** (time × rate) → Debit Work In Progress - On MO done: WIP transfers to Finished Goods at the rolled-up total cost. ### Verify Cost Rollup 1. Complete an MO for `Pack 500g Roses`. 2. Go to the MO form > Click the **Valuation** smart button (if visible, requires Inventory Valuation enabled). 3. Also check: **Accounting** > **Journal Entries** and filter by `Manufacturing`. --- ## Verification Checklist — Week 2 - [ ] **Work Centers** created (Cleaning, Grading, Packing, Stringing) - [ ] **Multi-Output BOM** created with Output Products tab visible - [ ] **MO completes multi-output** → verify 2+ stock moves created in Inventory > Transfers - [ ] **Yield report** auto-generated after MO completion - [ ] **Yield & Wastage report** visible in Manufacturing > Reporting - [ ] **Color coding** works — try an MO where output < 70% of input - [ ] **Journal entries** posted for raw cost + labor cost on MO completion --- ## Example: Jasmine Stringing Flow **BOM Setup:** - Primary Output: `Bundle (3m) Jasmine` — Qty: 20 - Component: `Raw Jasmine` — 100 kg - Output Products tab: *(none — single output, standard flow)* - Operations: `Stringing Station | 2 hours` **Expected Results after MO Done:** - 20 x Bundle (3m) Jasmine moved to Finished Goods ✅ - Yield Report created: Input 100kg, Output ~60kg equivalent, Yield ~60% ✅ - Journal Entry: Raw Material Cost + (2hr × ₹180) = Total COGS ✅