BOQ Smart Importer
The Smart Importer is the Premium-tier Excel → BOQ ingestion engine. It turns the messy reality of client-provided BOQ files (multiple sheets, merged cells, mixed units, AR-only descriptions, formula cells) into clean, validated BOQ data with a single guided wizard.
Premium tier. Free tier users can manually create BOQ lines. Smart Importer unlocks bulk ingestion.
Overview
The Importer is a four-step wizard:
- Upload — drop the
.xlsxfile. - Map — review auto-detected columns and confirm or override mappings.
- Dry run — see what would be created without writing anything.
- Commit — write the BOQ into a new or existing revision.
Each step is reversible. A one-click Revert on the BOQ revision unwinds the entire import.
Key concepts
Auto-detection. The importer reads the first 50 rows of the workbook and uses heuristics + an LLM-assisted classifier to identify which columns are code, description, unit, quantity, rate. AR + EN columns are detected separately.
Mapping. The user confirms or overrides each auto-detected mapping. Mappings are saved per template — so re-importing a similar file later is one-click.
Dry run. The importer simulates the full write into a sandbox revision and produces a validation report — unit mismatches, duplicate codes, missing rates, currency conflicts, suspicious quantities.
Commit. Once the dry run is clean (or the user explicitly accepts warnings), the importer commits into a new or existing open revision.
Revert. Any imported revision can be reverted in a single click. The revert is itself an audit event.
Step-by-step: import a BOQ
- Go to Project → BOQ → Smart Import.
- Step 1 — Upload: drag your
.xlsxfile. Multi-sheet workbooks prompt you to pick a sheet. - Step 2 — Map columns: review auto-detected mappings. Override by clicking the column header dropdown. Save the mapping as a template if you'll use it again.
- Step 3 — Dry run: click Run dry run. The report shows:
- Total lines that would be created.
- Totals by section and grand total.
- Warnings (unit mismatches, duplicate codes, zero rates).
- Errors (must be fixed before commit).
- Step 4 — Commit: if the report is clean, click Commit. Pick the target revision (new or existing-open).
Step-by-step: revert an import
- Go to Project → BOQ → revisions.
- Find the revision created by the import.
- Actions → Revert import. ORKSTRA asks for a confirmation note.
- The revision is removed and a
REVERTevent is logged.
Common tasks
- Save a mapping template: at the end of Step 2, click Save as template.
- Bulk replace existing BOQ: import into an empty new revision, then switch the project's current revision.
- AR-only BOQs: the importer detects Arabic columns automatically. You can also paste English descriptions later via inline edit.
- Re-import after fixing the file: revert the previous import, then import the corrected file.
Troubleshooting
- "The auto-detect picked the wrong column." — Override manually in Step 2. The dropdown shows every column header.
- "Dry run fails with 'duplicate code'." — Two or more rows have the same code. Either edit the file, or check Allow duplicates if intentional (rare).
- "Quantity column is empty." — The mapper may have picked a formula cell that evaluates to blank. Override to point at the calculated column.
- "Commit times out." — Files over 10,000 lines may exceed the synchronous timeout. Use Commit async — you'll get a notification when complete.
- "AR descriptions show as ???" — File encoding is non-Unicode. Re-save the Excel as
.xlsxwith UTF-8 and re-upload.
Limits
- Max workbook size: 25 MB.
- Max lines per import: 50,000.
- Max columns: 64.
Permissions reference
| Permission | Who needs it |
|---|---|
BOQ_IMPORT | QSes |
BOQ_IMPORT_TEMPLATE_MANAGE | Senior QSes |
BOQ_IMPORT_REVERT | Senior QSes |