Explore and share Fabric Notebooks to boost Power BI insights in the new community notebooks gallery.
Check it out now!Microsoft is giving away 50,000 FREE Microsoft Certification exam vouchers. Get Fabric certified for FREE! Learn more
Hello everybody,
I'm calculating a weighted average of a minimum price weighted by Sales on an article level.
There are however blanks in the list of minimum prices so I dont want to considers those articles at all in the calculation! As there is already "Keepfilters" used in the calculation, I cant apply another filter to exclude the blanks, any idea what to do?
Solved! Go to Solution.
Hi @lennardheyder,
You can use calculatetable() to adjust the VAR __CATEGORY_VALUES
VAR __CATEGORY_VALUES= CALCULATETABLE(VALUES('MatHier'[Article name]), ALLNOBLANKROW('MatHier'[minimum prices]))
If does not work, please try this code or share your pbix file without sensitive data.
or try this code:
Weighted Pricing Delta =
VAR _s =
SUMMARIZE (
'MatHier',
[Article name],
"avg", AVERAGE ( 'PREISBAND'[Δ Pricing letter[CUR / UOW]]] ),
"sum", SUM ( 'OH01 + OS01'[NES 3rd party (€)] )
)
VAR _1 =
SUMX ( FILTER ( _s, [avg] <> BLANK () ), [avg] * [sum] )
VAR _2 =
SUMX ( FILTER ( _s, [avg] <> BLANK () ), [sum] )
RETURN
DIVIDE ( _1, _2 )
Best Regards
Community Support Team _ chenwu zhu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Hi @lennardheyder,
You can use calculatetable() to adjust the VAR __CATEGORY_VALUES
VAR __CATEGORY_VALUES= CALCULATETABLE(VALUES('MatHier'[Article name]), ALLNOBLANKROW('MatHier'[minimum prices]))
If does not work, please try this code or share your pbix file without sensitive data.
or try this code:
Weighted Pricing Delta =
VAR _s =
SUMMARIZE (
'MatHier',
[Article name],
"avg", AVERAGE ( 'PREISBAND'[Δ Pricing letter[CUR / UOW]]] ),
"sum", SUM ( 'OH01 + OS01'[NES 3rd party (€)] )
)
VAR _1 =
SUMX ( FILTER ( _s, [avg] <> BLANK () ), [avg] * [sum] )
VAR _2 =
SUMX ( FILTER ( _s, [avg] <> BLANK () ), [sum] )
RETURN
DIVIDE ( _1, _2 )
Best Regards
Community Support Team _ chenwu zhu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
@lennardheyder , Try like
Weighted Pricing Delta =
VAR __CATEGORY_VALUES = VALUES('MatHier'[Article name])
RETURN
DIVIDE(
SUMX(
FILTERS(__CATEGORY_VALUES, not(isblank(AVERAGE('PREISBAND'[Δ Pricing letter[CUR / UOW]])))),
CALCULATE(
AVERAGE('PREISBAND'[Δ Pricing letter[CUR / UOW]])
* SUM('OH01 + OS01'[NES 3rd party (€)])
)
),
SUMX(
FILTERS(__CATEGORY_VALUES, not(isblank(AVERAGE('PREISBAND'[Δ Pricing letter[CUR / UOW]])))),
CALCULATE(SUM('OH01 + OS01'[NES 3rd party (€)]))
)
)
Formula does not work unfortunatley....
Seems that "Filters" does not work with the input of a variable