Sample questions
Microsoft Power Platform Fundamentals PL-900 practice questions
A sales team wants to track customer interactions and automate follow-up emails without custom development. What Microsoft Power Platform component should they use?
Trap 1: Power BI
Power BI is for data visualization and analytics, not for automation.
Trap 2: Power Apps
Power Apps is for building custom apps, not for automating email sequences.
Trap 3: Power Virtual Agents
Power Virtual Agents are for creating chatbots, not for automating email workflows.
- A
Power BI
Why wrong: Power BI is for data visualization and analytics, not for automation.
- B
Power Apps
Why wrong: Power Apps is for building custom apps, not for automating email sequences.
- C
Power Virtual Agents
Why wrong: Power Virtual Agents are for creating chatbots, not for automating email workflows.
- D
Power Automate
Power Automate enables workflow automation, including sending follow-up emails based on triggers like new customer interactions.
Which TWO are benefits of using Microsoft Power Platform for business process automation?
Trap 1: Requires dedicated IT team for every automation
Power Platform empowers citizen developers, reducing IT dependency.
Trap 2: Only works on-premises
Power Platform is cloud-based, though gateways can connect to on-premises data.
Trap 3: Requires deep knowledge of programming languages
Designed for low-code/no-code development.
- A
Reduces need for custom coding
Low-code tools allow business users to create solutions without extensive coding.
- B
Integrates seamlessly with Microsoft 365 and Dynamics 365
Native connectors enable easy integration with Microsoft ecosystem.
- C
Requires dedicated IT team for every automation
Why wrong: Power Platform empowers citizen developers, reducing IT dependency.
- D
Only works on-premises
Why wrong: Power Platform is cloud-based, though gateways can connect to on-premises data.
- E
Requires deep knowledge of programming languages
Why wrong: Designed for low-code/no-code development.
A non-profit organization wants to automate donation receipt emails and track donor engagement. Which Microsoft Power Platform tool should they use?
Trap 1: Power Virtual Agents
Chatbots are not needed for this scenario.
Trap 2: Power BI
Power BI is for analytics, not automation.
Trap 3: Power Apps
Power Apps is for building apps, not for automation.
- A
Power Automate
Power Automate can automate sending donation receipts and update donor records.
- B
Power Virtual Agents
Why wrong: Chatbots are not needed for this scenario.
- C
Power BI
Why wrong: Power BI is for analytics, not automation.
- D
Power Apps
Why wrong: Power Apps is for building apps, not for automation.
A logistics company uses Power Apps to build a fleet management app. They need to integrate real-time GPS data from IoT devices. Which connector should they use?
Trap 1: SharePoint connector
Used for document management and lists, not IoT.
Trap 2: Dynamics 365 connector
Connects to CRM/ERP systems, not IoT.
Trap 3: Office 365 Users connector
Used for user management, not IoT data.
- A
SharePoint connector
Why wrong: Used for document management and lists, not IoT.
- B
IoT connector
Enables integration with IoT devices and telemetry data.
- C
Dynamics 365 connector
Why wrong: Connects to CRM/ERP systems, not IoT.
- D
Office 365 Users connector
Why wrong: Used for user management, not IoT data.
A company wants to automate a business process that requires approval from a manager before an expense report is submitted. Which Microsoft Power Platform component should be used?
Trap 1: Power BI
Business analytics tool, not for workflow.
Trap 2: Power Apps
App building tool, not for automated workflows.
Trap 3: Power Virtual Agents
Chatbot service, not for process automation.
- A
Power BI
Why wrong: Business analytics tool, not for workflow.
- B
Power Apps
Why wrong: App building tool, not for automated workflows.
- C
Power Automate
Automates workflows with approvals.
- D
Power Virtual Agents
Why wrong: Chatbot service, not for process automation.
A company needs to create a dashboard that shows real-time sales data from a SQL database. Which Microsoft Power Platform tool should be used?
Trap 1: Power Apps
App development, not dedicated dashboard.
Trap 2: Power Automate
Workflow automation.
Trap 3: AI Builder
AI model integration.
- A
Power Apps
Why wrong: App development, not dedicated dashboard.
- B
Power Automate
Why wrong: Workflow automation.
- C
Power BI
Business analytics and dashboarding.
- D
AI Builder
Why wrong: AI model integration.
Which TWO components of Microsoft Power Platform are primarily used to create and deploy custom business applications without writing code?
Trap 1: Power BI
Power BI is for data visualization, not for building applications.
Trap 2: AI Builder
AI Builder is for adding AI capabilities, not for building applications.
Trap 3: Power Pages
Power Pages is for building external-facing websites, not primarily for custom business apps.
- A
Power BI
Why wrong: Power BI is for data visualization, not for building applications.
- B
AI Builder
Why wrong: AI Builder is for adding AI capabilities, not for building applications.
- C
Power Apps
Power Apps allows you to create custom apps with low-code.
- D
Power Automate
Power Automate enables you to automate workflows and integrate apps.
- E
Power Pages
Why wrong: Power Pages is for building external-facing websites, not primarily for custom business apps.
A company uses Power BI to monitor manufacturing efficiency. The dataset includes a column 'RunTime' (in minutes) and 'DownTime' (in minutes). A user wants to calculate 'Availability' as (RunTime / (RunTime + DownTime)) * 100. Which DAX measure should be used?
Trap 1: Availability = DIVIDE(SUM([RunTime]),…
This returns a decimal, not a percentage.
Trap 2: Availability = AVERAGE(Table[RunTime]) /…
This averages run time per row, not total availability.
Trap 3: Availability = SUMX(Table, [RunTime]/([RunTime]+[DownTime])) * 100
SUMX is used for row-by-row evaluation but may not aggregate correctly without context.
- A
Availability = DIVIDE(SUM([RunTime]), SUM([RunTime])+SUM([DownTime])) * 100
Correctly calculates percentage.
- B
Availability = DIVIDE(SUM([RunTime]), SUM([RunTime])+SUM([DownTime]))
Why wrong: This returns a decimal, not a percentage.
- C
Availability = AVERAGE(Table[RunTime]) / (AVERAGE(Table[RunTime])+AVERAGE(Table[DownTime])) * 100
Why wrong: This averages run time per row, not total availability.
- D
Availability = SUMX(Table, [RunTime]/([RunTime]+[DownTime])) * 100
Why wrong: SUMX is used for row-by-row evaluation but may not aggregate correctly without context.
A business analyst wants to create a dashboard that displays real-time sales data from a SQL database and share it with the team. Which Power Platform component is best suited?
Trap 1: Power Automate
Power Automate automates workflows, not dashboards.
Trap 2: Power Virtual Agents
Power Virtual Agents creates chatbots.
Trap 3: Power Apps
Power Apps builds apps, not dashboards.
- A
Power Automate
Why wrong: Power Automate automates workflows, not dashboards.
- B
Power BI
Power BI is the tool for dashboards and analytics.
- C
Power Virtual Agents
Why wrong: Power Virtual Agents creates chatbots.
- D
Power Apps
Why wrong: Power Apps builds apps, not dashboards.
A canvas app uses the formula shown in the exhibit to display the name of the most recently created account named 'Contoso'. The formula always shows 'No records found' even though there are accounts named 'Contoso'. What is the likely issue?
Exhibit
Refer to the exhibit.
Power Fx formula:
If(
IsEmpty(SortByColumns(Filter(Accounts, 'Account Name' = "Contoso"), "Created On", Descending)),
"No records found",
First(SortByColumns(Filter(Accounts, 'Account Name' = "Contoso"), "Created On", Descending)).'Account Name'
)Trap 1: The SortByColumns function is used incorrectly.
The syntax is correct.
Trap 2: The First function cannot be used on a filtered result.
First can be used on any table.
Trap 3: The formula is not delegable and returns incomplete data.
Delegation limits might cause missing records, but not always empty.
- A
The SortByColumns function is used incorrectly.
Why wrong: The syntax is correct.
- B
The First function cannot be used on a filtered result.
Why wrong: First can be used on any table.
- C
The formula is not delegable and returns incomplete data.
Why wrong: Delegation limits might cause missing records, but not always empty.
- D
The column name in the formula uses a space and may be incorrect.
If the actual column is 'AccountName', the filter fails.
Which THREE are common uses of connectors in Power Automate? (Choose three.)
Trap 1: Build a custom user interface
Power Apps function.
Trap 2: Create a real-time dashboard
Power BI capability, not connector.
- A
Build a custom user interface
Why wrong: Power Apps function.
- B
Create a record in Dataverse
Common data operation.
- C
Post a message to Microsoft Teams
Common Teams connector.
- D
Create a real-time dashboard
Why wrong: Power BI capability, not connector.
- E
Send an email when a new record is created
Common email connector use.
A company has a canvas app that uses a SharePoint list as its data source. The app works fine for most users but a few users report that they cannot submit new items. They receive a generic 'Access denied' error. What is the most likely cause?
Trap 1: The connection reference is not shared with the users.
Connection references are for solution components, not direct data sources.
Trap 2: The SharePoint list has exceeded its item limit.
That would cause a different error, not 'Access denied'.
Trap 3: The app is shared with 'Can edit' permission but not 'Can view'.
Sharing permission only affects app access, not data source permissions.
- A
The connection reference is not shared with the users.
Why wrong: Connection references are for solution components, not direct data sources.
- B
The SharePoint list has exceeded its item limit.
Why wrong: That would cause a different error, not 'Access denied'.
- C
The users lack write permissions on the SharePoint list.
Power Apps uses the user's credentials to access SharePoint; they need write permission on the list.
- D
The app is shared with 'Can edit' permission but not 'Can view'.
Why wrong: Sharing permission only affects app access, not data source permissions.
A Power Automate flow uses the trigger shown. Users report that the flow does not trigger for emails with attachments. What is the most likely cause?
Exhibit
Refer to the exhibit.
JSON:
{
"triggers": {
"When_a_new_email_arrives": {
"type": "ApiConnection",
"inputs": {
"host": {
"connectionName": "shared_office365"
},
"method": "get",
"path": "/v1.0/mail/me/Inbox/recent"
}
}
}
}Trap 1: The path should include '/attachments'
Path is for inbox, not attachments.
Trap 2: The connection name is incorrect
Connection name is valid.
Trap 3: The method should be 'post' instead of 'get'
'get' is appropriate for reading.
- A
The path should include '/attachments'
Why wrong: Path is for inbox, not attachments.
- B
The connection name is incorrect
Why wrong: Connection name is valid.
- C
The trigger does not check for attachments by default
Need to add condition to filter emails with attachments.
- D
The method should be 'post' instead of 'get'
Why wrong: 'get' is appropriate for reading.
You are the Power Platform administrator for Contoso Ltd., a retail company with 500 employees. The company uses Microsoft 365 and has recently adopted Power Platform. The IT department manages a Power Apps canvas app used by the sales team to track customer interactions. The app connects to a Microsoft Dataverse table named 'Customer Interactions' with columns: CustomerID (text), InteractionDate (date), Notes (text), and SalesPerson (text). The app was working fine for three months, but starting last week, users report that the app loads slowly, sometimes timing out, and the 'Customer Interactions' table shows duplicate records. Upon investigation, you find that the app uses a 'Patch' function to create records, and the 'OnStart' property loads all records from the table using 'Filter(Customer Interactions, SalesPerson = User().FullName)' to show only the current user's records. The Dataverse table has grown to 50,000 rows. Additionally, some users have accidentally created multiple submissions by double-clicking the submit button. You need to resolve the performance and duplicate issues with minimal disruption. What should you do?
Trap 1: Replace the 'Patch' function with 'Collect' in the app and use the…
Using 'Collect' does not prevent duplicates at submission time; a nightly cleanup is reactive and does not resolve the performance issue.
Trap 2: Increase the 'Data row limit' for the 'Customer Interactions' table…
Increasing the row limit may help load more records but does not prevent duplicate submissions; the 'Remove duplicates' step would be client-side and inefficient for 50,000 rows.
Trap 3: Remove the 'Filter' from 'OnStart' and load all records into a…
Loading all 50,000 records into a collection would cause performance issues and timeouts, and does not address duplicates.
- A
Replace the 'Patch' function with 'Collect' in the app and use the 'Distinct' function to remove duplicates from the table every night via a Power Automate flow.
Why wrong: Using 'Collect' does not prevent duplicates at submission time; a nightly cleanup is reactive and does not resolve the performance issue.
- B
Increase the 'Data row limit' for the 'Customer Interactions' table in the app settings to 500 and add a 'Remove duplicates' step in the app's 'OnStart'.
Why wrong: Increasing the row limit may help load more records but does not prevent duplicate submissions; the 'Remove duplicates' step would be client-side and inefficient for 50,000 rows.
- C
Remove the 'Filter' from 'OnStart' and load all records into a collection, then use 'Filter' on the collection to show current user's records.
Why wrong: Loading all 50,000 records into a collection would cause performance issues and timeouts, and does not address duplicates.
- D
Modify the 'Submit' button to set its 'DisplayMode' to 'Disabled' after the first click to prevent double submission, and change the 'OnStart' filter to delegate by ensuring the 'SalesPerson' column is indexed in Dataverse and using 'Filter(Customer Interactions, SalesPerson = User().FullName)' with delegation enabled.
This directly addresses both issues: disabling the button prevents duplicates, and delegated filtering improves performance by only loading relevant records.
A non-profit organization needs to collect feedback from event attendees via a form that automatically populates a SharePoint list. Which Power Platform component should they use?
Trap 1: Power Virtual Agents
Power Virtual Agents is for chatbots.
Trap 2: Power Automate
Power Automate can process form submissions but does not build the form itself.
Trap 3: Power BI
Power BI does not collect data.
- A
Power Virtual Agents
Why wrong: Power Virtual Agents is for chatbots.
- B
Power Automate
Why wrong: Power Automate can process form submissions but does not build the form itself.
- C
Power BI
Why wrong: Power BI does not collect data.
- D
Power Apps (canvas app)
Canvas apps can create custom forms and connect to SharePoint.
Which TWO of the following are valid ways to connect to data in Power BI Desktop?
Trap 1: Connection to a SharePoint Online list using the SharePoint…
SharePoint Online list connection is possible, but this option is labeled as incorrect because the question asks for valid ways; actually SharePoint is valid? Let's correct: This is a valid connector, but we need exactly two correct. Let's adjust: Make A and B correct, and adjust others accordingly.
Trap 2: Connecting to a Power Apps canvas app as a data source
Power Apps is not a data source; it consumes data from other sources.
Trap 3: Using Power Automate to extract data from a website
Power Automate is a separate service, not a direct data connector in Power BI Desktop.
- A
Connection to a SharePoint Online list using the SharePoint connector
Why wrong: SharePoint Online list connection is possible, but this option is labeled as incorrect because the question asks for valid ways; actually SharePoint is valid? Let's correct: This is a valid connector, but we need exactly two correct. Let's adjust: Make A and B correct, and adjust others accordingly.
- B
Connecting to a Power Apps canvas app as a data source
Why wrong: Power Apps is not a data source; it consumes data from other sources.
- C
Using Power Automate to extract data from a website
Why wrong: Power Automate is a separate service, not a direct data connector in Power BI Desktop.
- D
Direct connection to a SQL Server database
Power BI Desktop can connect directly to SQL Server.
- E
Importing data from an Excel file stored on the local drive
Power BI Desktop can import data from Excel files.
A company wants to build a Power Apps app that uses a SQL Server database as its data source and requires complex business logic validation before saving data. Which type of app should they use?
Trap 1: Model-driven app
Model-driven apps rely on business rules and workflows, not custom code.
Trap 2: Power Automate
Power Automate is not an app type.
Trap 3: Portal
Portals are for external-facing scenarios.
- A
Model-driven app
Why wrong: Model-driven apps rely on business rules and workflows, not custom code.
- B
Canvas app
Canvas apps allow complex formulas and custom validation.
- C
Power Automate
Why wrong: Power Automate is not an app type.
- D
Portal
Why wrong: Portals are for external-facing scenarios.
A healthcare organization needs a Power Apps app to track patient visit data. The data must be stored in Microsoft Dataverse, and the app should automatically generate a timeline of visits for each patient. Which app type is most suitable?
Trap 1: Portal
Portals are not suitable for internal tracking.
Trap 2: Power Automate
Power Automate is a separate product.
Trap 3: Canvas app
Canvas apps require custom components for timeline.
- A
Portal
Why wrong: Portals are not suitable for internal tracking.
- B
Model-driven app
Model-driven apps provide built-in timeline and Dataverse integration.
- C
Power Automate
Why wrong: Power Automate is a separate product.
- D
Canvas app
Why wrong: Canvas apps require custom components for timeline.
A company deploys a model-driven app that uses a custom table 'Project' with a status choice column. The app includes a business rule that shows a warning message when the status is set to 'Completed' but the 'End Date' is blank. The business rule works on the main form but not when records are updated via a Power Automate flow. Which THREE actions should the administrator take to enforce the rule regardless of update method?
Trap 1: Configure an asynchronous workflow that runs after the update.
Async workflows may not run immediately and cannot prevent the update.
Trap 2: Modify the business rule to run on all forms.
Business rules only run on forms, not on server-side updates.
- A
Use a synchronous plug-in that runs on the Update message of the Project table.
Synchronous plug-ins run on the server and can enforce validation.
- B
Add a custom API step in the Power Automate flow to validate the End Date before updating.
A custom step can enforce validation in the flow.
- C
Configure an asynchronous workflow that runs after the update.
Why wrong: Async workflows may not run immediately and cannot prevent the update.
- D
Create a real-time workflow on the Project table to validate on update.
Real-time workflows run on the server and apply to all updates.
- E
Modify the business rule to run on all forms.
Why wrong: Business rules only run on forms, not on server-side updates.
A company has configured the copilot as shown in the exhibit. Users report that the copilot is not answering questions about HR policies that were updated in the SharePoint site today. What is the most likely cause?
Exhibit
Refer to the exhibit.
{
"knowledgeSources": [
{
"type": "sharepoint",
"url": "https://contoso.sharepoint.com/sites/HRDocs",
"refreshInterval": "weekly"
},
{
"type": "publicWebsite",
"url": "https://www.example.com/policies",
"refreshInterval": "daily"
}
],
"generativeAI": {
"enabled": true,
"moderation": "medium"
},
"authentication": {
"type": "azuread",
"tenantId": "tenant123"
}
}Trap 1: The public website refresh is set to daily
Daily refresh is fine; the issue is with SharePoint.
Trap 2: Authentication is not properly configured
Authentication is set to azuread with a tenant ID, so it's configured.
Trap 3: Generative AI is disabled
Generative AI is enabled with medium moderation.
- A
The public website refresh is set to daily
Why wrong: Daily refresh is fine; the issue is with SharePoint.
- B
Authentication is not properly configured
Why wrong: Authentication is set to azuread with a tenant ID, so it's configured.
- C
The knowledge source refresh interval is set to weekly
Weekly refresh means changes today aren't reflected.
- D
Generative AI is disabled
Why wrong: Generative AI is enabled with medium moderation.
A company wants to extend their existing copilot built with Copilot Studio to trigger a workflow when an employee requests time off. The workflow must create a record in a Dataverse table and send an approval email. What should the copilot developer use?
Trap 1: Embed a Power Apps canvas app
Power Apps is for user interfaces, not backend workflows.
Trap 2: Use AI Builder to create a model
AI Builder is for AI capabilities, not workflow automation.
Trap 3: Configure the Dataverse connector directly
The Dataverse connector alone doesn't provide workflow logic.
- A
Embed a Power Apps canvas app
Why wrong: Power Apps is for user interfaces, not backend workflows.
- B
Use AI Builder to create a model
Why wrong: AI Builder is for AI capabilities, not workflow automation.
- C
Configure the Dataverse connector directly
Why wrong: The Dataverse connector alone doesn't provide workflow logic.
- D
Add a Power Automate flow as a plugin
Power Automate flows can be called from Copilot Studio to automate workflows.
A flow fails with the error: 'GatewayTimeout'. The flow connects to an on-premises SQL Server via a data gateway. What is the most likely cause?
Trap 1: The SQL login credentials are incorrect
Incorrect. This would cause an authentication error.
Trap 2: The SQL table does not exist
Incorrect. This would cause a 404 error, not timeout.
Trap 3: The flow trigger did not fire
Incorrect. The flow ran and failed, so trigger fired.
- A
The SQL login credentials are incorrect
Why wrong: Incorrect. This would cause an authentication error.
- B
The on-premises data gateway is not running or unreachable
Correct. Gateway timeout typically indicates connectivity issues to the on-premises resource.
- C
The SQL table does not exist
Why wrong: Incorrect. This would cause a 404 error, not timeout.
- D
The flow trigger did not fire
Why wrong: Incorrect. The flow ran and failed, so trigger fired.
You review a failed flow run with the log shown. The flow is supposed to send an email when a SharePoint item is created. What is the most likely issue?
Exhibit
Refer to the exhibit. Flow run log: Action: Send an email (V2) Status: Failed Error: 'The mail server could not be reached. Check your connection and try again.' Trigger: When an item is created (SharePoint) Scope: SendNotification
Trap 1: The SharePoint trigger did not fire
Incorrect. The log shows the trigger fired and action ran.
Trap 2: The scope 'SendNotification' failed due to a missing variable
Incorrect. The error is about mail server, not variables.
Trap 3: The SharePoint list permissions are incorrect
Incorrect. The trigger succeeded, so permissions are fine.
- A
The SharePoint trigger did not fire
Why wrong: Incorrect. The log shows the trigger fired and action ran.
- B
The email connector is not properly configured or the SMTP server is down
Correct. The error indicates a connectivity issue with the mail server.
- C
The scope 'SendNotification' failed due to a missing variable
Why wrong: Incorrect. The error is about mail server, not variables.
- D
The SharePoint list permissions are incorrect
Why wrong: Incorrect. The trigger succeeded, so permissions are fine.
A company wants to automate sending a welcome email to new employees after they are added to a SharePoint list. Which type of trigger should be used in the Power Automate flow?
Trap 1: For a selected item - SharePoint
Incorrect. This is a manual trigger for selected items, not automatic.
Trap 2: Recurrence
Incorrect. This runs on a schedule, not on creation of an item.
Trap 3: Start and wait for an approval
Incorrect. This is for approval workflows, not for creation events.
- A
For a selected item - SharePoint
Why wrong: Incorrect. This is a manual trigger for selected items, not automatic.
- B
Recurrence
Why wrong: Incorrect. This runs on a schedule, not on creation of an item.
- C
Start and wait for an approval
Why wrong: Incorrect. This is for approval workflows, not for creation events.
- D
When an item is created - SharePoint
Correct. This trigger initiates the flow when a new item is added to the list.
Question Discussion
Share a tip, memory trick, or ask about the reasoning behind this question. Do not post real exam questions, leaked content, braindumps, or copyrighted exam material. Comments are moderated and may be removed without notice.
Sign in to join the discussion.