Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more
Hello,
I'm pretty new to Power Query, I have a table I'm pulling into PBI that was query folding back into SQL Server. I've needed to create a measure as a calculated column in PBI for some visualisations I'm being asked to create but this has broken query folding and has significantly increase refresh time. I need to create the below DAX as a Custom Column in PQ.
Any help would be appreicated, below is the DAX I need to recreate.
Thanks
Calculated Column =
VAR _Column = DIVIDE(([VOLUME]-[COST]-[WASTE]),[VOLUME],0)
RETURN
SWITCH(
TRUE(),
_Column < 0, "< 0 %",
_Column >= 0 && _Column < 0.10, "0-10 %",
_Column >= 0.10 && _Column < 0.20, "10-20 %",
_Column >= 0.20 && _Column < 0.30, "20-30 %",
_Column >= 0.30 && _Column < 0.40, "30-40 %",
_Column >= 0.40, "40 %+"
)
Solved! Go to Solution.
Hi @Anonymous ,
You can either create a new column in PQ for the variable, or you can include the variable calculation in each line of the new PQ column.
The first option would look like this:
// varColumn
([VOLUME] - [COST] - [WASTE]) / [VOLUME]
// newColumn
if [varColumn] < 0 then "< 0%"
else if [varColumn] < 0.1 then "0-10%"
...
...
else //your escape value
The second option would look like this:
// newColumn
if ([VOLUME] - [COST] - [WASTE]) / [VOLUME] < 0 then "< 0%"
else if ([VOLUME] - [COST] - [WASTE]) / [VOLUME] < 0.1 then "0-10%"
...
...
else //your escape value
Both options should generate a foldable CASE statement.
Pete
Proud to be a Datanaut!
Hi @Anonymous ,
You can either create a new column in PQ for the variable, or you can include the variable calculation in each line of the new PQ column.
The first option would look like this:
// varColumn
([VOLUME] - [COST] - [WASTE]) / [VOLUME]
// newColumn
if [varColumn] < 0 then "< 0%"
else if [varColumn] < 0.1 then "0-10%"
...
...
else //your escape value
The second option would look like this:
// newColumn
if ([VOLUME] - [COST] - [WASTE]) / [VOLUME] < 0 then "< 0%"
else if ([VOLUME] - [COST] - [WASTE]) / [VOLUME] < 0.1 then "0-10%"
...
...
else //your escape value
Both options should generate a foldable CASE statement.
Pete
Proud to be a Datanaut!
The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!
| User | Count |
|---|---|
| 19 | |
| 9 | |
| 8 | |
| 7 | |
| 6 |