Join us for an expert-led overview of the tools and concepts you'll need to pass exam PL-300. The first session starts on June 11th. See you there!
Get registeredPower BI is turning 10! Let’s celebrate together with dataviz contests, interactive sessions, and giveaways. Register now.
Hello everybody,
I'm trying to do something very simple, but I can't make it work: from a Sales table, I need to compare the revenue for every product category related to another one.
I've created two colums:
Total Sales= SUM(PBI_Sales[Revenue))
H Revenue= CALCULATE([Total Sales]; PBI_Products[Category]="H")
I'm getting this table:
However, if I dont use Product Category in the table, it works and filters by sales of that product:
Is there something I'm missing? I've checked my table relantionships as well, and there's 1-N from Products to Sales, nothing weird.
Any help will be appreciated!
Kind regars
@AndreaLorenzo From what table is coming the column "Prod Cat" on your table. Is it from the Product table?
@AndreaLorenzo You are running into yet another reason I don't use CALCULATE. Basically, if you use CALCULATE with a straight filter clause (no FILTER function) then if the column you specify is already in the filter context, it replaces the filter context for that column. Otherwise, it adds to the filter context.
CALCULATE function (DAX) - DAX | Microsoft Docs
It's hard to tell because I don't know your source data but it is probably something along those lines. As a general rule, if a function needs 50 blog articles to explain how it works, I tend to avoid it.
Thanks for the feedback, @Greg_Deckler . Calculate is a bit difficult to understand, yes.
I finally got it working, maybe is not the most elegant solution, but it will do...
H_Sales= var _tbl = ALLSELECTED(PBI_Sales)
var _catFiler= "H"
RETURN SUMX(FILTER(_tbl; PBI_Sales[CategoryID]=_catFilter); [Revenue])
@AndreaLorenzo That's pretty much exactly how I would have done it.
Sorry, I forgot to say that my problem is that I don't know why the "H revenue" value is not showing for every row, only for the matching criteria product...
User | Count |
---|---|
16 | |
15 | |
14 | |
12 | |
11 |
User | Count |
---|---|
19 | |
15 | |
14 | |
11 | |
9 |