Microsoft Certified: Fabric Analytics Engineer AssociateImplement and manage semantic models (30-35%)Medium
A data engineer is working on an existing semantic model in Microsoft Fabric. The model contains a 'Sales' table and a 'Products' table. Currently, there is a one-to-many relationship from 'Products[ProductID]' to 'Sales[ProductID]'. The requirement is to filter sales data when a product is selected and also to allow filtering of products based on sales activity (e.g., show only products that have sales). Which cross-filter direction should be configured for the relationship?
- ASingle (Sales to Product)
- BNone
- CSingle (Product to Sales)
- DBoth
Show answer & explanationAnswer & explanation
Correct answer: D. Both
To allow filtering in both directions—from 'Products' to 'Sales' (standard one-to-many behavior) and from 'Sales' to 'Products' (to show only products with sales activity)—the cross-filter direction must be set to 'Both'.
Why the other options are wrong
- A. This direction is uncommon and would typically break the expected filter flow from dimension to fact.
- B. Setting to 'None' would prevent any filtering propagation through the relationship.
- C. This is the default and only allows filtering from the 'one' side (Products) to the 'many' side (Sales).
Cross-filter Direction
The cross-filter direction determines how filters propagate between related tables in a semantic model.
- Can be Single or Both.
- Single (default) propagates from the 'one' side to the 'many' side.
- Both allows filtering in both directions, enabling filtering from the 'many' side back to the 'one' side.
Memory trick: Relations direct the filter's effect, from one to many, or both to connect.