There's more...

The FILTERS function is not the only DAX function that can be used to debug and troubleshoot context issues within measures. Two other DAX functions, ISFILTERED and ISCROSSFILTERED, can also be used to help debug context. To see how these two functions work, perform the following steps:

  1. Create the following measures:
Is Filtered = ISFILTERED('R08_Table'[Color])

Is Cross Filtered = ISCROSSFILTERED('R08_Table'[Color])
  1. On the same Report page used previously in this recipe, create a second Slicer visualization and place the Value column from R08_Table in the Field area of the visualization.
  2. On the same Report page, create a second Card visualization and place the Is Filtered measure in the Fields area of the visualization.
  3. On the same Report page, create a third Card visualization and place the Is Cross Filtered measure in the Fields area of the visualization.

When selecting a value in the first Slicer visualization that uses the Color column from R08_Table, both Is Filtered and Is Cross Filtered return True. However, when selecting a value in the second Slicer visualization that uses the Value column from R08_Table, Is Filtered returns False while Is Cross Filtered returns True. This is because the ISFILTERED function returns True only when the specified column is being filtered directly. However, ISCROSSFILTERED returns True if the specified column is being filtered by any column within the table or because of filters applied to any related table that cause filtering on the specified column.