PL-300 sample exam questions

15 exam-style questions for Microsoft PL-300: Power BI Data Analyst, with answers and explanations. Take them as a timed practice exam first if you want a score out of 1000.

  1. Question 1Single choiceTopic 1
    A business intelligence (BI) developer creates a dataflow in Power BI that uses DirectQuery to access tables from an on-premises Microsoft SQL server. The
    Enhanced Dataflows Compute Engine is turned on for the dataflow.
    You need to use the dataflow in a report. The solution must meet the following requirements:
    ✑ Minimize online processing operations.
    ✑ Minimize calculation times and render times for visuals.
    ✑ Include data from the current year, up to and including the previous day.
    What should you do?
    1. A
      Create a dataflows connection that has DirectQuery mode selected.
    2. B
      Create a dataflows connection that has DirectQuery mode selected and configure a gateway connection for the dataset.
    3. C
      Create a dataflows connection that has Import mode selected and schedule a daily refresh.
    4. D
      Create a dataflows connection that has Import mode selected and create a Microsoft Power Automate solution to refresh the data hourly.
    Show answer

    Correct answer: C

    Why

    Importing the dataflow data and scheduling a daily refresh gives fast, in-memory visuals and data up to the previous day with minimal online processing. DirectQuery against the dataflow would push queries to the compute engine every time someone uses a visual, and hourly refreshes through Power Automate add unnecessary processing.

  2. Question 2Drag and drop: orderTopic 1
    DRAG DROP

    You use Power Query Editor to preview the data shown in the following exhibit.



    You need to clean and transform the query so that all the rows of data are maintained, and error values in the discount column are replaced with a discount of 0.05. The solution must minimize administrative effort.

    Which three actions should you perform in sequence? To answer, move the appropriate actions from the list of actions to the answer area and arrange them in the correct order.

    Arrange 3 of these in the correct order:

    • Select the discount column.
    • Select the price column.
    • For the discount column, change Data Type to Decimal Number.
    • For the discount column, change Data Type to Whole Number.
    • Select Replace Errors to replace each error value with 0.05.
    Show answer
    1. Select the discount column.
    2. For the discount column, change Data Type to Decimal Number.
    3. Select Replace Errors to replace each error value with 0.05.
    Why

    Select the discount column and set its type to Decimal Number, because Whole Number would round values such as 0.08 to 0. Then use Replace Errors to put 0.05 in place of the errors. This keeps every row, while Remove Errors would delete rows.

  3. Question 3Single choiceTopic 2
    You are reviewing a Power BI data model.

    You have a calculated table that has the following definition.

    ProductList = INTERSECT ( ProductsGroupA, ProductsGroupB )

    You need to identify the results of the DAX expression.

    Which rows will be returned in ProductList?
    1. A
      all the rows in ProductsGroupB that have a matching row in ProductsGroupA
    2. B
      all the rows in both tables
    3. C
      all the rows in ProductsGroupA that have a matching row in ProductsGroupB
    4. D
      all the rows in ProductsGroupA that have no matching row in ProductsGroupB.
    Show answer

    Correct answer: C

    Why

    INTERSECT(ProductsGroupA, ProductsGroupB) returns the rows of the first table (A) that also appear in the second table (B), keeping duplicates from A. EXCEPT would return the rows of A with no match in B, and UNION would return all rows from both.

  4. Question 4HotspotTopic 2
    HOTSPOT

    You have a Power BI report with the Edit relationship page open as shown in the following exhibit.



    Use the drop-down menus to select the answer choice that completes each statement based on the information presented in the graphic.

    NOTE: Each correct selection is worth one point.

    If you filter the Code column in Table2, Table1 will [answer choice].be filtered / be merged / not be filtered
    If you add the fields from both Table1 and Table2 to a table visual, the Code column from Table2 will display [answer choice] value.a BLANK / a NaN / an ERROR
    Show answer
    • If you filter the Code column in Table2, Table1 will [answer choice]. not be filtered
    • If you add the fields from both Table1 and Table2 to a table visual, the Code column from Table2 will display [answer choice] value. a BLANK
    Why

    The relationship is one-to-many from Table1 to Table2 with single cross-filter direction, so filters flow only from Table1 to Table2. Table1 code SM has no matching row in Table2, so Table2's Code shows a blank for it.

  5. Question 5Drag and dropTopic 3
    DRAG DROP

    You have a Power BI report that contains three pages. The pages are used to analyze sales across various countries.

    You add a slicer named Country to each page of the report.

    You need to configure the report to meet the following requirements:

    • When a user selects a country on the first page, the report must filter the other pages.
    • The second and third pages must display only the filtered results.

    Which task should you perform for each requirement? To answer, drag the appropriate task to the correct requirement. Each task may be used once, more than once, or not at all. You may need to drag the split bar between panes or scroll to view content.

    NOTE: Each correct selection is worth one point.

    Move each item to the matching row:

    • Add the Country field to the filters on all the pages
    • Configure the Country slicer to sync across all the pages
    • Configure the Country slicer to sync only on the second and third pages
    • Hide the Country slicer on the second and third pages
    • When a user selects a country on the first page, the report must filter the other pages:
    • The second and third pages must display only the filtered results:
    Show answer
    • When a user selects a country on the first page, the report must filter the other pages: Configure the Country slicer to sync across all the pages
    • The second and third pages must display only the filtered results: Hide the Country slicer on the second and third pages
    Why

    Sync slicers carries the first page's selection to every page. Hiding the slicer on pages two and three, while keeping it synced, means those pages still apply the filter but users there see only the results and cannot change the selection.

  6. Question 6Single choiceTopic 3
    You have a Power BI report that will be rendered on a vertical display.

    You need to maximize the portion of the screen area used by the report.

    What should you do?
    1. A
      From the Canvas background setting of Power BI Desktop, configure the Image fit setting.
    2. B
      From the Canvas settings of Power BI Desktop, set a custom width and height.
    3. C
      From Power BI Desktop, select Personalize visuals.
    4. D
      From the Power BI service, enable the Pages pane.
    Show answer

    Correct answer: B

    Why

    In Power BI Desktop's Canvas settings, choose a custom page size with a width and height that match the portrait display, so the report fills the screen. Background image fit only stretches the image, Personalize visuals is for readers, and the Pages pane takes up space.

  7. Question 7Single choiceTopic 4
    From Power BI Desktop, you publish a new dataset and report to a Power BI workspace. The dataset has a row-level security (RLS) role named HR.
    You need to ensure that the HR team members have RLS applied when they view reports based on the dataset.
    What should you do?
    1. A
      From powerbi.com, add users to the HR role for the dataset.
    2. B
      From powerbi.com, share the dataset to the HR team members.
    3. C
      From Power BI Desktop, change the Row-Level Security settings.
    4. D
      From Power BI Desktop, import a table that contains the HR team members.
    Show answer

    Correct answer: A

    Why

    RLS roles are defined in Power BI Desktop, but membership is assigned after publishing. In the Power BI service, open the semantic model's Security settings and add the HR team (preferably a security group) to the HR role. Sharing the dataset alone does not map users to the role.

  8. Question 8HotspotTopic 4
    HOTSPOT

    You have two Power BI workspaces named WorkspaceA and WorkspaceB. WorkspaceA contains two datasets named Sales and HR.

    You need to provide a user named User1 with access to the WorkspaceB. The solution must meet the following requirements:

    • Create reports that use the HR dataset.
    • Publish the reports to WorkspaceB.
    • Prevent the ability to modify the HR dataset.
    • Prevent the ability to add users to Workspaces.

    What should you do? To answer, select the appropriate options in the answer area.

    NOTE: Each correct selection is worth one point.

    To access the HR dataset:Assign User1 the Contributor role for WorkspaceA. / Grant User1 the Build permission for the HR dataset. / Grant User1 read permissions for the HR dataset. / Grant User1 share permissions for the HR dataset.
    To publish reports to WorkspaceB:Assign User1 the Admin role for Workspaces. / Assign User1 the Contributor role for WorkspaceA. / Assign User1 the Contributor role for WorkspaceB. / Assign User1 the Member role for WorkspaceB.
    Show answer
    • To access the HR dataset: Grant User1 the Build permission for the HR dataset.
    • To publish reports to WorkspaceB: Assign User1 the Contributor role for WorkspaceB.
    Why

    Build permission lets User1 create reports from the HR dataset without being able to modify it, whereas a WorkspaceA Contributor could edit it. Contributor on WorkspaceB allows publishing reports there but not adding users, which Member and Admin can do.

  9. Question 9Single choiceTopic 5
    You create a Power BI workspace named Workspace1.

    You publish a semantic model and a report to Workspace1.

    You need to configure Workspace1 to meet the following requirements:

    • Provide access to a group named Sales.
    • Ensure that Sales can invite other users to Workspace1.
    • Follow the principle of least privilege.

    Which role should you assign to Sales?
    1. A
      Contributor
    2. B
      Member
    3. C
      Admin
    4. D
      Viewer
    Show answer

    Correct answer: B

    Why

    The case requires near-real-time data from the on-premises SQL Server, so DirectQuery through the on-premises data gateway is needed. The gateway data source uses a stored database credential. Import would show stale data, and passing end-user credentials (SSO) is not required by the scenario.

  10. Question 10Drag and drop: orderTopic 5
    DRAG DROP

    You have a Power BI semantic model.

    You need to configure row-level security (RLS) to restrict data access for users that have the Viewer permissions.

    Which three actions should you perform in sequence? To answer, move the appropriate actions from the list of actions to the answer area and arrange them in the correct order.

    Arrange 3 of these in the correct order:

    • Assign the users the Contributor role for the Power BI workspace.
    • Publish the semantic model.
    • Assign the users the Member role for the Power BI workspace.
    • From the Power BI service, assign the new RLS role to the users.
    • From Microsoft Power BI Desktop, create a new RLS role by using a DAX filter.
    Show answer
    1. From Microsoft Power BI Desktop, create a new RLS role by using a DAX filter.
    2. Publish the semantic model.
    3. From the Power BI service, assign the new RLS role to the users.
    Why

    RLS roles and their DAX filters are defined in Power BI Desktop, then published with the model. Members are assigned to roles in the service. RLS applies only to Viewers, so giving users Contributor or Member would bypass it because those roles have Write permission.

  11. Question 11Single choiceTopic 6
    You need to configure access for the sales department users. The solution must the meet the security requirements.
    What should you do?
    1. A
      Share each report to the Azure Active Directory group of the sales department.
    2. B
      Add the Azure Active Directory group of the sales department as an Admin of the reports workspace.
    3. C
      Distribute an app to the users in the Azure Active Directory group of the sales department.
    4. D
      Add the sales department as a member of the reports workspace.
    Show answer

    Correct answer: D

    Why

    The community chose app distribution, but an app grants only read access. The sales department must create, edit and delete content, manage permissions, publish and unpublish the app, and assign groups to workspace roles. Microsoft lists exactly these as Member role capabilities, so the least-privilege fit is Member, not Admin.

  12. Question 12Single choiceTopic 7
    Which DAX expression should you use to get the ending balances in the balance sheet reports?
    1. A
      CALCULATE ( SUM( BalanceSheet[BalanceAmount] ), LASTDATE ( 'Date'[Date] ) )
    2. B
      CALCULATE ( SUM( BalanceSheet[BalanceAmount] ), DATESQTD('Date'[Date]) )
    3. C
      FIRSTNONBLANK ('Date'[Date] SUM( BalanceSheet[BalanceAmount] ) )
    4. D
      CALCULATE ( MAX( BalanceSheet[BalanceAmount] ), LASTDATE ('Date'[Date] ))
    Show answer

    Correct answer: A

    Why

    Balance sheet amounts are semi-additive snapshots, so the ending balance is the balance on the last date of the selected period. CALCULATE(SUM(BalanceSheet[BalanceAmount]), LASTDATE('Date'[Date])) returns it. DATESQTD would add up balances across the quarter, MAX returns the largest single row, and FIRSTNONBLANK returns a date rather than the ending balance.

  13. Question 13Single choiceTopic 8
    You merge data from Sales_Region, Region_Manager, Sales_Manager, and Manager into a single table named Region.
    What should you do next to meet the reporting requirements of the executives?
    1. A
      Create a DAX calculated column that retrieves the region manager from the Weekly_Returns table based on the sales_region_id column.
    2. B
      Apply row-level security (RLS) to the Region table based on the sales manager username.
    3. C
      Configure a bi-directional relationship between Region and Sales_Region.
    4. D
      In the Region table, create a hierarchy that has the manager name, and then the sales manager name.
    Show answer

    Correct answer: D

    Why

    After merging the manager tables into Region, creating a hierarchy (region manager name, then sales manager name) lets executives drill from region managers down to sales managers, as their reporting requirements ask. RLS, bidirectional relationships and a lookup column do not provide the drill-down.

  14. Question 14Single choiceTopic 11
    You need to create the On-Time Shipping report. The report must include a visualization that shows the percentage of late orders.
    Which type of visualization should you create?
    1. A
      pie chart
    2. B
      scatterplot
    3. C
      bar chart
    Show answer

    Correct answer: C

    Why

    The percentage of late orders has to be compared across many countries and shipping regions, which a bar chart shows clearly. A pie chart only works for a few parts of a whole and cannot show the percentage per country well, and a scatterplot compares two numeric measures.

  15. Question 15Single choiceTopic 14
    What is the minimum number of Power BI datasets needed to support the reports?
    1. A
      a single imported dataset
    2. B
      two imported datasets
    3. C
      two DirectQuery datasets
    4. D
      a single DirectQuery dataset
    Show answer

    Correct answer: B

    Why

    The scenario's reports draw on data with different security and refresh requirements that cannot share one model. Two imported semantic models (datasets) is the minimum that supports all the reports. DirectQuery is not needed for the required data freshness and would slow the reports.