Forum Discussion

bignadad's avatar
bignadad
Icon for Helper I rankHelper I
2 years ago
Solved

Two different filters based on Row value

I have these two table visuals that show the correct data and come from the same table

I would like to have User PICK show up with the other in the same table.

The problem is the top table has different filters applied.

 

Here are the filters for the top table

 

And here are the filters for the bottom table

 

How can I combine bothe these tables with different filters?

  • Anonymous's avatar
    Anonymous
    2 years ago

    Hi bignadad 

     

    You can try to create a MEASURE to categorize your [USER] column using the IF function or the Switch function.

    Then use the Filter function to filter each.

     

    Links of other DAX functions you may use:

    DAX overview - DAX | Microsoft Learn

     

    For example, I create a set of sample:

    Then create a measure:

    Measure = IF(
                SELECTEDVALUE('Table'[user])="C",
                MAX('Table'[Column1]),
    //when [user] = C, the matrix show [column1]
                MAX('Table'[Column2])
    //If [user] not equal to C, the matrix show [column2]
                )

    The result is as follow:

     

    You can also try the field parameter.

    Fields parameter is a feature that allows users to choose which column to use to slice values in a Power BI visual.

    For example, by creating a fields parameter you can very easily build a report where you can slice by Brand and Category, as in the following figure.

     

    Links of how to use field parameter:

    Let report readers use field parameters to change visuals (preview) - Power BI | Microsoft Learn [4125-0344-ac6-31a1]

    Fields parameters in Power BI - SQLBI

     

    Best Regards,

    Zhengdong Xu

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

6 Replies

  • 123abc's avatar
    123abc
    Icon for Community Champion rankCommunity Champion

    To combine two tables with different filters in a Power BI report, you can use the "Edit Interactions" feature and create a relationship between the tables. Follow these steps:

    1. Edit Interactions:

      • Select the visual (table) that you want to interact with the other visual.
      • Go to the "Format" pane (on the right side).
      • Click on "Edit interactions" (paint roller icon).
    2. Define Relationships:

      • Select the visual you want to interact with.
      • Go to the "Model" view.
      • Ensure that you have a common field between the two tables (e.g., a unique identifier) on which you can create a relationship.
    3. Create Relationship:

      • Drag the common field from one table and drop it onto the corresponding field in the other table.
    4. Filter Direction:

      • After creating the relationship, you can set the filter direction. In your case, it seems like you want the "User PICK" table to show data based on the filters applied to the top table.
      • To set the filter direction, click on the relationship line between the tables and choose the appropriate filter direction.
    5. Review:

      • Go back to the report view and verify that the tables now interact with each other based on the defined relationship.

    By setting up relationships and using the "Edit Interactions" feature, you can control how visuals in Power BI interact with each other. This allows you to have different filters on different visuals while still ensuring that they work together when needed.

     
     

    If this post helps, then please consider Accepting it as the solution to help the other members find it more quickly.

     

    In case there is still a problem, please feel free and explain your issue in detail, It will be my pleasure to assist you in any way I can.

    • bignadad's avatar
      bignadad
      Icon for Helper I rankHelper I

      I am not needing to filter data between two different tables.

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi bignadad 

     

    You can try to create a MEASURE to categorize your [USER] column using the IF function or the Switch function.

    Then use the Filter function to filter each.

     

    Links of other DAX functions you may use:

    DAX overview - DAX | Microsoft Learn

     

    For example, I create a set of sample:

    Then create a measure:

    Measure = IF(
                SELECTEDVALUE('Table'[user])="C",
                MAX('Table'[Column1]),
    //when [user] = C, the matrix show [column1]
                MAX('Table'[Column2])
    //If [user] not equal to C, the matrix show [column2]
                )

    The result is as follow:

     

    You can also try the field parameter.

    Fields parameter is a feature that allows users to choose which column to use to slice values in a Power BI visual.

    For example, by creating a fields parameter you can very easily build a report where you can slice by Brand and Category, as in the following figure.

     

    Links of how to use field parameter:

    Let report readers use field parameters to change visuals (preview) - Power BI | Microsoft Learn [4125-0344-ac6-31a1]

    Fields parameters in Power BI - SQLBI

     

    Best Regards,

    Zhengdong Xu

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

    • bignadad's avatar
      bignadad
      Icon for Helper I rankHelper I

      I am trying to implement the measure with if then you suggested.

       

      I tried this buts its not working

      Measure = IF(
                  SELECTEDVALUE(warehouseEntry[user])="PICK",
                  FILTER(warehouseEntry,warehouseEntry[entryType] = "Negative Adjmt."),
                  FILTER(warehouseEntry,warehouseEntry[entryType] = "SHIP")
                  )
       
      I didn't include it above but there are multiple conditions that need to be met.
      If user = PICK then entryType = "Negative Adjmt." and Zone Code = "SHIP"
      else
      Bin Code = SHIP|Consumption and entryType = Movement.
       
      How can that be implemented in your suggestion?
  • sjoerdvn's avatar
    sjoerdvn
    Icon for Solution Sage rankSolution Sage

    You haven't supplied much information on your model, so it's impossible to guess the correct table names or the measure that produces the current numbers, but I suggest to remove the current filters on the visual and create a measure like this:

     

     

    combined_measure = 
    CALCULATE([base_measure], dim1[bincode] IN {"ASSEMBLY CONS","CONSUMPTION", "SHIP"}, dim2[entryType]="Movement")
    + CALCULATE([base_measure], dim3[User]="PICK", dim2[entryType]="Negative Adjmt", dim4[zoneCode]="SHIP") 

     

     

    • bignadad's avatar
      bignadad
      Icon for Helper I rankHelper I

      I don't need to combine the values based on the filter. I need to assign them to different users as the origianl question suggests