Forum Discussion
Help to understand the example given in CROSSFILTER function
- 1 year ago
Sales[CustomersFiltered]: This measure considers the bidirectional relationship between Sales and Customer. If there are any filters applied to the Product table, they will still affect the Sales table indirectly through the Customer table.
Sales[ProductsDoesNotFilter]: This measure explicitly disables the relationship between Sales and Product. This means that any filters applied to the Product table will not affect the Sales table at all. However, the bidirectional relationship between Sales and Customer remains active.
The key difference is that the third measure isolates the Sales table from any filtering effects of the Product table, ensuring that only the relationship between Sales and Customer is considered where as the second measure considering filtering effects of the product table indirectly.
Hope this clearify the confusion!!
Hi nemo ,
The line CROSSFILTER ( Sales[ProductKey], 'Product'[ProductKey], NONE ) disables the filtering effect of the Product table on the Sales table. This means that any filters applied to the Product table will not affect the Sales table.
In the SUMMARIZECOLUMNS function, the third column "Products does not filter Sales" uses the Sales[ProductsDoesNotFilter] measure. Because the relationship between Sales and Product is disabled, the count of customers is not affected by any filters on the Product table. This results in a higher count (18,869) because it includes all customers, regardless of any product-related filters.
Hope this helps!!
If this helps, please accept it as a solution and a kudos!!
Thanks for your quick response shafiz_p.
Yes, I understand the line CROSSFILTER ( Sales[ProductKey], 'Product'[ProductKey], NONE ) disables the filtering effect between tables Product and Sales, but the other line CROSSFILTER ( Sales[CustomerKey], Customer[CustomerKey], BOTH ) still applies a filtering effect between tables Customer and Sales, thus the third column/measure should have returned the same values as the second column/measure, don't you think? What's the point of having both CROSSFILTER in the third measure?
- shafiz_p1 year agoSuper User
Sales[CustomersFiltered]: This measure considers the bidirectional relationship between Sales and Customer. If there are any filters applied to the Product table, they will still affect the Sales table indirectly through the Customer table.
Sales[ProductsDoesNotFilter]: This measure explicitly disables the relationship between Sales and Product. This means that any filters applied to the Product table will not affect the Sales table at all. However, the bidirectional relationship between Sales and Customer remains active.
The key difference is that the third measure isolates the Sales table from any filtering effects of the Product table, ensuring that only the relationship between Sales and Customer is considered where as the second measure considering filtering effects of the product table indirectly.
Hope this clearify the confusion!!