Don't miss your chance to take the Fabric Data Engineer (DP-700) exam on us!
Learn moreNext up in the FabCon + SQLCon recap series: The roadmap for Microsoft SQL and Maximizing Developer experiences in Fabric. All sessions are available on-demand after the live show. Register now
Hi,
I have created a measure to calculate the discount between two values, but when I put it in a table, it shows all the record (it seems to ignore the filters), but it shows blanks in the columns that should contain the two values.
ex.:
I created the measure Discount = 1 - DIVIDE(SUM([Net Price]);SUM([Gross Price]))
Table
With filter: Year = 2018, this is the result (in a table):
Where did I go wrong?
Solved! Go to Solution.
Hi, A minor update to @Anonymous's solution.
Discount = IF(ISBLANK(SUM([Gross Price])), BLANK(), 1 - DIVIDE(SUM([Net Price]),SUM([Gross Price])))
See if that helps.
I think what's most likely happening with your measure is that after filtering, the measure still has a value of "1 - divide(blank, blank)", where the division result is blank, and "1 - blank" is just 1. Hence, every line that should be filtered out is going to have a value of 1.
Depending on the behavior you'd prefer to see and the way your data is structured, there's different ways to go about solving this, but one option would be something like this:
Discount = IF(ISBLANK([Gross Price]), BLANK(), 1 - DIVIDE(SUM([Net Price]),SUM([Gross Price])))
Which would keep your measure calculation essentially the same, but prevent it from appearing in case [Gross Price] is ever blank (such as when it's being filtered out)
I hope that solves your problem!
I tried to put a ISBLANK([gross price]) control, but it gave me an error due to the fact that a measure can't refer to a single value or something like that. I did read something about converting it from measure to column, but it would lose the function I was looking for.
I want to add a detail: in the report I'm making, I already filtered out some fields (customer and type of item sold), and the only thing that seems to not filter the measure is the "year", which is filtered from a Date table connected to the main table.
Hi, A minor update to @Anonymous's solution.
Discount = IF(ISBLANK(SUM([Gross Price])), BLANK(), 1 - DIVIDE(SUM([Net Price]),SUM([Gross Price])))
See if that helps.
If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.
A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.
Share feedback directly with Fabric product managers, participate in targeted research studies and influence the Fabric roadmap.
| User | Count |
|---|---|
| 50 | |
| 44 | |
| 42 | |
| 19 | |
| 19 |
| User | Count |
|---|---|
| 70 | |
| 68 | |
| 33 | |
| 32 | |
| 32 |