Tag: Analytics

Practice Questions: Configure and Update a Workspace App (PL-300 Exam Prep)

This post is a part of the PL-300: Microsoft Power BI Data Analyst Exam Prep Hub; and this topic falls under these sections:
Manage and secure Power BI (15–20%)
--> Create and manage workspaces and assets
--> Configure and Update a Workspace App


Below are 10 practice questions (with answers and explanations) for this topic of the exam.
There are also 2 practice tests for the PL-300 exam with 60 questions each (with answers) available on the hub.

Practice Questions


Question 1

What is the primary purpose of publishing a workspace app in Power BI?

A. To allow multiple developers to edit reports simultaneously
B. To provide a read-only, curated experience for report consumers
C. To improve dataset refresh performance
D. To apply row-level security to reports

Correct Answer: B

Explanation:
Workspace apps are designed for content consumption, not development. They provide a controlled, read-only experience for users, which is why they are preferred over direct report sharing for large audiences.


Question 2

Which workspace roles can publish or update a workspace app?

A. Viewer only
B. Contributor and Viewer
C. Member and Admin
D. Contributor and Member

Correct Answer: C

Explanation:
Only Members and Admins have permission to publish or update workspace apps. Contributors can create content but cannot manage apps.


Question 3

You update a report in a workspace, but users do not see the changes in the app. What must you do?

A. Refresh the dataset
B. Clear the app cache
C. Republish or update the app
D. Reassign user permissions

Correct Answer: C

Explanation:
Changes made in the workspace do not automatically appear in the app. You must explicitly update (republish) the app for consumers to see the changes.


Question 4

Which feature allows different users to see different content within the same workspace app?

A. Row-level security (RLS)
B. Dataset roles
C. App audiences
D. Visual-level filters

Correct Answer: C

Explanation:
App audiences control content visibility, allowing different groups to see different reports or dashboards without duplicating content.


Question 5

Which permission allows users of an app to build their own reports using the app’s semantic model?

A. Viewer permission
B. Allow reshare
C. Build permission
D. Admin permission

Correct Answer: C

Explanation:
Granting Build permission allows users to connect to the underlying semantic model for scenarios such as Analyze in Excel or creating new reports.


Question 6

What happens to users when a workspace app is updated?

A. They must be re-added to the app
B. Their bookmarks are deleted
C. They automatically see the updated content
D. Their permissions are reset

Correct Answer: C

Explanation:
After an app is updated, users retain access and permissions, and the updated content becomes available automatically without additional action.


Question 7

Which scenario is the best use case for a workspace app?

A. Collaborative report development
B. Testing new visuals
C. Distributing finalized reports to a large audience
D. Debugging DAX calculations

Correct Answer: C

Explanation:
Workspace apps are ideal for broad distribution of production-ready content, while workspaces remain the collaboration area for developers.


Question 8

Which of the following is true about workspace apps?

A. Users can edit reports in an app
B. Apps automatically update when workspace content changes
C. Apps provide a controlled navigation experience
D. Apps replace the need for workspaces

Correct Answer: C

Explanation:
Apps allow creators to control navigation, ordering, and visibility of content. They are read-only and require manual updates.


Question 9

You want to hide a report from most users but make it available to executives using the same app. What should you do?

A. Duplicate the report into a new workspace
B. Use row-level security
C. Create a separate app
D. Use app audiences

Correct Answer: D

Explanation:
App audiences allow selective visibility of content without duplication, making them ideal for role-based access to reports.


Question 10

What is the key difference between a workspace and a workspace app?

A. Workspaces support data refresh; apps do not
B. Workspaces are for collaboration; apps are for consumption
C. Apps allow editing; workspaces do not
D. Apps automatically apply security

Correct Answer: B

Explanation:
A workspace is where content is created and maintained, while a workspace app is the distribution layer for end users.


Exam Tip

If a question mentions:

  • Broad distribution
  • Read-only access
  • Controlled release
  • Audiences
  • Updating without disrupting users

➡️ The correct answer is almost always Workspace App.


Go back to the PL-300 Exam Prep Hub main page

Practice Questions: Identify when a gateway is required (PL-300 Exam Prep)

This post is a part of the PL-300: Microsoft Power BI Data Analyst Exam Prep Hub; and this topic falls under these sections:
Manage and secure Power BI (15–20%)
--> Create and manage workspaces and assets
--> Identify when a gateway is required


Below are 10 practice questions (with answers and explanations) for this topic of the exam.
There are also 2 practice tests for the PL-300 exam with 60 questions each (with answers) available on the hub.

Practice Questions


Question 1

You publish a Power BI report that imports data from an on-premises SQL Server and want to schedule daily refreshes in the Power BI service. What is required?

A. No additional configuration
B. A Power BI app
C. An on-premises data gateway
D. A premium capacity workspace

Correct Answer: C

Explanation:
Scheduled refresh from an on-premises data source requires a gateway to securely connect Power BI service to the local SQL Server.


Question 2

A dataset uses Azure SQL Database in Import mode with scheduled refresh enabled. Is a gateway required?

A. Yes, because scheduled refresh is enabled
B. Yes, because Import mode is used
C. No, because the data source is cloud-based
D. No, because the dataset is small

Correct Answer: C

Explanation:
Azure SQL Database is a cloud data source that Power BI can access directly, so no gateway is needed.


Question 3

You create a Power BI report using DirectQuery to an on-premises SQL Server. When users view the report in the Power BI service, what is required?

A. A gateway
B. A scheduled refresh
C. Import mode
D. Power BI Premium

