Hi All,
Earlier post Link
In reference to my earlier question, I have further query related to same (sample data and PBI solution is there).
My issue here here is, now i need two new columns in one i need total of all cat/sub/brand at parent level irrespective to sum of top one, and in second column i need % share of top cat/sub/brand comparing it with the total of its parent.
Solved! Go to Solution.
Hi @DeepDive ,
If I got it correctly, you can try these steps:
1. Create a level table manually like this, use it as a slicer:
2. Create a first measure named [Total] for each level selected by the slicer:
Total =
IF (
NOT ( ISFILTERED ( 'Level'[level] ) ),
"Please select one level",
IF (
HASONEFILTER ( 'Level'[level] ),
SWITCH (
SELECTEDVALUE ( 'Level'[level] ),
"Category", CALCULATE ( SUM ( 'Table'[Sales] ), ALLEXCEPT ( 'Table', 'Table'[Category] ) ),
"Sub Category",
CALCULATE (
SUM ( 'Table'[Sales] ),
ALLEXCEPT ( 'Table', 'Table'[Sub Category] )
),
"Brand", CALCULATE ( SUM ( 'Table'[Sales] ), ALLEXCEPT ( 'Table', 'Table'[Brand] ) ),
SUM ( 'Table'[Sales] )
),
"Please just select one level"
)
)
3. Create another measure named [share %] for each level selected by the slicer:
% share =
IF (
NOT ( ISFILTERED ( 'Level'[level] ) ),
"Please select one level",
IF (
HASONEFILTER ( 'Level'[level] ),
VAR _Cat =
CALCULATE ( SUM ( 'Table'[Sales] ), ALLEXCEPT ( 'Table', 'Table'[Category] ) )
VAR _Sub =
CALCULATE (
SUM ( 'Table'[Sales] ),
ALLEXCEPT ( 'Table', 'Table'[Sub Category] )
)
VAR _Brand =
CALCULATE ( SUM ( 'Table'[Sales] ), ALLEXCEPT ( 'Table', 'Table'[Brand] ) )
RETURN
SWITCH (
SELECTEDVALUE ( 'Level'[level] ),
"Category", _Cat / _Cat,
"Sub Category", _Sub / _Cat,
"Brand", _Brand / _Cat
),
"Please just select one level"
)
)
4. Use a table visual to show the result dynamically by the level slicer:
Attached the sample file in the below, hopes to help you.
Best Regards,
Yingjie Li
If this post helps then please consider Accept it as the solution to help the other members find it more quickly.
Hi @DeepDive ,
If I got it correctly, you can try these steps:
1. Create a level table manually like this, use it as a slicer:
2. Create a first measure named [Total] for each level selected by the slicer:
Total =
IF (
NOT ( ISFILTERED ( 'Level'[level] ) ),
"Please select one level",
IF (
HASONEFILTER ( 'Level'[level] ),
SWITCH (
SELECTEDVALUE ( 'Level'[level] ),
"Category", CALCULATE ( SUM ( 'Table'[Sales] ), ALLEXCEPT ( 'Table', 'Table'[Category] ) ),
"Sub Category",
CALCULATE (
SUM ( 'Table'[Sales] ),
ALLEXCEPT ( 'Table', 'Table'[Sub Category] )
),
"Brand", CALCULATE ( SUM ( 'Table'[Sales] ), ALLEXCEPT ( 'Table', 'Table'[Brand] ) ),
SUM ( 'Table'[Sales] )
),
"Please just select one level"
)
)
3. Create another measure named [share %] for each level selected by the slicer:
% share =
IF (
NOT ( ISFILTERED ( 'Level'[level] ) ),
"Please select one level",
IF (
HASONEFILTER ( 'Level'[level] ),
VAR _Cat =
CALCULATE ( SUM ( 'Table'[Sales] ), ALLEXCEPT ( 'Table', 'Table'[Category] ) )
VAR _Sub =
CALCULATE (
SUM ( 'Table'[Sales] ),
ALLEXCEPT ( 'Table', 'Table'[Sub Category] )
)
VAR _Brand =
CALCULATE ( SUM ( 'Table'[Sales] ), ALLEXCEPT ( 'Table', 'Table'[Brand] ) )
RETURN
SWITCH (
SELECTEDVALUE ( 'Level'[level] ),
"Category", _Cat / _Cat,
"Sub Category", _Sub / _Cat,
"Brand", _Brand / _Cat
),
"Please just select one level"
)
)
4. Use a table visual to show the result dynamically by the level slicer:
Attached the sample file in the below, hopes to help you.
Best Regards,
Yingjie Li
If this post helps then please consider Accept it as the solution to help the other members find it more quickly.
@DeepDive , refer
https://community.powerbi.com/t5/Desktop/Percentage-of-subtotal/td-p/95390
https://www.kasperonbi.com/use-isinscope-to-get-the-right-hierarchy-level-in-dax/
Come together to explore latest innovations in code and application development—and gain insights from experts from around the world.
Put your data visualization and design skills to the test! This exciting challenge is happening now through May 31st!
At the monthly call, connect with other leaders and find out how community makes your experience even better.
User | Count |
---|---|
401 | |
105 | |
68 | |
55 | |
49 |
User | Count |
---|---|
379 | |
118 | |
82 | |
67 | |
54 |