A dedicated tool for the parameters that change a BOM’s cost from the outside: inflation, margins, specific percentages. Each variable is defined once, then applied to the whole BOM, to a category of part numbers, or to a single element.
A BOM’s cost is not a fixed number. Inflation, margins and other percentages change it, and they don’t apply the same way everywhere: some affect every part, some only one type of part, some a single part number.
The goal was simple to say and hard to design: apply variables to specific data, or to groups of data, without touching every row by hand.
Variables act on the BOM, but they are not part of it. They are global parameters that many BOMs share, so they live in a dedicated tool: defined once, reused everywhere, changed in one place.
Inflation, margins and specific percentages, kept together instead of scattered across BOMs.
A variable has a name, a value and a rule. It is created once and reused.
On the whole BOM, on a category of part numbers, or on a single element.
Every variable answers four questions: how much, what operation, on which value, and where. Breaking it into these parts makes even a complex rule readable as a sentence: multiply the final cost by 2% if the part number is MAKE or BUY.
The same variable can act at three levels. The interface makes the level explicit, so people always know how far a change will reach before they create it.
A value, an indicator (such as %) and the type of operation, side by side.
The target object and field the variable acts on, such as the final cost.
IF and OR rows narrow the variable down to the right part numbers.

One use of the tool is projecting a cost over time. Starting from today’s cost, an inflation variable gives the expected cost year by year. It is the same logic that feeds the multi-year projections in the BOM.