Correct Answer: A

Explanation:
DirectQuery sends queries at report view time. A gateway is required for on-premises sources.


Question 4

Which scenario does NOT require a Power BI gateway?

A. Importing data from SharePoint Online
B. DirectQuery to an on-premises database
C. Refreshing an on-premises dataflow
D. Live connection to on-premises SSAS

Correct Answer: A

Explanation:
SharePoint Online is a cloud-based service and does not require a gateway.


Question 5

A report combines data from Azure Data Lake Storage and an on-premises file share. What is true?

A. No gateway is required because one source is cloud-based
B. A gateway is required for the on-premises source
C. A gateway is required for both sources
D. Gateways are not supported for mixed data sources

Correct Answer: B

Explanation:
Any on-premises data source used in the Power BI service requires a gateway, even in hybrid datasets.


Question 6

While working in Power BI Desktop, you connect to an on-premises SQL Server and refresh data locally. Is a gateway required?

A. Yes, always
B. Yes, if Import mode is used
C. No, gateways are only needed in the Power BI service
D. No, if DirectQuery is used

Correct Answer: C

Explanation:
Power BI Desktop connects directly to local data sources. Gateways are only required after publishing to the Power BI service.


Question 7

You want to refresh a Power BI dataflow that connects to an on-premises Oracle database. What is required?

A. Power BI Premium
B. A gateway
C. A paginated report
D. An app workspace

Correct Answer: B

Explanation:
Dataflows that use on-premises data sources require a gateway to refresh in the Power BI service.


Question 8

Which connection type always requires a gateway when the data source is on-premises?

A. Import with manual refresh
B. Import with scheduled refresh
C. DirectQuery
D. Both B and C

Correct Answer: D

Explanation:
Scheduled refresh and DirectQuery both require a gateway for on-premises data sources.


Question 9

A report uses a Live connection to an on-premises Analysis Services model. What is required?

A. A dataset refresh schedule
B. A gateway
C. Import mode
D. A certified dataset

Correct Answer: B

Explanation:
Live connections to on-premises Analysis Services require a gateway for real-time queries.


Question 10

Which factor is the most important when deciding if a gateway is required?

A. Dataset size
B. Data refresh frequency
C. Location of the data source
D. Number of report users

Correct Answer: C

Explanation:
Gateway requirements are based on whether the data source is accessible from the cloud or located on-premises.


Exam Tips

  • On-premises + Power BI service = Gateway
  • Cloud sources do not require gateways
  • DirectQuery and Live connections still require gateways
  • Desktop-only work never requires a gateway

Go back to the PL-300 Exam Prep Hub main page

Practice Questions: Assign workspace roles (PL-300 Exam Prep)

This post is a part of the PL-300: Microsoft Power BI Data Analyst Exam Prep Hub; and this topic falls under these sections:
Manage and secure Power BI (15–20%)
--> Secure and govern Power BI items
--> Assign workspace roles


Below are 10 practice questions (with answers and explanations) for this topic of the exam.
There are also 2 practice tests for the PL-300 exam with 60 questions each (with answers) available on the hub.

Practice Questions


Question 1

You need to allow a user to add and remove workspace users and change workspace settings.
Which workspace role should you assign?

A. Viewer
B. Contributor
C. Member
D. Admin

Correct Answer: D. Admin

Explanation:
Only the Admin role can manage workspace access and modify workspace settings. Members can manage content but cannot manage users.


Question 2

A business user needs to view reports and dashboards but should not be able to modify or publish any content.
Which role is most appropriate?

A. Viewer
B. Contributor
C. Member
D. Admin

Correct Answer: A. Viewer

Explanation:
The Viewer role provides read-only access, allowing users to consume and interact with content without making changes.


Question 3

Which workspace role allows a user to create and edit reports but not publish or update a workspace app?

A. Viewer
B. Contributor
C. Member
D. Admin

Correct Answer: B. Contributor

Explanation:
Contributors can create and modify content but cannot publish apps or manage workspace access.


Question 4

A Power BI developer must publish a workspace app but should not be able to add or remove users from the workspace.
Which role should be assigned?

A. Viewer
B. Contributor
C. Member
D. Admin

Correct Answer: C. Member

Explanation:
Members can publish and update workspace apps but cannot manage workspace access, which is restricted to Admins.


Question 5

Which role is required to delete a workspace?

A. Viewer
B. Contributor
C. Member
D. Admin

Correct Answer: D. Admin

Explanation:
Only workspace Admins have permission to delete a workspace.


Question 6

You want to follow best practices for access management by minimizing ongoing maintenance when employees change roles.
What should you use when assigning workspace access?

A. Individual user accounts
B. Distribution lists
C. Azure AD security groups
D. Shareable links

Correct Answer: C. Azure AD security groups

Explanation:
Using Azure AD security groups simplifies governance by allowing access changes to be managed centrally.


Question 7

A user needs to configure scheduled refresh for a semantic model but should not manage workspace access.
Which role is the minimum required?

A. Viewer
B. Contributor
C. Member
D. Admin

Correct Answer: C. Member

Explanation:
Configuring scheduled refresh requires Member or Admin permissions. Contributors cannot manage refresh settings.


Question 8

Which workspace role requires a Power BI Pro license when the workspace is not in Premium capacity?

A. Admin only
B. Contributor only
C. Viewer only
D. All workspace roles

Correct Answer: D. All workspace roles

Explanation:
When a workspace is not in Premium capacity, all users, including Viewers, require a Power BI Pro license to access content.


