Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Wheels — Batch Update

Batch update wheel product parameters. Split into three subcommands:

SubcommandDescription
csv <file>Update from CSV file (per-row filter + values)
view [filter flags...]Preview matching wheels without updating (read-only)
inline [filter flags...] [set flags...]Apply uniform changes to all matching wheels

Set-Value Flags (inline mode)

FlagTypeDescription
--set-etintNew ET value
--set-cbstringNew CB value
--set-capstringNew cap part number (e.g. "CP865PS80")
--set-boltstringNew bolt name (e.g. "M14x2.0")
--set-holesintNew number of holes
--set-pcd1stringNew PCD1 value
--set-pcd2stringNew PCD2 value
--set-statusstringNew status (true/false, active/inactive, 1/0)
--set-base-finishstringNew base finish name
--set-proceduresstringNew procedures (comma-separated, replaces entire list)

batch-update csv

Usage: efision -r <region> wheels batch-update csv <file>

CSV Format:

Columns without prefix are filter criteria; columns with new_ prefix are values to set.

model,diameter,width,holes,pcd1,pcd2,et,new_et
Blitz,19,8.5,5,112,114.3,32,35
Blitz,19,8.5,5,112,114.3,40,38

Available CSV columns:

  • Filter: model, brand, diameter, width, holes, pcd1, pcd2, et, cb, base_finish, procedures
  • Set-value: new_et, new_cb, new_cap, new_bolt, new_holes, new_pcd1, new_pcd2, new_status, new_base_finish, new_procedures

Example:

efision -r demo wheels batch-update csv updates.csv

batch-update view

Preview matching wheels without updating.

Usage: efision -r <region> wheels batch-update view [filter flags...]

Example:

efision -r demo wheels batch-update view --brand INOVIT --diameter 19
Wheels Batch Filter View

    Configuration
    . Region  DEMO
    . Mode    View

    Filters
    . Brand     INOVIT  . Diameter  19

Finding matching wheels... done.

Matching wheel(s) 35:

 #  Part Number          Brand   Model   Size    HxPCD       ET  CB     Cap        Bolt       Status  Base Finish  Procedures
 1  02319K5T38S1ANA      INOVIT  Speed   19x8.5  5x112       38  73.10  CP506AL68  32x15x60   Active  Silver       Machined Face
 2  02319K5B40S1BNA      INOVIT  Speed   19x8.5  5x120       40  72.60  CP506AL68  32x15x60   Active  Black        CNC/Paint
 ...

batch-update inline

Apply uniform changes to all matching wheels. At least one filter flag and one set-value flag are required.

Usage: efision -r <region> wheels batch-update inline [filter flags...] [set flags...]

Update CB:

efision -r demo wheels batch-update inline \
  --brand "INOVIT" --holes 5 --pcd1 "115" \
  --set-cb 71.5

Update multiple fields:

efision -r demo wheels batch-update inline \
  --model "Blitz" --holes 5 --pcd1 "112" --pcd2 "114.3" \
  --set-cb 71.5 --set-cap "CP865PS80" --set-bolt "M14x2.0"

Deactivate by finish:

efision -r demo wheels batch-update inline \
  --brand "INOVIT" --base-finish "Black" \
  --set-status false

Change procedures:

efision -r demo wheels batch-update inline \
  --brand "INOVIT" --model "Speed" --diameter 19 \
  --set-base-finish "Silver" --set-procedures "Machined Face,Diamond Cut"

Notes

  • Each CSV row must have at least one filter column and one new_ column
  • Bolt, cap, base finish, and procedure values are resolved from human-readable names to database IDs
  • --model filter matches against both design name (pdName) and design code (pdNO)
  • PCD filter uses separate --pcd1 and --pcd2 flags. Use only --pcd1 for single-PCD wheels
  • Procedures filter performs exact match (order-insensitive)
  • --set-status updates Product.pStatus. Accepts true/false, active/inactive, or 1/0
  • --set-procedures replaces the entire procedure list (does not append)
  • Spec updates target ProductWheels rows (by pwID); status updates target Product rows (by pID)
  • All updates execute within a single database transaction (all-or-nothing)
  • Part numbers are automatically regenerated after spec changes
  • Filter validation: When no wheels match (inline mode), the CLI checks whether the brand/model exists and lists available values
  • Mold range validation: Proposed ET, CB, PCD values are checked against mold constraints. Violations are shown as a warning table before confirmation
  • Mold range auto-expansion: After update, any exceeded mold ranges are automatically expanded