Power BI is turning 10! Tune in for a special live episode on July 24 with behind-the-scenes stories, product evolution highlights, and a sneak peek at what’s in store for the future.
Save the dateEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.
Hi
I am using SSAS Tabular SQLserver 2017.
I want to create a measure on a table defined as
Report
ID,Product1,Product2,DateReport ( And more fields)
I want a mesure that count Product in Product2 and Product1 when they are filered in Product1 ( Other Filter should be keep of course)
My measure:
NbProduct:=
var Liste= CONCATENATEX(VALUES(report[PRODUCT1]);report[PRODUCT1];",")
var NbProduct1= IF(ISFILTERED(report[PRODUCT_DETAILED_1__C]);
CALCULATE(count(report[Id]);ALLSELECTED(report[PRODUCT_DETAILED_1]));BLANK())
var NbProduct2=CALCULATE(count(report[Id]);ALL(report[PRODUCT1]);FILTER(VALUES(report[PRODUCT2]);report[PRODUCT2] in {Liste}))
Return CRNbProduct2+NbProduct1
The problem, I got that NbProduct2 never gave me the correct number.
I have done some testing:
NbProduct2=CALCULATE(count(report[Id]);ALL(report[PRODUCT1]))
If the one or more product are selected, I got the correct number (Number of Rows in the table)
NbProduct2=CALCULATE(count(report[Id]);ALL(report[PRODUCT1]);FILTER(VALUES(report[PRODUCT2]);report[PRODUCT2] in {"Coffe"})
If the one or more product are selected, I got blank;
If All product are selected in Product1, I got the number of Coffe in Product2.
I do not understand why. The DAX function removefilter is not available for me.
May be it's trivial but I do not see.
Your help is welcome
Regards
Solved! Go to Solution.
Hi
I found my mistake
var NbProduct1= IF(ISFILTERED(report[PRODUCT_DETAILED_1__C]);
CALCULATE(count(report[Id]);ALLSELECTED(report[PRODUCT_DETAILED_1]));BLANK())
var NbProduct2=CALCULATE(count(report[Id]);ALL(report[PRODUCT1]);FILTER(ALL(report[PRODUCT2]);report[PRODUCT2] IN VALUES(report[PRODUCT1]))
Return CRNbProduct2+NbProduct1
Regards
Hi
Sorry if my request was not clear.
We can produce the problem with only one table.
ID,Product1,Product2,DateReport ( And more fields)
1 ,Coffe ,Tea ,20200401
2 ,Milk ,Coffe ,20200420
We filter on product 1 for Coffe. The measure should give 2 ( 1 coffe for ID, Product 1 and 1 Coffe for Id 2 Product2)
If we filter on product for Tea we should have 1 ( ID=1 Product 2= Tea)
I hope it's more clear
Regards
Hi
I found my mistake
var NbProduct1= IF(ISFILTERED(report[PRODUCT_DETAILED_1__C]);
CALCULATE(count(report[Id]);ALLSELECTED(report[PRODUCT_DETAILED_1]));BLANK())
var NbProduct2=CALCULATE(count(report[Id]);ALL(report[PRODUCT1]);FILTER(ALL(report[PRODUCT2]);report[PRODUCT2] IN VALUES(report[PRODUCT1]))
Return CRNbProduct2+NbProduct1
Regards
Check out the July 2025 Power BI update to learn about new features.
This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.
User | Count |
---|---|
19 | |
7 | |
6 | |
5 | |
5 |
User | Count |
---|---|
25 | |
10 | |
10 | |
9 | |
6 |