Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
9 years ago
Solved

Concatenate rows values based on filter context

Hi,

 

I am trying to capture the values selected in a slicer so I can display a notification on screen such as "You have selected the following: A, B, C).

 

For displaying if a single value is selcted, I am using the following:

 

HasOneValue =
"You have selected the following Territory filter: "
    & IF (
        HASONEVALUE ( Rev[Territory] ),
        ALLSELECTED ( Rev[Territory] ),
        " More than one territory")
    )

 

However, for the second part of the if statement, I would like to show the actual unique values selected in the slicer concatenated together (e.g. "You have selected the following Territory filter: Territory 1, Territory 2"). I tried using concatenatex, and this works...too well! It passes in every value from every row that matches my filter context. I next tried wrapping the column I want to return with DISTINCT, as follows:

 

HasOneValue =
"You have selected the following Territory filter: "
    & IF (
        HASONEVALUE ( Rev[Territory] ),
        ALLSELECTED ( Rev[Territory] ),
        CONCATENATEX ( rev, DISTINCT ( Rev[Territory] )"," )
    )

 

However, this returns an error inside the visual, although the DAX code itself does not show an error when run. 

 

Any thoughts as to how to fix this?

 

Thanks,

Scott

  • Anonymous's avatar
    Anonymous
    9 years ago

    Solved it. Just in case anyone wants to see the solution:

     

            TerritoriesSelected = "You have selected the following territories: " & CONCATENATEX(VALUES(Rev[Territory]),Rev[Territory],", ")

     

    Best,

    Scott

1 Reply

  • Anonymous's avatar
    Anonymous
    Not applicable

    Solved it. Just in case anyone wants to see the solution:

     

            TerritoriesSelected = "You have selected the following territories: " & CONCATENATEX(VALUES(Rev[Territory]),Rev[Territory],", ")

     

    Best,

    Scott