Forum Discussion
Why does this measure work?
- 2 years ago
Hi,
I see the issue here, in AnalysisCodes Table - you have two rows but only one row in Risk Score for each for RiskScoreID. When you calculate the Risk Score Measure in Risk Score, it's taking consideration of only one row. However, you are already getting correct data from
Total Risk Score as the relationship between the two are met. Hence, the measure you are creating for the Risk Score Measure based on the Risk Score table will never match with the other measure if you are not including relationship between the AnalysisCodes table.
Hi,
The Risk Score SUM measure you’ve created uses the SUM function within a CALCULATE statement. This measure sums up the ‘Risk Score’[Risk Score] column, but it doesn’t iterate over each row of your ‘Analysis Codes’ table. As a result, it might not consider the row context properly when calculating totals, especially if there are filters or slicers affecting the visual.
On the other hand, the Total Risk Score measure uses SUMX with a RELATED function, which iterates over each row in the ‘Analysis Codes’ table and sums the related ‘Risk Score’[Risk Score] for each row. This row-by-row operation ensures that the context is considered for each individual calculation, leading to a correct total.
To fix the issue with the Risk Score SUM measure, you might need to adjust it to ensure it respects the row context. One way to do this is by using SUMX over a virtual table that includes all the necessary rows and relationships. Here’s an example of how you might modify your measure:
Risk Score SUM Corrected =
SUMX(
RELATEDTABLE('Risk Score'),
'Risk Score'[Risk Score]
)
Let me know the result.
Hi Kaviraj,
Thanks for your response, unfortunately the right number still wasn't shown when the new dax was used:
I think I see the problem:
I have replicated the slicers in the data view. A RiskScore_ID of 17 = 5 and a RiskScore_ID of 317 = 15.
If I have two rows of each then the sum should total 40. However, it's summing the distinct values instead. (One row of 5 and one row of 15)
- Kaviraj112 years agoSolution Sage
Hi,
I see the issue here, in AnalysisCodes Table - you have two rows but only one row in Risk Score for each for RiskScoreID. When you calculate the Risk Score Measure in Risk Score, it's taking consideration of only one row. However, you are already getting correct data from
Total Risk Score as the relationship between the two are met. Hence, the measure you are creating for the Risk Score Measure based on the Risk Score table will never match with the other measure if you are not including relationship between the AnalysisCodes table.- Nuemio2 years agoFrequent Visitor
Ah I see, that makes sense. Thanks a lot