🔄 Understanding Cross-Filter Direction (Both) in Power BI — Complete Hands-On Scenario

One of the most confusing concepts for many beginners in Power BI is understanding how filters travel between tables. Sometimes relationships exist correctly, but visuals still do not produce the expected results.

🔄 Understanding Cross-Filter Direction (Both) in Power BI — Complete Hands-On Scenario

In this practical hands-on scenario, we will understand:

  • ✅ What Cross-Filter Direction means
  • ✅ Why Single-direction filtering sometimes fails
  • ✅ When to use BOTH-direction filtering
  • ✅ A real-world reporting scenario
  • ✅ How to solve the issue step-by-step in Power BI

📘 Real Business Scenario

Imagine you work for a professional training company that sells online technology courses. Your manager asks you to create a report showing:

"Total revenue generated by each Trainer for every Course Topic."

At first, the task sounds simple... But the data model contains multiple connected tables.


🗂️ Tables Used in This Scenario

1️⃣ EnrollmentData Table

This table stores student purchases and revenue information.

EnrollmentID CourseID Revenue
E01 C101 300
E02 C102 500
E03 C101 250

2️⃣ CourseCatalog Table

This table stores course details and topics.

CourseID Topic
C101 Power BI
C102 Azure
C103 Python

3️⃣ Trainers Table

This table stores trainer information.

TrainerName Topic
Kasper Power BI
Sofia Azure
Emma Python

🔗 Relationships Between Tables

  • EnrollmentDataCourseCatalog
    Connected by: CourseID

  • CourseCatalogTrainers
    Connected by: Topic

📊 What the Boss Wants

The manager wants a visual like this:

Trainer Topic Revenue
Kasper Power BI 550
Sofia Azure 500

⚠️ The Problem

Even after creating the relationships correctly, the report may not calculate revenue properly by Trainer.

Why?

Because Power BI relationships often use:

➡️ Single-Direction Filtering

In this case, the filter from the Trainers table cannot properly travel all the way to the EnrollmentData table.

The filtering path becomes blocked.


🧠 Understanding the Filter Flow

The report needs filtering to travel like this:

Trainer → CourseCatalog → EnrollmentData

But with Single-direction filtering, Power BI may not allow the filter to fully pass through all connected tables.

As a result:

  • ❌ Revenue calculations become incorrect
  • ❌ Some visuals show blank or unexpected values
  • ❌ Manager-based filtering does not work properly

✅ The Solution — Use BOTH Cross-Filter Direction

To solve this problem:

Change the relationship between:

CourseCatalog ↔ Trainers

from:

❌ Single

to:

✅ BOTH

🛠️ Step-by-Step Hands-On Configuration

🔹 Step 1: Open Model View

Go to:

Power BI Desktop → Model View

You will see all tables and relationships.


🔹 Step 2: Locate the Relationship

Find the relationship between:

  • CourseCatalog
  • Trainers

🔹 Step 3: Open Relationship Settings

Double-click the relationship line.

The relationship configuration window will open.


🔹 Step 4: Change Cross-Filter Direction

Find:

Cross-filter direction

Change:

❌ Single → ✅ Both

🔹 Step 5: Save the Relationship

Click:

Save / OK

Power BI can now pass filters in both directions.


🚀 What Happens After Using BOTH?

Now the filter can successfully travel:

Trainer ↔ CourseCatalog ↔ EnrollmentData

This allows Power BI to correctly calculate:

  • ✅ Revenue by Trainer
  • ✅ Revenue by Topic
  • ✅ Revenue by Course

📌 Final Output

Your visual now works correctly.

Trainer Topic Total Revenue
Kasper Power BI 550
Sofia Azure 500

💡 Important Real-World Tip

Using BOTH-direction filtering is powerful — but it should be used carefully.

Too many BOTH relationships can:

  • ⚠️ Reduce performance
  • ⚠️ Create ambiguous filter paths
  • ⚠️ Cause unexpected calculations

Always use it only when the business scenario truly requires filters to travel across multiple connected tables.


🎯 Simple Memory Trick

"If filters need to travel through multiple connected tables in both directions, check whether Cross-Filter Direction should be set to BOTH."

🏁 Final Thoughts

Understanding relationships is one of the most important skills in Power BI. Many reporting issues are not caused by DAX — they are caused by incorrect filter behavior between tables.

Once you understand how filters travel through relationships, your dashboards become smarter, cleaner, and more reliable.


📚 Key Learning Summary

  • ✅ Relationships control filter behavior
  • ✅ Single-direction filtering has limitations
  • ✅ BOTH-direction filtering allows filters to travel across connected tables
  • ✅ Useful in manager-sales, trainer-revenue, and indirect relationship scenarios

🚀 Keep learning. Keep exploring. Keep building.


Created by M. Naveed | Siraat AI Academy

Comments

Popular posts from this blog

Thrown Into the Azure River by AI — An AZ-104 Learning Story

Lecture 01 – Cloud Readiness & Digital Transformation: Understanding the Real Requirements

Lecture 02 – Foundations of Digital Transformation & Cloud Concepts