Starting December 3, join live sessions with database experts and the Microsoft product team to learn just how easy it is to get started
Learn moreGet certified in Microsoft Fabric—for free! For a limited time, get a free DP-600 exam voucher to use by the end of 2024. Register now
Power BI Filtering a column vs Filtering a table when is the difference apparent and when not
Can some expert help me to make this clear in context to this example from DAX Definitive guide 2nd edition by Alberto Ferrari Chapter 14 ( Unfortunately I am not able to understand the explanation there even after sequential reading)
To explain my confusion ; I am clear (may be not aware of some nuance ) about dax expanded table which expands towards one side of the table in m-1 or 1-1 relationship { So if you just reply me with expanded table as reasone it would still not help me here to be frank , unless you can please help me with any nuance if exists )
PBIX : Contoso public data model for microsoft
QUESTION :
1.I am not getting why in Case 2 -FilterTabMeasure equal to FilterTab ?
1a.I am not getting why splitting into the individual measure and trying to make the same gui report as in case 1 makes the result vary.
2.I am not getting why in Case 1 -FilterCol not equal to FilterTab ?
2a. Further Why filter tab value is the same for all the rows ; Why context transition is being ignored here for FilterTab but respected for FilterCol ?
Case 1 : Apply this expression directly
--------------------------------------------
EVALUATE
ADDCOLUMNS (
VALUES ( 'Product'[Brand] ),
"FilterCol", CALCULATE (
[Sales Amount],
Sales[Quantity] > 1
),
"FilterTab", CALCULATE (
[Sales Amount],
FILTER (
Sales,
Sales[Quantity] > 1
)
)
)
Side note : [Sales amount is a measure as defined below]
--------------------------------------------------------
Case 2 :
Split the above expression into two masure
Side note : [Sales amount is a measure as defined below]
@Anonymous Please comment if you have some time .Thanks
In Case 2 you get what you get because there is no context transition for the measures as was in the case of ADDCOLUMNS. The filters are already in place when the measures get down to work.
I forgot to mention sales amount measure defination i have updated in qn does your answer still hold good
Your Case 1 can be written as:
EVALUATE
ADDCOLUMNS(
VALUES( 'Product'[Brand] ),
"FilterCol",
CALCULATE(
[Sales Amount],
FILTER(
ALL( Sales[Quantity] ), -- this only filters one column
Sales[Quantity] > 1
)
),
"FilterTab",
CALCULATE(
[Sales Amount],
FILTER(
Sales, -- this filters all the table BEFORE context transition
Sales[Quantity] > 1
)
)
)
Now, do you see the difference?
I forgot to mention sales amount measure defination i have updated in qn does your answer still hold good
Starting December 3, join live sessions with database experts and the Fabric product team to learn just how easy it is to get started.
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early Bird pricing ends December 9th.
User | Count |
---|---|
21 | |
20 | |
19 | |
13 | |
12 |
User | Count |
---|---|
41 | |
27 | |
23 | |
22 | |
22 |