Forum Discussion
Filter within TOPN
Hi,
Could you please check if the below measure works?
new measure = CALCULATE ( [Total Sales], KEEPFILTERS ( TOPN ( 10, SUMMARIZE ( FILTER ( SUMMARIZE ( ALL ( DimCustomer ), DimCustomer[FirstName], DimCustomer[Is parent] ), DimCustomer[Is parent] = "Parent" ), DimCustomer[FirstName] ), [Total Sales] ) ) )Hi,
After I see your pbix file, I am confused and I am not sure what you want to visualize.
Do you want to rank total sales by First name? For example, I see that there are so many "Aaron"s and some of them are parent and some of them are Not parent.
I think you can put a correct column in the visualization to check top sales.
I did not check whether the measures still work, but I inside the TOPN function in each measure, including TOP sales measure, please select the correct column, or you can just select the whole table if there are other columns involved such as sorting purpose, for instance.
Thanks.
Thanks.
10 Replies
- Jihwan_KimSuper User
Hi,
Could you please check if the below measure works?
new measure = CALCULATE ( [Total Sales], KEEPFILTERS ( TOPN ( 10, SUMMARIZE ( FILTER ( SUMMARIZE ( ALL ( DimCustomer ), DimCustomer[FirstName], DimCustomer[Is parent] ), DimCustomer[Is parent] = "Parent" ), DimCustomer[FirstName] ), [Total Sales] ) ) )- Alex_HasanHelper II
Thank you so much
- Alex_HasanHelper II
Hi Jihwan_Kim , I've found a problem in the measure. It's actually not showing the top 10 parents or top 10 not parents, rather top 10 customers. I've altered the code to see the effect but both are the same. On the other hand, Summerize function has a bug and Alberto Ferrari of SQLBI told to avoid this function.
- Jihwan_KimSuper User
Hi,
Thank you for your message, and please share your sample pbix file's link together with how the expected outcome looks like, and then I can try to look into it to come up with a more accurate solution.
- tamerj1Community Champion
For some reason I've never succeeded to answer any of your questions before 😅
Maybe this time. Please try
top 10 parent customers' name = CALCULATE ( [Total Sales], KEEPFILTERS ( TOPN ( 10, FILTER ( ALL ( DimCustomer[FirstName] ), CALCULATE ( VALUES ( DimCustomer[Is parent] ) ) = "Parent" ), [Total Sales] ) ) )- Alex_HasanHelper II
tamerj1 ha ha ha..... Most probably I couldn't make you understand my problem. But your code is not working this time. Maybe you forgot to add something in the measure. Here Jihwan Kim provided the solution and it worked.