Question 9

Which statement correctly describes the difference between workspace roles and row-level security (RLS)?

A. Workspace roles control data visibility, RLS controls actions
B. Workspace roles control actions, RLS controls data visibility
C. Both control user actions only
D. Both control data visibility only

Correct Answer: B. Workspace roles control actions, RLS controls data visibility

Explanation:
Workspace roles define what users can do, while RLS defines what data users can see within reports.


Question 10

You are designing a production workspace and want report consumers to have the least privilege possible.
Which role should they be assigned?

A. Viewer
B. Contributor
C. Member
D. Admin

Correct Answer: A. Viewer

Explanation:
The Viewer role follows the principle of least privilege, granting read-only access appropriate for production consumers.


Exam Readiness Checklist

✔ Know all four workspace roles
✔ Understand capabilities vs limitations
✔ Apply least privilege principles
✔ Recognize Admin-only actions
✔ Distinguish workspace roles from RLS


Go back to the PL-300 Exam Prep Hub main page

Practice Questions: Configure item-level access in Power BI (PL-300 Exam Prep)

This post is a part of the PL-300: Microsoft Power BI Data Analyst Exam Prep Hub; and this topic falls under these sections:
Manage and secure Power BI (15–20%)
--> Secure and govern Power BI items
--> Configure item-level access


Below are 10 practice questions (with answers and explanations) for this topic of the exam.
There are also 2 practice tests for the PL-300 exam with 60 questions each (with answers) available on the hub.

Practice Questions


Question 1

You want business users to create their own reports using an existing semantic model, but you do not want them to edit the model. What should you grant them?

A. Workspace Viewer role
B. Workspace Contributor role
C. Build permission on the semantic model
D. Read permission on the report

Correct Answer: C

Explanation:
The Build permission allows users to create new reports using a semantic model without modifying it. Viewer access alone does not allow report creation, and Contributor access is broader than required.


Question 2

A user can view a dashboard but sees broken tiles that fail to load data. What is the most likely cause?

A. The dataset refresh failed
B. The user lacks Build permission
C. The user does not have access to the underlying report
D. The dashboard was shared incorrectly

Correct Answer: C

Explanation:
Dashboard tiles link back to underlying reports. If the user does not have access to those reports, the tiles will not display correctly—even if the dashboard itself is shared.


Question 3

Which permission allows a user to create a new report in Power BI Desktop using a published semantic model?

A. Read
B. Viewer
C. Contributor
D. Build

Correct Answer: D

Explanation:
Only the Build permission enables users to create new reports from an existing semantic model, including using Power BI Desktop or Analyze in Excel.


Question 4

You need to limit who can see specific reports within a Power BI app without creating multiple apps. What should you use?

A. Row-level security (RLS)
B. Workspace roles
C. App audiences
D. Dataset permissions

Correct Answer: C

Explanation:
App audiences provide item-level visibility within an app, allowing different user groups to see different reports or dashboards.


Question 5

Which statement best describes item-level access?

A. It controls what data rows users can see
B. It controls access to entire workspaces
C. It controls access to individual Power BI items
D. It replaces workspace roles

Correct Answer: C

Explanation:
Item-level access applies to individual items such as reports, dashboards, and datasets. It does not control row-level data access and does not replace workspace roles.


Question 6

A user has access to a report but cannot export data from it. What is the most likely explanation?

A. The dataset is using DirectQuery
B. The report is in a Premium workspace
C. Export permissions are restricted at the report or tenant level
D. The user lacks RLS permissions

Correct Answer: C

Explanation:
Export behavior is governed by item-level settings and tenant-level policies, not RLS or workspace type alone.


Question 7

When sharing a report, which permission must be explicitly granted if the user needs to reshare it with others?

A. Build
B. Viewer
C. Contributor
D. Reshare

Correct Answer: D

Explanation:
The Reshare permission must be explicitly enabled when sharing an item. Without it, users can view the report but cannot share it further.


Question 8

Which scenario requires item-level access instead of workspace roles?

A. Granting full control of all assets
B. Managing dataset refresh schedules
C. Allowing users to view only specific reports in a workspace
D. Enabling paginated report creation

Correct Answer: C

Explanation:
Item-level access allows fine-grained control over individual assets, making it ideal when users should only see specific reports.


Question 9

How does item-level access differ from row-level security (RLS)?

A. Item-level access controls data rows
B. RLS controls report visibility
C. Item-level access controls content access; RLS controls data visibility
D. They serve the same purpose

Correct Answer: C

Explanation:
Item-level access determines whether a user can open or interact with content, while RLS limits the data shown within that content.


Question 10

What is the recommended best practice when assigning item-level access at scale?

A. Assign permissions to individual users
B. Use workspace roles only
C. Use Azure AD security groups
D. Share reports anonymously

Correct Answer: C

Explanation:
Using Azure AD security groups improves scalability, simplifies maintenance, and aligns with enterprise governance best practices.


Exam Readiness Tip

If you can confidently answer questions about:

  • Build vs Read vs Reshare
  • Dashboards vs reports vs datasets
  • Item-level access vs workspace roles vs RLS

…you are in excellent shape for PL-300 questions in this domain.


Go back to the PL-300 Exam Prep Hub main page

Practice Questions: Configure Access to Semantic Models (PL-300 Exam Prep)

This post is a part of the PL-300: Microsoft Power BI Data Analyst Exam Prep Hub; and this topic falls under these sections:
Manage and secure Power BI (15–20%)
--> Secure and govern Power BI items
--> Configure access to semantic models


