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 everyone!
Before to write about this problem I have searched everything on this topic and applied every solution I have found. But it didn't help. The problem is following:
FactorVol=
sumx(
Values('calendar'[date],
if(
hasonefilter('prod'[product]),
( [Qnt_Act] - [Qnt_bp] ) * [price_bp],
Sumx(
values('prod'[product]),
( [Qnt_Act] - [Qnt_bp] ) * [price_bp]
)))
the problem is in calculation of [price_bp]. Here it is:
calculate(
sumx(filter('rev_bp', 'rev_bp'[item] = "a"), 'rev_bp'[revenue])
/
sumx(filter('rev_bp', 'rev_bp'[item] = "a"), 'rev_bp'[qnt]),
allselected()
)
When I remove allselected() total is fine, but it's essential to have it in formula.
You can see the matrix with wrong total in column FactorVol (54,76 is incorrect number)
so I am asking for help
Thanks a lot,
In spite of getting the right total the problem stays the same because total itself hasn't changed. Solution changed values in the rows:
Instead it seems to me we have to change calculation of Price_BP so that we get following results:
in another words we need to stick price of item "a" for each other items in particular period
so let's explore further
Hi @AlexBill ,
The problem may be that SUMX's iterator sets ALLSELECTED's shadow filter to VALUES (). Try to save [price_bp] to a variable before iteration, for example:
FactorVol=
VAR price = [price_bp]
RETURN
sumx(
Values('calendar'[date],
if(
hasonefilter('prod'[product]),
( [Qnt_Act] - [Qnt_bp] ) * price,
sumx(
values('prod'[product]),
( [Qnt_Act] - [Qnt_bp] ) * price
)))
Best regards,
Mengmeng Li
User | Count |
---|---|
25 | |
12 | |
8 | |
7 | |
7 |
User | Count |
---|---|
25 | |
12 | |
11 | |
10 | |
6 |