Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.
Hi All,
I would like to create a measure which shows top3 users by name based on their summarized activity values from 'User table' and 'User Activity table'. The filter connection between the tables is 'User table' 1 - many 'User activity table'
The measure result should be a calcualted tabe with two columns: User table [Name], and sum of [Quantity] from User Activity table.
I tried to do it with CALCULATEDTABLE, TOPN and ADDCOLUMN functions, but I can not figure out the correct measure definition. Could you help me to solve this? Thank you very much!
Solved! Go to Solution.
@EnderWiggin Try below. PBIX is attached below signature.
Username Sum Quantity Top 3 =
VAR __BaseTable =
SUMMARIZE(
'User Activity Table',
[UserId],
"Sum Quantity", SUM('User Activity Table'[Quantity])
)
VAR __Table =
ADDCOLUMNS(
__BaseTable,
"Username", MAXX(FILTER('User Table', [Id] = [UserId]),[Name]),
"Rank", RANKX(__BaseTable, [Sum Quantity],,DESC)
)
VAR __Result =
SELECTCOLUMNS(
FILTER(__Table, [Rank] <= 3),
"Username", [Username],
"Sum Quantity", [Sum Quantity]
)
RETURN
__Result
@Greg_Deckler thank you very much for your detailed and clear solution, this is what I wanted.
@EnderWiggin Try below. PBIX is attached below signature.
Username Sum Quantity Top 3 =
VAR __BaseTable =
SUMMARIZE(
'User Activity Table',
[UserId],
"Sum Quantity", SUM('User Activity Table'[Quantity])
)
VAR __Table =
ADDCOLUMNS(
__BaseTable,
"Username", MAXX(FILTER('User Table', [Id] = [UserId]),[Name]),
"Rank", RANKX(__BaseTable, [Sum Quantity],,DESC)
)
VAR __Result =
SELECTCOLUMNS(
FILTER(__Table, [Rank] <= 3),
"Username", [Username],
"Sum Quantity", [Sum Quantity]
)
RETURN
__Result
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
101 | |
99 | |
76 | |
67 | |
60 |
User | Count |
---|---|
142 | |
106 | |
103 | |
85 | |
70 |