Below are 10 practice questions (with answers and explanations) for this topic of the exam.
There are also 2 practice tests for the PL-300 exam with 60 questions each (with answers) available on the hub.

Practice Questions


Question 1

A user can view reports in a workspace but cannot create a new report using the existing semantic model. What is the most likely reason?

A. The user does not have Read permission on the semantic model
B. The user does not have Build permission on the semantic model
C. The user is not assigned a Row-Level Security role
D. The semantic model is not endorsed

Correct Answer: B

Explanation:
Creating new reports from a semantic model requires Build permission. A user can still view reports without Build permission, which makes this a common exam scenario.


Question 2

Which workspace role allows a user to edit semantic models and manage permissions?

A. Viewer
B. Contributor
C. Member
D. App user

Correct Answer: C

Explanation:
Members can publish, update, and manage semantic models, including assigning permissions. Contributors can edit content but cannot manage access.


Question 3

You want business users to create their own reports while preventing them from modifying the semantic model. What is the best approach?

A. Assign users the Viewer role and grant Build permission on the semantic model
B. Assign users the Contributor role
C. Assign users the Admin role
D. Publish the reports through a Power BI App only

Correct Answer: A

Explanation:
Granting Viewer role + Build permission enables self-service report creation without allowing model changes—this is a best practice and frequently tested.


Question 4

Where is Row-Level Security (RLS) enforced?

A. At the report level
B. At the dashboard level
C. At the semantic model level
D. At the workspace level

Correct Answer: C

Explanation:
RLS is defined in Power BI Desktop and enforced at the semantic model level, applying to all reports that use the model.


Question 5

Which DAX function is commonly used to implement dynamic Row-Level Security?

A. SELECTEDVALUE()
B. USERELATIONSHIP()
C. USERPRINCIPALNAME()
D. LOOKUPVALUE()

Correct Answer: C

Explanation:
USERPRINCIPALNAME() returns the logged-in user’s email or UPN and is commonly used in dynamic RLS filters.


Question 6

A user with Viewer access can see a report but receives an error when using Analyze in Excel. What is the most likely issue?

A. The user is not licensed for Power BI
B. The semantic model is not certified
C. The user does not have Build permission
D. RLS is incorrectly configured

Correct Answer: C

Explanation:
Analyze in Excel requires Build permission on the semantic model. Viewer role alone is insufficient.


Question 7

Which permission allows a user to share a semantic model with others?

A. Read
B. Build
C. Reshare
D. Admin

Correct Answer: C

Explanation:
The Reshare permission explicitly allows users to share the semantic model with other users or groups.


Question 8

What is the primary purpose of certifying a semantic model?

A. To apply Row-Level Security automatically
B. To improve query performance
C. To indicate the model is an approved and trusted data source
D. To allow external tool access

Correct Answer: C

Explanation:
Certification signals that a semantic model is officially approved and governed, helping users identify trusted data sources.


Question 9

Which approach is recommended for managing access to semantic models at scale?

A. Assign permissions to individual users
B. Use Microsoft Entra ID (Azure AD) security groups
C. Share semantic models directly from Power BI Desktop
D. Grant Admin role to all analysts

Correct Answer: B

Explanation:
Using security groups simplifies access management, supports scalability, and aligns with governance best practices.


Question 10

A report is published using a semantic model that has RLS enabled. A user accesses the report through a Power BI App. What happens?

A. RLS is ignored when using apps
B. RLS must be reconfigured for the app
C. RLS is enforced automatically
D. Only static RLS is applied

Correct Answer: C

Explanation:
Row-Level Security is always enforced at the semantic model level, regardless of whether content is accessed via a workspace, report, or app.


Final Exam Tips

  • Build permission is the most frequently tested concept
  • Viewer + Build is a common least-privilege design pattern
  • RLS always applies at the semantic model level
  • Certification is about trust and governance, not security
  • Apps do not bypass semantic model security

Go back to the PL-300 Exam Prep Hub main page

Practice Questions: Implement Row-Level Security Roles (PL-300 Exam Prep)

This post is a part of the PL-300: Microsoft Power BI Data Analyst Exam Prep Hub; and this topic falls under these sections:
Manage and secure Power BI (15–20%)
--> Secure and govern Power BI items
--> Implement row-level security roles


Below are 10 practice questions (with answers and explanations) for this topic of the exam.
There are also 2 practice tests for the PL-300 exam with 60 questions each (with answers) available on the hub.

Practice Questions


Question 1

Where are Row-Level Security roles and filters created?

A. In the Power BI Service
B. In Power BI Desktop
C. In Microsoft Entra ID
D. In Power BI Apps

Correct Answer: B

Explanation:
RLS roles and DAX filters are created in Power BI Desktop. Users and groups are assigned to those roles later in the Power BI Service.


Question 2

Which DAX function is most commonly used to implement dynamic RLS?

A. USERELATIONSHIP()
B. USERNAME()
C. USERPRINCIPALNAME()
D. SELECTEDVALUE()

Correct Answer: C

Explanation:
USERPRINCIPALNAME() returns the logged-in user’s email/UPN and is the most commonly used function for dynamic RLS scenarios.


Question 3

A single semantic model must filter sales data so that users only see rows matching their email address. What is the best approach?

A. Create one role per user
B. Create static RLS roles by region
C. Use dynamic RLS with a user-mapping table
D. Use Object-Level Security

Correct Answer: C

