Selected projects

Jalalabad Metals Manufacturing ERP

The material changes.
The record stays connected.

I translated steel production into an Odoo system that connects imported material, manufacturing formulas, production orders and finished lots.

My role
Odoo architecture
and custom development
Platform
Odoo 17 → 18
Python · PostgreSQL · OWL · QWeb
Implementation scope
8 companies and operating units
Production model
11 stations
A completed manufacturing order keeps its request, formula and finished lot together. Fictional demonstration records.
01

Start with the true cost
of the material.

A purchase price is only part of an imported coil’s cost. I connected purchasing, import milestones and receipts to landed-cost allocation, so the additional costs stay attached to inventory.

Purchase and landed costs are reconciled in one worked example. All amounts shown are fictional.
See the import and receipt records
The import record connects the purchase and receipt. Supplier and shipment details are fictional.
02

Make the formula match
what happens on the line.

Steel changes weight, dimensions and form. I separated inputs, finished outputs, recoverable by-products and process loss, with checks that catch an unbalanced formula before it becomes production.

Input=Finished output+Recoverable by-product+Declared loss
The coating example balances material input against finished coil and recoverable trim.

One unit does not tell the whole story.

I extended stock movements and traceability to retain a second unit where needed. Weight remains connected to the lengths or pieces that production teams work with.

Separate cutting and profiling formulas keep weight, length and piece count explicit. The diagrams explain the calculations.
03

Follow the work.
Then follow the material.

A production request establishes responsibility, workcenter, schedule and quantities. Manufacturing orders allocate the inputs; finished lots preserve the route back to the material consumed.

One formula creates two manufacturing orders with separately allocated inputs. In this example, one is done and one is confirmed.
A finished lot traces back through its manufacturing order to the consumed coil and zinc lots.
See the production request behind the orders
Responsibility, workcenter, schedule and output quantities are recorded before manufacturing is complete.
04

Bring the supporting work
into the same system.

Material requests and overtime have their own approval rules. I connected those controls to the stock and people workflows while keeping approval distinct from execution.

An approved material request links to its completed internal issue. Approval and stock movement are separate steps.
See the overtime approval control
An overtime request must cover the employee, date and work schedule before it can be approved.

A factory model with room for different processes.

Eleven production stations sit within the wider implementation. The station groups shown here provide context; they are not a compulsory sequence for every product.

Eleven configured workcenters, grouped to explain the factory. Actual routing depends on the production process.

Engineering the implementation

A connected model.
Clear company boundaries.

I worked across business workflows, custom modules, reports and the move from Odoo 17 to 18. The manufacturing model needed to remain connected while preserving company-level access and reporting boundaries.

Domain logic

Process-specific formulas, material-balance validation, multiple outputs and dual-unit stock tracking.

Operational controls

Import costs, production requests, material issues, overtime and traceable approvals.

Company boundaries

Company-aware records, access rules and reporting across eight companies and operating units.

Version migration

Dedicated migration modules and updates for changes in Odoo’s models, views and framework.

The custom manufacturing logic connects imports, inventory, production, finished lots and operational approvals.

The eight-company and eleven-station figures describe the documented implementation scope. Application screens use fictional demonstration records; process diagrams are explanatory illustrations. Screenshots demonstrate the workflows, not current production volumes or measured business results.

Another operating model

Koncept Furniture Retail, from showroom to dispatchView all projects

Open original ↗