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?

  1. ASingle (Sales to Product)
  2. BNone
  3. CSingle (Product to Sales)
  4. DBoth
Show answer & 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.

More Implement and manage semantic models (30-35%) questions