Forum Discussion
Help with Filtering & Slicer
Hello all,
I have slight problems with filtering the report in a wanted way. I have created a Power BI table to visualize my problem;
What I am looking for, is to use a slicer based on the floor level (from Topic column). So basically, I would like the slicer to contain Basement, Ground Floor, 2nd Floor & 3rd Floor. And with it, to show the primary topic (floor level) and sub-topics in a report graphs (f.ex. choosing Ground floor from slicer -> Ground Floor, Kitchen, Living Room, Bathroom & Washroom appears in a graph).
The filtering would work with Level ID column in a wanted way, but that is not the column I want to use as a slicer.
My real dataset contains over 200 rows with 70 primary topics and 133 sub-topics and it grows nearly everyday, so is there a simple way to solve the problem? Wouldn't want to modify my dataset everytime new data appears through refresh.
Thanks,
Jere
8 Replies
- Greg_DecklerCommunity Champion
jereaallikko - I am not entirely clear on the requirement here but it would seem that in one way or another you would need to define what is above and below. You could then implement a Complex Selector: https://community.powerbi.com/t5/Quick-Measures-Gallery/The-Complex-Selector/m-p/1116633#M534
- amitchandakSuper User
jereaallikko , nor very clear. but refer if these two can help
https://www.youtube.com/watch?v=cyOquvfhzNM
Can you please explain with an example.
Appreciate your Kudos. - jereaallikkoHelper III
Hi amitchandak & Greg_Deckler, thanks for your replies.
The issue was not explained very clearly, my bad. To rephrase it, I would simply need a new column, indicating the floor level. It could be done manually with conditional column based on Level ID column, where
Level ID column -> equals -> BM00 = Output BasementLevel ID column -> equals -> GF101 = Output Ground Floor
Level ID column -> equals -> F2.0 = Output 2nd Floor
Level ID column -> equals -> F3.0 = Output 3rd Floor
But my real dataset contains over 200 rows, and more appears almost everyday. The amount of rooms belonging to each floor level is irregular. So is there a simple code or DAX expression where I could create a new column based on the Level ID?
This is what Im looking for. Hopefully now I explained it a bit better 😄 Feel free to ask more explination if needed.
-Jere
- AnonymousNot applicable
create a calculated column:
FloorDetails=SWITCH([Level ID], "BM00" ,"Basement", "GF101" ,"Ground Floor", "F2.0" ,"2nd Floor", "F3.0" ,"3rd Floor","unidentified") - Greg_DecklerCommunity Champion
jereaallikko - If I understand you correctly, you could do this:
Column = SWITCH('Table'[Level ID], "BM00","Basement", "GF101","Ground Floor", "F2.0","2nd Floor", "F3.0","3rd Floor", "Unknown" )That's DAX. In Power Query:
if [Level ID] = "BM00" then "Basement" else if [Level ID] = "GF101" then "Ground Floor" else if [Level ID] = "F2.0" then "2nd Floor" else if [Level ID] = "F3.0" then "3rd Floor" else "Unknown"- jereaallikkoHelper III
Hi Greg_Deckler Anonymous & mussaenda
thanks for the replies.
Thanks for the help, that's what I'm looking for. But the real dataset contains more than 200 rows. I could do it like that, but the problem is that there is new data coming in continuously with different numbers and "Level IDs", so each time it happens, I should manually make adjustments to the column code. Is there any other/easier way to do it, so that I wouldn't have to make adjust afterwards?