Explanation:
Dynamic RLS with a user-to-dimension mapping table scales efficiently and avoids creating many static roles.


Question 4

What happens if a user belongs to multiple RLS roles?

A. Access is denied
B. Only the most restrictive role is applied
C. The union of all role filters is applied
D. The first role alphabetically is applied

Correct Answer: C

Explanation:
Power BI applies the union of RLS role filters, meaning users see data allowed by any role they belong to.


Question 5

Which statement about Row-Level Security behavior is correct?

A. RLS is applied at the report level
B. RLS applies only to dashboards
C. RLS is enforced at the semantic model level
D. RLS must be reconfigured for each report

Correct Answer: C

Explanation:
RLS is enforced at the semantic model level and automatically applies to all reports and apps using that model.


Question 6

You test RLS using View as role in Power BI Desktop. What does this feature do?

A. Permanently applies RLS to the model
B. Bypasses RLS for the model author
C. Simulates how the report appears for a role
D. Assigns users to roles automatically

Correct Answer: C

Explanation:
View as allows you to simulate role behavior to validate RLS logic before publishing.


Question 7

Which type of RLS is least scalable in enterprise environments?

A. Dynamic RLS
B. RLS using USERPRINCIPALNAME()
C. Static RLS with hard-coded values
D. Group-based RLS

Correct Answer: C

Explanation:
Static RLS requires separate roles for each data segment, making it difficult to maintain at scale.


Question 8

A user accesses a report through a Power BI App. How does RLS behave?

A. RLS is ignored
B. RLS must be redefined in the app
C. RLS is enforced automatically
D. Only static RLS is enforced

Correct Answer: C

Explanation:
RLS is always enforced at the semantic model level, including when content is accessed through apps.


Question 9

Which security feature should be used if you need to hide entire columns or tables from certain users?

A. Row-Level Security
B. Workspace roles
C. Object-Level Security
D. Build permission

Correct Answer: C

Explanation:
RLS controls rows only. Object-Level Security (OLS) is used to hide tables or columns.


Question 10

Which best practice is recommended when assigning users to RLS roles?

A. Assign individual users directly
B. Assign workspace Admins only
C. Assign Microsoft Entra ID security groups
D. Assign report-level permissions

Correct Answer: C

Explanation:
Using security groups improves scalability, governance, and ease of maintenance.


Final PL-300 Exam Reminders

  • RLS controls data visibility, not report access
  • Dynamic RLS is heavily tested
  • RLS applies everywhere the semantic model is used
  • Users see the union of multiple roles
  • RLS is defined in Desktop, enforced in the Service

Go back to the PL-300 Exam Prep Hub main page

Practice Questions: Configure Row-Level Security Group Membership (PL-300 Exam Prep)

This post is a part of the PL-300: Microsoft Power BI Data Analyst Exam Prep Hub; and this topic falls under these sections: 
Manage and secure Power BI (15–20%)
--> Secure and govern Power BI items
--> Configure row-level security group membership


Below are 10 practice questions (with answers and explanations) for this topic of the exam.
There are also 2 practice tests for the PL-300 exam with 60 questions each (with answers) available on the hub.

Practice Questions


Question 1

Where are security groups assigned to RLS roles?

A. Power BI Desktop
B. Power BI Service
C. Microsoft Entra ID only
D. Power BI App settings

Correct Answer: B

Explanation:
RLS roles and filters are created in Power BI Desktop, but users and security groups are assigned to roles in the Power BI Service after the model is published.


Question 2

Which approach is considered a best practice for managing RLS membership at scale?

A. Assign individual users to each role
B. Create one role per user
C. Assign Microsoft Entra ID security groups to roles
D. Use workspace Admin access

Correct Answer: C

Explanation:
Using Entra ID security groups simplifies administration, supports scalability, and aligns with enterprise security standards.


Question 3

What happens when a user is added to an Entra ID security group that is already assigned to an RLS role?

A. The semantic model must be republished
B. The role must be recreated
C. The user automatically inherits the RLS permissions
D. The user must be manually added in Power BI

Correct Answer: C

Explanation:
Group-based RLS automatically applies to all members of the group without changes to the model or Power BI configuration.


Question 4

Which type of group is recommended for RLS role membership?

A. Distribution list
B. Microsoft 365 group
C. Entra ID security group
D. Power BI workspace group

Correct Answer: C

Explanation:
Entra ID security groups are designed for access control and are the preferred option for RLS scenarios.


Question 5

A user belongs to two security groups, each assigned to a different RLS role. How is access determined?

A. The most restrictive role applies
B. The first role applied alphabetically applies
C. Access is denied
D. The union of both roles applies

Correct Answer: D

Explanation:
Power BI applies the union of all RLS roles a user belongs to, allowing access to any data permitted by either role.


Question 6

Which action requires updating Microsoft Entra ID, not Power BI?

A. Modifying a DAX RLS filter
B. Creating a new RLS role
C. Adding a user to an RLS role via group membership
D. Testing RLS with View as

Correct Answer: C

Explanation:
User membership in security groups is managed in Entra ID, not in Power BI.


Question 7

Which statement about testing group-based RLS is correct?

A. Group membership can be fully tested in Power BI Desktop
B. Group membership is evaluated only in the Power BI Service
C. RLS does not apply to groups
D. Groups bypass dynamic RLS

Correct Answer: B

Explanation:
Power BI Desktop can test role logic, but actual group membership is evaluated only in the Power BI Service.


Question 8

Why is group-based RLS preferred over assigning individual users?

