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

Preparing for a certification exam? Ask exam experts all your questions on May 15th. Register now.

Reply
GoAnna
Frequent Visitor

Show values and sums from different levels in a table

have the following data (see link to file below)

 

GoAnna_0-1731313837653.png


The rows in my desired report come mostly from level 5, however a number of rows either come from other levels or are sums of rows.

GoAnna_1-1731313937233.png

I have tried to use ISINSCOPE but have not been able to get my head around it.

Then there is also the issue of the rows in different formats…but maybe a later problem...

https://www.swisstransfer.com/d/eeb11c9d-29d0-4562-82b8-7a2ab653e8b3

Very grateful for help.

1 ACCEPTED SOLUTION
FarhanJeelani
Super User
Super User

From the data and images provided, it looks like you're dealing with a hierarchical table structure where each level has specific codes, and amounts can be totals (sum rows) or individual amounts. Additionally, there are various formatting styles applied to the rows.

Here’s how you could approach this with `ISINSCOPE` and possibly some additional DAX functions to handle both the hierarchy and formatting issues:

 

1. Using `ISINSCOPE` to Identify Hierarchical Levels
The `ISINSCOPE` function can help you identify which level of the hierarchy is currently being evaluated in your matrix or table. For example:

- Use `ISINSCOPE(Level5)` to check if the row is specifically at Level 5.
- Use `ISINSCOPE(Level4)` if you need to capture rows that are at Level 4 and above.

This can help you conditionally calculate sums or display values at specific hierarchy levels.

Example DAX Expression:
DAX

Amount_Display =
IF(
ISINSCOPE(Level5),
[Amount],
IF(
ISINSCOPE(Level4),
CALCULATE(SUM(Table[Amount]), ALL(Level5)),
// Add similar conditions for other levels if needed
BLANK()
)
)



This would display the amount for Level 5 rows directly, and for higher levels, it would display sums based on your hierarchy.

 

2. Handling Sum Rows Separately
For rows that represent totals, you could use a custom calculation or a flag in your data model that identifies them as summary rows. This would help ensure they are displayed correctly in the report.

You could create a calculated column or measure that identifies these rows based on specific conditions or values.

 

Example for Sum Row Identification:
If you have sum rows at specific levels, you could add a check to see if `Level` is empty or if the amount is derived from another column indicating a total.

 

3. Formatting Rows Differently Based on Levels
Power BI currently doesn’t directly support row-based formatting (like Excel), but you can work around this limitation using conditional formatting:

- Use `Switch` statements or nested `IF` conditions to apply different formatting or display conditions based on the level.
- For example, use color or background formatting to visually distinguish sum rows from individual entries.

 

 4. Summing and Displaying Only Unique Levels

To address the hierarchical nature of your data, you can create measures that sum up values only once per unique Level 5 item and don’t duplicate across higher levels.

 

Next Steps
- Implement these DAX expressions to check if they correctly aggregate and display data based on the hierarchy levels.
- Address the formatting challenge by setting up conditional formatting in Power BI based on your DAX logic.

If you still face challenges with the `ISINSCOPE` function, feel free to provide more context on the specific behavior you’re aiming for at each level.

View solution in original post

2 REPLIES 2
GoAnna
Frequent Visitor

Thank you for the thorough and well structured answer.

FarhanJeelani
Super User
Super User

From the data and images provided, it looks like you're dealing with a hierarchical table structure where each level has specific codes, and amounts can be totals (sum rows) or individual amounts. Additionally, there are various formatting styles applied to the rows.

Here’s how you could approach this with `ISINSCOPE` and possibly some additional DAX functions to handle both the hierarchy and formatting issues:

 

1. Using `ISINSCOPE` to Identify Hierarchical Levels
The `ISINSCOPE` function can help you identify which level of the hierarchy is currently being evaluated in your matrix or table. For example:

- Use `ISINSCOPE(Level5)` to check if the row is specifically at Level 5.
- Use `ISINSCOPE(Level4)` if you need to capture rows that are at Level 4 and above.

This can help you conditionally calculate sums or display values at specific hierarchy levels.

Example DAX Expression:
DAX

Amount_Display =
IF(
ISINSCOPE(Level5),
[Amount],
IF(
ISINSCOPE(Level4),
CALCULATE(SUM(Table[Amount]), ALL(Level5)),
// Add similar conditions for other levels if needed
BLANK()
)
)



This would display the amount for Level 5 rows directly, and for higher levels, it would display sums based on your hierarchy.

 

2. Handling Sum Rows Separately
For rows that represent totals, you could use a custom calculation or a flag in your data model that identifies them as summary rows. This would help ensure they are displayed correctly in the report.

You could create a calculated column or measure that identifies these rows based on specific conditions or values.

 

Example for Sum Row Identification:
If you have sum rows at specific levels, you could add a check to see if `Level` is empty or if the amount is derived from another column indicating a total.

 

3. Formatting Rows Differently Based on Levels
Power BI currently doesn’t directly support row-based formatting (like Excel), but you can work around this limitation using conditional formatting:

- Use `Switch` statements or nested `IF` conditions to apply different formatting or display conditions based on the level.
- For example, use color or background formatting to visually distinguish sum rows from individual entries.

 

 4. Summing and Displaying Only Unique Levels

To address the hierarchical nature of your data, you can create measures that sum up values only once per unique Level 5 item and don’t duplicate across higher levels.

 

Next Steps
- Implement these DAX expressions to check if they correctly aggregate and display data based on the hierarchy levels.
- Address the formatting challenge by setting up conditional formatting in Power BI based on your DAX logic.

If you still face challenges with the `ISINSCOPE` function, feel free to provide more context on the specific behavior you’re aiming for at each level.

Helpful resources

Announcements
PBIApril_Carousel

Power BI Monthly Update - April 2025

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

Notebook Gallery Carousel1

NEW! Community Notebooks Gallery

Explore and share Fabric Notebooks to boost Power BI insights in the new community notebooks gallery.

April2025 Carousel

Fabric Community Update - April 2025

Find out what's new and trending in the Fabric community.