Turning specifications into estimating imports
A converter carries specification details into an undocumented estimating system’s import format.
Door hardware distribution
The workflow
01 A-201 03-00 HW-04
02 A-202 06-00 HW-11
03 A-203 03-00 HW-04
Independent work, outside my role at Terakeet. Employment experience
The problem
Estimators re-keyed architects’ specifications into a legacy system whose import format had no available documentation. Its fixed-column rows, placeholder rules, and silent rollback behavior made valid imports difficult to prepare and check.
Each opening carries door, frame, hardware-set, and finish details, but the importer expects a fixed-width text row with 107 fields. Some invalid files appear to import successfully before the system silently rolls back the data.
What I built
The format was decoded by changing one field at a time, exporting, and comparing files. A converter then turns specifications into structured imports, with field and placeholder rules handled in code and output checked through import and re-export.
Decode the file
Create a small record, change one value, export again, and compare files to identify field meanings.
Read varied specifications
Extract schedules, hardware sets, and project details while accounting for differing document layouts.
Build and verify rows
Apply required-field and placeholder rules, then import and re-export a test job to check the result.
The outcome
Specification details can be prepared as system imports, and the format, placeholder rules, and rollback traps are documented in code. The verification method checks whether generated data survives the system’s import and re-export round trip.
The extraction supports several schedule layouts, including direct listings, merged banner rows, and room-type templates expanded against a door census. One full building has been processed from architect specification to a job opened in the estimating system.
Business impact
Carrying source details forward can reduce manual re-entry and help estimators focus on pricing and exceptions, while round-trip checks make discrepancies easier to find.
- Fewer manual handoffs
- Source-to-import checks
- Documented format rules