A. It improves report performance
B. It hides tables and columns
C. It reduces the need to update Power BI when users change roles
D. It removes the need for DAX filters

Correct Answer: C

Explanation:
Group-based RLS allows access changes to be managed centrally without modifying Power BI roles or republishing models.


Question 9

Which security concept is often confused with RLS group membership but serves a different purpose?

A. Build permission
B. Workspace roles
C. Object-Level Security
D. All of the above

Correct Answer: D

Explanation:
All listed options are different security mechanisms that control content access or structure, not row-level data visibility.


Question 10

What is the primary role of Power BI in a group-based RLS solution?

A. Managing group membership
B. Authenticating users
C. Enforcing data filters defined in RLS roles
D. Creating security groups

Correct Answer: C

Explanation:
Power BI enforces RLS filters at query time, while identity and group membership are managed externally in Entra ID.


Final PL-300 Exam Reminders

  • Use Entra ID security groups for RLS membership
  • Assign groups in the Power BI Service
  • RLS role logic lives in Power BI Desktop
  • Users see the union of all assigned roles
  • Group membership changes do not require republishing

Go back to the PL-300 Exam Prep Hub main page

Practice Questions: Implement Performance Improvements in Queries and Report Visuals (DP-600 Exam Prep)

This post is a part of the DP-600: Implementing Analytics Solutions Using Microsoft Fabric Exam Prep Hub; and this topic falls under these sections: 
Implement and manage semantic models (25-30%)
--> Optimize enterprise-scale semantic models
--> Implement performance improvements in queries and report visuals


Practice Questions:

Here are 10 questions to test and help solidify your learning and knowledge. As you review these and other questions in your preparation, make sure to …

  • Identifying and understand why an option is correct (or incorrect) — not just which one
  • Look for and understand the usage scenario of keywords in exam questions to guide you
  • Expect scenario-based questions rather than direct definitions

1. A Power BI report built on a large semantic model is slow to respond. Performance Analyzer shows long DAX query times but minimal visual rendering time. Where should you focus first?

A. Reducing the number of visuals
B. Optimizing DAX measures and model design
C. Changing visual types
D. Disabling report interactions

Correct Answer: B

Explanation:
If DAX query time is the bottleneck, the issue lies in measure logic, relationships, or model design, not visuals.


2. Which storage mode typically provides the best interactive performance for large Delta tables stored in OneLake?

A. Import
B. DirectQuery
C. Direct Lake
D. Live connection

Correct Answer: C

Explanation:
Direct Lake queries Delta tables directly in OneLake, offering better performance than DirectQuery while avoiding full data import.


3. Which modeling change most directly improves query performance in enterprise-scale semantic models?

A. Using many-to-many relationships
B. Converting snowflake schemas to star schemas
C. Increasing column cardinality
D. Enabling bidirectional filtering

Correct Answer: B

Explanation:
A star schema simplifies joins and filter propagation, improving both storage engine efficiency and DAX performance.


4. A measure uses multiple nested SUMX and FILTER functions over a large fact table. Which change is most likely to improve performance?

A. Replace the measure with a calculated column
B. Introduce DAX variables to reuse intermediate results
C. Add more visuals to cache results
D. Convert the table to DirectQuery

Correct Answer: B

Explanation:
Using DAX variables (VAR) prevents repeated evaluation of expressions, significantly improving formula engine performance.


5. Which practice helps reduce memory usage and improve performance in Import mode models?

A. Keeping all columns for future use
B. Increasing the number of calculated columns
C. Removing unused columns and tables
D. Enabling Auto Date/Time for all tables

Correct Answer: C

Explanation:
Removing unused columns reduces model size, memory consumption, and scan time, improving overall performance.


6. What is the primary benefit of using aggregation tables in composite models?

A. They eliminate the need for relationships
B. They allow queries to be answered without scanning detailed fact tables
C. They automatically optimize visuals
D. They replace Direct Lake storage

Correct Answer: B

Explanation:
Aggregation tables allow Power BI to satisfy queries using pre-summarized Import data, avoiding expensive scans of large fact tables.


7. Which visual design choice is most likely to degrade report performance?

A. Using explicit measures
B. Limiting visuals per page
C. Using high-cardinality fields in slicers
D. Using report-level filters

Correct Answer: C

Explanation:
Slicers on high-cardinality columns generate expensive queries and increase interaction overhead.


8. When optimizing report interactions, which action can improve performance without changing the data model?

A. Enabling all cross-highlighting
B. Disabling unnecessary visual interactions
C. Adding calculated tables
D. Switching to DirectQuery

Correct Answer: B

Explanation:
Disabling unnecessary visual interactions reduces the number of queries triggered by user actions.


9. Which DAX practice is recommended for improving performance in enterprise semantic models?

A. Use implicit measures whenever possible
B. Prefer calculated columns over measures
C. Minimize row context and iterators on large tables
D. Use ALL() in every calculation

Correct Answer: C

Explanation:
Iterators and row context are expensive on large tables. Minimizing their use improves formula engine efficiency.


10. Performance Analyzer shows fast query execution but slow visual rendering. What is the most likely cause?

A. Inefficient DAX measures
B. Poor relationship design
C. Too many or overly complex visuals
D. Incorrect storage mode

Correct Answer: C

Explanation:
When rendering time is high but queries are fast, the issue is usually visual complexity, not the model or DAX.


AI in Human Resources: From Administrative Support to Strategic Workforce Intelligence

“AI in …” series

