Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Get Fabric Certified for FREE during Fabric Data Days. Don't miss your chance! Request now

Reply
sridharbabu
Helper I
Helper I

Show top 50 records in a table, the values are from measure

I have a table with ordern , location and a measure(Sales). The table shows only 2 months of data dynamically every month.

I want to show top 50 sales in the table. The sales is a measure.

1 ACCEPTED SOLUTION
Anonymous
Not applicable

HI @sridharbabu,

Perhaps you can try to use the following measure formulas and use this on the chart 'visual level filter' to filter records based on flag:

flag =
VAR currOrdern =
    SELECTEDVALUE ( Table1[ordern] )
VAR currlocation =
    SELECTEDVALUE ( Table1[location] )
VAR summary =
    SUMMARIZE ( ALLSELECTED ( Table1 ), [ordern], [location], "_Sales", [Sales] )
VAR filtered =
    TOPN ( 50, summary, [_Sales], DESC )
RETURN
    IF (
        currOrdern
            IN SELECTCOLUMNS ( filtered, "ordern", [ordern] )
                && currlocation IN SELECTCOLUMNS ( filtered, "location", [location] ),
        "Y",
        "N"
    )

Regards,

Xiaoxin Sheng

View solution in original post

6 REPLIES 6
Anonymous
Not applicable

HI @sridharbabu,

Perhaps you can try to use the following measure formulas and use this on the chart 'visual level filter' to filter records based on flag:

flag =
VAR currOrdern =
    SELECTEDVALUE ( Table1[ordern] )
VAR currlocation =
    SELECTEDVALUE ( Table1[location] )
VAR summary =
    SUMMARIZE ( ALLSELECTED ( Table1 ), [ordern], [location], "_Sales", [Sales] )
VAR filtered =
    TOPN ( 50, summary, [_Sales], DESC )
RETURN
    IF (
        currOrdern
            IN SELECTCOLUMNS ( filtered, "ordern", [ordern] )
                && currlocation IN SELECTCOLUMNS ( filtered, "location", [location] ),
        "Y",
        "N"
    )

Regards,

Xiaoxin Sheng

the measure is working fine. now to add rank to the table based on [sales]. can you help me on this.

This works fine for me, 

flag =
VAR currOrdern =
    SELECTEDVALUE ( Table1[ordern] )
VAR currlocation =
    SELECTEDVALUE ( Table1[location] )
VAR summary =
    SUMMARIZE ( ALLSELECTED ( Table1 ), [ordern], [location], "_Sales", [Sales] )
VAR filtered =
    TOPN ( 50, summary, [_Sales], DESC )
RETURN
    IF (
        currOrdern
            IN SELECTCOLUMNS ( filtered, "ordern", [ordern] )
                && currlocation IN SELECTCOLUMNS ( filtered, "location", [location] ),
        "Y",
        "N"
    )

 an added requirement is if duplicate record exist has to take latest record. and to show serial numbers from 1 to 50. could you please help me in excluding duplicate records.  

az38
Community Champion
Community Champion

Hi @sridharbabu 

you can press on your table visual, open filters pane and configure filter like this

az38_0-1706531123627.png

 


do not hesitate to give a kudo to useful posts and mark solutions as solution
LinkedIn

i applied top 2 fetch two months data, where i am having month no.  for the sales measure not gettig TOP in filters pane.

sridharbabu
Helper I
Helper I

and also how to load two months of data in totable dynamically. when the data is added to source table.

Helpful resources

Announcements
November Power BI Update Carousel

Power BI Monthly Update - November 2025

Check out the November 2025 Power BI update to learn about new features.

Fabric Data Days Carousel

Fabric Data Days

Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.

Top Solution Authors