Selections & Options
A buyer rarely buys a base plan as-is — they pick Options (“upgrade to granite, add a fireplace, choose paint color X”). Options are organized into Selections (categories the buyer must complete to ratify the contract).
At a glance
- Three layers: Selection (category) → Option (choice) → Resource (material/labor).
- Buyers think in Selections. Sales sells Options. Trades quote Resources. The system keeps all three reconciled.
- A buyer’s picks land in
ChosenOption(~595k rows). Ratify moves quantities into the Estimate; PO Generate cuts the matching POs. - “Late selections” (picked after POs are out) need a Variance to apply.
The three layers
Section titled “The three layers” Selection (category) "Kitchen Countertops" │ └── Option (choice) "Level 3 Granite – Santa Cecilia" │ └── Resource(s) "Granite slab 10ft", "Edge profile bullnose", "Install labor"Why three? Buyers think in Selections. Sales sells Options. Trades quote Resources. The system has to keep all three reconciled.
Tables
Section titled “Tables”ChosenOption is the workhorse — that’s where a contract’s actual picks live. The Selection and Option tables are the catalog; vwLoadPriceBook* joins them to a sale price.
Full Selection / Option / ChosenOption table reference
| Layer | Tables |
|---|---|
| Selection | Selection (~5,800 rows), LotSelectionActivity, ProjectSelectionActivity |
| Option | Option, vwLookupOptions, LoadCatalogTemplateOptions |
| Chosen on a contract | ChosenOption (~595k rows), vwChosenOption, vwChosenOptionTotalQuantity |
| Pricing | vwLoadPriceBookSellableOption, vwLoadPriceBookSellablePlanOption |
| Hard cost | vwChosenOptionHardCosts |
How a selection becomes a cost
Section titled “How a selection becomes a cost”1Buyer picks an Option in a Selection (in SMART or via a selection sheet).
2ChosenOption row is written for the Contract.
3Estimate runs — the Option's Resources are added to the Lot's Estimate.
4POs adjust — affected POs are regenerated when the Lot ratifies.
5Buyer is charged the Option's sale price (from the Price Book).
Common gotchas
Section titled “Common gotchas”The four problems CSRs run into most often:
Late selections, ghosted options, compares, and selection cleanup
- Late selections. If a buyer picks an Option after their POs have been released, the system flags
SelectionsAcceptedAfterPOReleased. The CSR/PM has to issue a Variance to make the change. - Ghosted options. When a sub-option has no parent or vice versa. Tracked by the
GhostedOptionsEmailutility. - Compares. When two lots should have the same selections but differ — see
Compares_*views and theComparesUpdateSchedules.sqlscripts. - Selections delete. Cleaning up an in‑flight contract’s chosen options:
Selections Delete.sql.
Where in the apps
Section titled “Where in the apps”- SMART → Sales → Selections — quote and accept selections.
- SMART → Project Management → Compares — verify lots match.
- Home Owner Portal → Selections.aspx — buyer reviews their picks.
- Trade Portal → order.aspx — trade sees the resulting Resources on their PO.