Human Resources has always been about people—but it’s also about data: skills, performance, engagement, compensation, and workforce planning. As organizations grow more complex and talent markets tighten, HR teams are being asked to move faster, be more predictive, and deliver better employee experiences at scale.

AI is increasingly the engine enabling that shift. From recruiting and onboarding to learning, engagement, and workforce planning, AI is transforming how HR operates and how employees experience work.


How AI Is Being Used in Human Resources Today

AI is now embedded across the end-to-end employee lifecycle:

Talent Acquisition & Recruiting

  • LinkedIn Talent Solutions uses AI to match candidates to roles based on skills, experience, and career intent.
  • Workday Recruiting and SAP SuccessFactors apply machine learning to rank candidates and surface best-fit applicants.
  • Paradox (Olivia) uses conversational AI to automate candidate screening, scheduling, and frontline hiring at scale.

Resume Screening & Skills Matching

  • Eightfold AI and HiredScore use deep learning to infer skills, reduce bias, and match candidates to open roles and future opportunities.
  • AI shifts recruiting from keyword matching to skills-based hiring.

Employee Onboarding & HR Service Delivery

  • ServiceNow HR Service Delivery uses AI chatbots to answer employee questions, guide onboarding, and route HR cases.
  • Microsoft Copilot for HR scenarios help managers draft job descriptions, onboarding plans, and performance feedback.

Learning & Development

  • Degreed and Cornerstone AI recommend personalized learning paths based on role, skills gaps, and career goals.
  • AI-driven content curation adapts as employee skills evolve.

Performance Management & Engagement

  • Betterworks and Lattice use AI to analyze feedback, goal progress, and engagement signals.
  • Sentiment analysis helps HR identify burnout risks or morale issues early.

Workforce Planning & Attrition Prediction

  • Visier applies AI to predict attrition risk, model workforce scenarios, and support strategic planning.
  • HR leaders use AI insights to proactively retain key talent.

Those are just a few examples of AI tools and scenarios in use. There are a lot more AI solutions for HR out there!


Tools, Technologies, and Forms of AI in Use

HR AI platforms combine people data with advanced analytics:

  • Machine Learning & Predictive Analytics
    Used for attrition prediction, candidate ranking, and workforce forecasting.
  • Natural Language Processing (NLP)
    Powers resume parsing, sentiment analysis, chatbots, and document generation.
  • Generative AI & Large Language Models (LLMs)
    Used to generate job descriptions, interview questions, learning content, and policy summaries.
    • Examples: Workday AI, Microsoft Copilot, Google Duet AI, ChatGPT for HR workflows
  • Skills Ontologies & Graph AI
    Used by platforms like Eightfold AI to map skills across roles and career paths.
  • HR AI Platforms
    • Workday AI
    • SAP SuccessFactors Joule
    • Oracle HCM AI
    • UKG Bryte AI

And there are AI tools being used across the entire employee lifecycle.


Benefits Organizations Are Realizing

Companies using AI effectively in HR are seeing meaningful benefits:

  • Faster Time-to-Hire and reduced recruiting costs
  • Improved Candidate and Employee Experience
  • More Objective, Skills-Based Decisions
  • Higher Retention through proactive interventions
  • Scalable HR Operations without proportional headcount growth
  • Better Strategic Workforce Planning

AI allows HR teams to spend less time on manual tasks and more time on high-impact, people-centered work.


Pitfalls and Challenges

AI in HR also carries significant risks if not implemented carefully:

Bias and Fairness Concerns

  • Poorly designed models can reinforce historical bias in hiring, promotion, or pay decisions.

Transparency and Explainability

  • Employees and regulators increasingly demand clarity on how AI-driven decisions are made.

Data Privacy and Trust

  • HR data is deeply personal; misuse or breaches can erode employee trust quickly.

Over-Automation

  • Excessive reliance on AI can make HR feel impersonal, especially in sensitive situations.

Failed AI Projects

  • Some initiatives fail because they focus on automation without aligning to HR strategy or culture.

Where AI Is Headed in Human Resources

The future of AI in HR is more strategic, personalized, and collaborative:

  • AI as an HR Copilot
    Assisting HR partners and managers with decisions, documentation, and insights in real time.
  • Skills-Centric Organizations
    AI continuously mapping skills supply and demand across the enterprise.
  • Personalized Employee Journeys
    Tailored learning, career paths, and engagement strategies.
  • Predictive Workforce Strategy
    AI modeling future talent needs based on business scenarios.
  • Responsible and Governed AI
    Stronger emphasis on ethics, explainability, and compliance.

How Companies Can Gain an Advantage with AI in HR

To use AI as a competitive advantage, organizations should:

  1. Start with High-Trust Use Cases
    Recruiting efficiency, learning recommendations, and HR service automation often deliver fast wins.
  2. Invest in Clean, Integrated People Data
    AI effectiveness depends on accurate and well-governed HR data.
  3. Design for Fairness and Transparency
    Bias testing and explainability should be built in from day one.
  4. Keep Humans in the Loop
    AI should inform decisions—not make them in isolation.
  5. Upskill HR Teams
    AI-literate HR professionals can better interpret insights and guide leaders.
  6. Align AI with Culture and Values
    Technology should reinforce—not undermine—the employee experience.

Final Thoughts

AI is reshaping Human Resources from a transactional function into a strategic engine for talent, culture, and growth. The organizations that succeed won’t be those that automate HR the most—but those that use AI to make work more human, more fair, and more aligned with business outcomes.

In HR, AI isn’t about replacing people—it’s about improving efficiency, elevating the candidate and employee experiences, and helping employees thrive.

