Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
6 years ago
Solved

How could implement selecting columns which shows in table dynamically?

Hi, I have requirment as follow: we have a table : A1 A2 A3 M1 M2 M3                                                 we need to give to user possibility...
  • AllisonKennedy's avatar
    AllisonKennedy
    6 years ago

    Anonymous  It is a bit unconventional but you can try to unpivot all the A and M columns, so that you are left with: 

    C, Attribute, Value

     

    Also create a disconnected table (no relationships to current data model) for the M values that you want user to select. I called this table Slicer.

    Slicer:

    Select
    M1
    M2
    M3

     

    Then create the matrix with C in Rows, Attribute in Columns, Value in Values.

     

    Finally, create this measure to filter the Attribute: 

     

    ShowColumns =
    Var SlicerSelection = VALUES(Slicer[Select])
    Var AlwaysShow = {("A1"), ("A2"), ("A3")}
    Var ShowValues = UNION(SlicerSelection, AlwaysShow)
    RETURN
    IF(SELECTEDVALUE('Table'[Attribute]) IN ShowValues, 1, 0)
     
    Put a filter on the visual for Attribute using Top N and use the ShowColumns measure as the By Value to filter for Top 1.