Forum Discussion
Row level Subtotal Error
- Anonymous1 year ago
Hi Karthick1006 ,
You can achieve this by first creating a calculated column to get the latest record for each country. Then, build a measure that calculates the valid percentage using only those latest records. This way, your row-level and region-level totals will reflect only the most recent data per country. Here's a rough idea of how the logic works:
Please create a calculated column as belolw:
IsLatestRecord =
VAR CurrentDate = 'Table'[Date]
VAR Country = 'Table'[Country]
VAR MaxDate =
CALCULATE (
MAX ( 'Table'[Date] ),
ALLEXCEPT ( 'Table', 'Table'[Country] )
)
RETURN IF ( CurrentDate = MaxDate, 1, 0 )
Then create a measure as below:ValidCustomer% (Latest Only) =
VAR LatestData =
FILTER (
'Table',
'Table'[IsLatestRecord] = 1
)
VAR TotalValid = SUMX ( LatestData, 'Table'[records_valid] )
VAR TotalCount = SUMX ( LatestData, 'Table'[records_count] )
RETURN DIVIDE ( TotalValid, TotalCount ) * 100If this post helps, then please consider Accepting as solution to help the other members find it more quickly, don't forget to give a "Kudos" – I’d truly appreciate it!
Regards,
B Manikanteswara Reddy
Hi Karthick1006 ,
Thank you for reaching out to Microsoft Fabric Community.
bhanu_gautam Thank you for your quick response.
Please try using the DAX formula below:
If this doesn't work as expected, could you please share the expected result or a sample output you're aiming for? That would help a lot in providing a more accurate solution.
If this post helps, then please consider Accepting as solution to help the other members find it more quickly, don't forget to give a "Kudos" – I’d truly appreciate it!
Regards,
B Manikanteswara Reddy
- Karthick10061 year agoFrequent Visitor
Hi Anonymous ,
Thanks for replying.
The above measure didn't resolve the issue.
I requirement is that for each country the latest record should be considered to find the average customer value. For Region level it should consider all the countries under the region.
It should consider only the highlighted rows for row level total and row level subtotal, as they arerecent records.
The calculation has to be as follow
Row Level Calculation:
Ethiopia: (226/3534)*100 = 6.39%
Namibia: (0/13873)*100 = 0.0%
Row Level subtotal should consider Ethiopia and Namibia
AME: ((226+0)/(3534+13873))*100 = 1.29%
This is my desired output.Kindly write back if you need any further information.
Regards,
Karthick M
- Anonymous1 year agoNot applicable
Hi Karthick1006 ,
You can achieve this by first creating a calculated column to get the latest record for each country. Then, build a measure that calculates the valid percentage using only those latest records. This way, your row-level and region-level totals will reflect only the most recent data per country. Here's a rough idea of how the logic works:
Please create a calculated column as belolw:
IsLatestRecord =
VAR CurrentDate = 'Table'[Date]
VAR Country = 'Table'[Country]
VAR MaxDate =
CALCULATE (
MAX ( 'Table'[Date] ),
ALLEXCEPT ( 'Table', 'Table'[Country] )
)
RETURN IF ( CurrentDate = MaxDate, 1, 0 )
Then create a measure as below:ValidCustomer% (Latest Only) =
VAR LatestData =
FILTER (
'Table',
'Table'[IsLatestRecord] = 1
)
VAR TotalValid = SUMX ( LatestData, 'Table'[records_valid] )
VAR TotalCount = SUMX ( LatestData, 'Table'[records_count] )
RETURN DIVIDE ( TotalValid, TotalCount ) * 100If this post helps, then please consider Accepting as solution to help the other members find it more quickly, don't forget to give a "Kudos" – I’d truly appreciate it!
Regards,
B Manikanteswara Reddy- Karthick10061 year agoFrequent Visitor
Thank you very much Anonymous, the issue is resolved now.
I appreciate the effort you took to help me.Cheers,
Karthick M