Understanding the Power BI DAX “GENERATE / ROW” Pattern

The GENERATE / ROW pattern is an advanced but powerful DAX technique used to dynamically create rows and expand tables based on calculations. It is especially useful when you need to produce derived rows, combinations, or scenario-based expansions that don’t exist physically in your data model.

This article explains what the pattern is, when to use it, how it works, and provides practical examples. It assumes you are familiar with concepts such as row context, filter context, and iterators.


What Is the GENERATE / ROW Pattern?

At its core, the pattern combines two DAX functions:

  • GENERATE() – Iterates over a table and returns a union of tables generated for each row.
  • ROW() – Creates a single-row table with named columns and expressions.

Together, they allow you to:

  • Loop over an outer table
  • Generate one or more rows per input row
  • Shape those rows using calculated expressions

In effect, this pattern mimics a nested loop or table expansion operation.


Why This Pattern Exists

DAX does not support procedural loops like for or while.
Instead, iteration happens through table functions.

GENERATE() fills a critical gap by allowing you to:

  • Produce variable numbers of rows per input row
  • Apply row-level calculations while preserving relationships and context

Function Overview

GENERATE

GENERATE (
    table1,
    table2
)

  • table1: The outer table being iterated.
  • table2: A table expression evaluated for each row of table1.

The result is a flattened table containing all rows returned by table2 for every row in table1.


ROW

ROW (
    "ColumnName1", Expression1,
    "ColumnName2", Expression2
)

  • Returns a single-row table
  • Expressions are evaluated in the current row context

When Should You Use the GENERATE / ROW Pattern?

This pattern is ideal when:

✅ You Need to Create Derived Rows

Examples:

  • Generating “Start” and “End” rows per record
  • Creating multiple event types per transaction

✅ You Need Scenario or Category Expansion

Examples:

  • Actual vs Forecast vs Budget rows
  • Multiple pricing or discount scenarios

✅ You Need Row-Level Calculations That Produce Rows

Examples:

  • Expanding date ranges into multiple calculated milestones
  • Generating allocation rows per entity

❌ When Not to Use It

  • Simple aggregations → use SUMX, ADDCOLUMNS
  • Static lookup tables → use calculated tables or Power Query
  • High-volume fact tables without filtering (can be expensive)

Basic Example: Expanding Rows with Labels

Scenario

You have a Sales table:

OrderIDAmount
1100
2200

You want to generate two rows per order:

  • One for Gross
  • One for Net (90% of gross)

DAX Code

Sales Breakdown =
GENERATE (
    Sales,
    ROW (
        "Type", "Gross",
        "Value", Sales[Amount]
    )
    &
    ROW (
        "Type", "Net",
        "Value", Sales[Amount] * 0.9
    )
)


Result

OrderIDTypeValue
1Gross100
1Net90
2Gross200
2Net180

Key Concept: Context Transition

Inside ROW():

  • You are operating in row context
  • Columns from the outer table (Sales) are directly accessible
  • No need for EARLIER() or variables in most cases

This makes the pattern cleaner and easier to reason about.


Intermediate Example: Scenario Modeling

Scenario

You want to model multiple pricing scenarios for each product.

ProductBasePrice
A50
B100

Scenarios:

  • Standard (100%)
  • Discounted (90%)
  • Premium (110%)

DAX Code

Product Pricing Scenarios =
GENERATE (
    Products,
    UNION (
        ROW ( "Scenario", "Standard",   "Price", Products[BasePrice] ),
        ROW ( "Scenario", "Discounted", "Price", Products[BasePrice] * 0.9 ),
        ROW ( "Scenario", "Premium",    "Price", Products[BasePrice] * 1.1 )
    )
)


Result

ProductScenarioPrice
AStandard50
ADiscounted45
APremium55
BStandard100
BDiscounted90
BPremium110

Advanced Example: Date-Based Expansion

Scenario

For each project, generate two milestone rows:

  • Start Date
  • End Date
ProjectStartDateEndDate
X2024-01-012024-03-01

DAX Code

Project Milestones =
GENERATE (
    Projects,
    UNION (
        ROW (
            "Milestone", "Start",
            "Date", Projects[StartDate]
        ),
        ROW (
            "Milestone", "End",
            "Date", Projects[EndDate]
        )
    )
)

This is especially useful for timeline visuals or event-based reporting.


Performance Considerations ⚠️

The GENERATE / ROW pattern can be computationally expensive.

Best Practices

  • Filter the outer table as early as possible
  • Avoid using it on very large fact tables
  • Prefer calculated tables over measures when expanding rows
  • Test with realistic data volumes

Common Mistakes

❌ Using GENERATE When ADDCOLUMNS Is Enough

If you’re only adding columns—not rows—ADDCOLUMNS() is simpler and faster.

❌ Forgetting Table Shape Consistency

All ROW() expressions combined with UNION() must return the same column structure.

❌ Overusing It in Measures

This pattern is usually better suited for calculated tables, not measures.


Mental Model to Remember

Think of the GENERATE / ROW pattern as:

“For each row in this table, generate one or more calculated rows and stack them together.”

If that sentence describes your problem, this pattern is likely the right tool.


Final Thoughts

The GENERATE / ROW pattern is one of those DAX techniques that feels complex at first—but once understood, it unlocks entire classes of modeling and analytical solutions that are otherwise impossible.

Used thoughtfully, it can replace convoluted workarounds, reduce model complexity, and enable powerful scenario-based reporting.

Thanks for reading!