Cardinality, Cross-Filtering, and Security: Preparing for the PL-300 Certification Exam
In the third installment of her PL-300 certification prep series, Angelica Choo Quan dives into key concepts from the "Model the Data" functional group of the Microsoft Power BI Data Analyst exam. This section alone can make up 25-30% of the exam, so understanding these topics is crucial. The focus of this video includes cardinality, cross-filtering, and row-level security (RLS)—all of which are essential skills for building reliable and secure Power BI reports.
🔍 Sample Exam Questions and Scenarios
Angelica begins with two realistic exam-style questions:
- A Power BI report contains Sales Order, Customer, Product, and Sales Territory tables. The goal is to restrict users from viewing customers outside their assigned regions despite having RLS set up. What’s the best solution?
- A report should dynamically filter sales data so that users only see information relevant to them. Which DAX expression minimizes maintenance and works both in Power BI Desktop and Service?
🧠 Setting Up Relationships and Cardinality
To answer the first question, Angelica demonstrates how to inspect and configure table relationships:
- Set up relationships between tables (e.g., Customer to Sales Order) using proper cardinality (many-to-one).
- Ensure that Power BI visuals only display relevant data by establishing proper connections between entities like Sales Territory, Product, and Customer.
After configuring these relationships, each Sales Manager's data filtered properly in the report—showing only sales relevant to their territory.
🔐 Implementing Row-Level Security (RLS)
To limit data visibility further, Angelica guides viewers through setting up Dynamic RLS:
- Go to Modeling > Manage Roles and create a new role (e.g., "Sales Manager").
- Apply filters on the Sales Territory table based on the Manager Email Address field.
- Use the DAX expression:
[Manager Email Address] = USERPRINCIPALNAME()
This expression ensures RLS applies correctly in both Power BI Desktop and Service by using the email (UPN), rather than the domain-based USERNAME() function which behaves differently across platforms.
🔄 Cross-Filtering and Data Visibility Fixes
Even with RLS enabled, users could still see all customers. To fix this, Angelica shows how to:
- Navigate to the model view and modify the relationship between Customer and Sales Order.
- Change the Cross Filter Direction to Both.
- Enable Apply Security Filter in Both Directions and click "Apply Changes."
This ensures customer data is correctly filtered per region, giving each manager access only to their relevant customer list.
✅ Correct Answers Recap
- Question 1: Create an active relationship between Sales Order and Customer, and apply security in both directions (Answer: D)
- Question 2: Use the expression: [Manager Email Address] = USERPRINCIPALNAME() (Answer: B)
📘 Final Notes
This video underscores the importance of understanding relationships, filtering logic, and DAX functions when building secure, dynamic Power BI reports. For those preparing for the PL-300 exam, mastering these features not only helps with certification but also improves real-world reporting effectiveness.
Don't forget to check out the Pragmatic Works' on-demand learning platform for more insightful content and training sessions on Power BI and other Microsoft applications. Be sure to subscribe to the Pragmatic Works YouTube channel to stay up-to-date on the latest tips and tricks.
Sign-up now and get instant access
ABOUT THE AUTHOR
Shortly after graduating from the University of Florida in 2012, Angelica moved to Jacksonville and began her career as a high school Biology teacher. As a trainer at Pragmatic Works, her primary goal is to help individuals feel more comfortable and confident using Power BI. While not in the office, she enjoys traveling around the city of Jax to check out local eateries, live music events, and performing arts.
Free Community Plan
On-demand learning
Most Recent
private training

Leave a comment