Corporate project · Industrial manufacturer · In use
Porting a Desktop Tool's Bill-of-Materials Engine 1:1 to the Web
The Excel-formula bill-of-materials engine of a legacy desktop tool was ported 1:1 to C#. Technical project configuration became a web module alongside the CRM.
- Web app
- Database / SQL
- Automation
- 100%match across every historical project
- ≈15.7 millionBOM lines compared in regression
- 0engine errors
- 23API controllers
- 1Legacy toolDatabase read-only
- 2MirrorRead-only copy
- 3BOM engine1:1 port to C#
- 4Regression≈15.7M lines, 100% match
- 5Web moduleNext to the CRM, send to 3D
Built for an industrial company. For confidentiality, the company name, logo, product/part codes and internal data are not shared; images are cropped accordingly. The flow diagram is illustrative.
The need
Technical projects and BOMs lived in a legacy desktop app, disconnected from sales.
The solution
- The C# port of the BOM engine was regression-tested against every historical project.
- The legacy database is read-only and mirrored.
- Project codes are generated automatically.
- Region-based visibility and role-based permissions; denials always return 403.
- Analysis and report screens; a departing employee's work can be handed over.
- A "send to 3D drawing" button on the project, plus a dictionary/data endpoint for the 3D app, refreshed every 2 minutes, with product type mandatory.
Delivered
- Project API
- Project front end
- BOM engine library
- Regression tool
Technologies
- C# / .NET 8
- Dapper
- SQL Server Express
- Next.js 14
- Python
Related services
Custom Software DevelopmentDatabases, SQL & IntegrationWorkflow Automation3D & Interactive Presentation