Microsoft

PL-400 Free Practice Questions — Page 2

Question 6

You are building an integration by using Dataverse. As part of a single request, the integration must create a new row if it does not already exist or update the existing row by using supported mechanisms. You need to validate which Dataverse features can implement the requirement. Which three Dataverse features can you use? Each correct answer presents a complete solution. NOTE: Each correct selection is worth one point.

A. Client-side script
B. Cloud flow
C. Business rule
D. Plug-in
E. PCF control
Show Answer
Correct Answer: A, B, D
Explanation:
The requirement describes an UPSERT (create if not exists, otherwise update) performed as part of a single request using supported Dataverse mechanisms. - Client-side script can call the Dataverse Web API using alternate keys or If-None-Match/If-Match headers to perform an upsert. - Cloud flows support upsert behavior by using the Dataverse connector with alternate keys (for example, Update a row when it exists or create when it does not). - Plug-ins can use the Dataverse SDK UpsertRequest to create or update a row within a single operation. Business rules and PCF controls are focused on validation and UI behavior and cannot implement server-side upsert logic.

Question 6

A model-driven app form has JavaScript that runs during the OnLoad event. The event retrieves an account record and changes visibility to a form column based on one of the record columns. The following portion of code retrieves the account record: Xrm.WebApi.retrieveRecord('account', accountId)_ Users report that the form loads slowly. You need to improve the performance of the code that retrieves the account and changes visibility. What should you do?

A. Use a synchronous XMLHttpRequest instead.
B. Add the code to change visibility to the success callback.
C. Enable the Async OnLoad app setting.
D. Set the options parameter to return only the column required.
E. Store the returned data in a global variable.
Show Answer
Correct Answer: D
Explanation:
Xrm.WebApi.retrieveRecord retrieves all columns by default, which increases payload size and slows form load. By setting the options parameter (e.g., ?$select=columnname) to return only the required column, the request transfers less data and executes faster. Other options either do not improve performance or can make it worse (synchronous calls).

Question 7

HOTSPOT - A form in a model-driven app contains a custom command button with several rules that determine the button’s visibility and JavaScript registered on the OnLoad and OnSave events. You must address two issues with the form: • The command button is hidden but must be visible. • An unexpected behavior occurs when users save the form. You must determine whether it is caused by the JavaScript code. You need to troubleshoot the issues by using URL parameters. Which parameters should you append to the form URL? To answer, select the appropriate options in the answer area NOTE: Each correct selection is worth one point.

Illustration for PL-400 question 7
Show Answer
Correct Answer: Command button visibility: &ribbondebug=true Unexpected form save behavior: &flags=DisableFormHandlers=true
Explanation:
ribbondebug=true forces the ribbon to show diagnostic details and bypasses visibility rules so hidden command buttons can be inspected. DisableFormHandlers=true disables form event handlers (OnLoad/OnSave JavaScript), allowing you to verify whether custom JavaScript is causing the unexpected save behavior.

Question 7

HOTSPOT - You are extending a model-driven app by using modern commanding in Power Fx. When a user selects a button on the Opportunity form, the button must trigger an automation to generate a document by updating a single column in Dataverse. Users must affirm the action before it takes place and receive a message after it completes successfully. You need to write the formula. How should you complete the code segment? To answer, select the appropriate options in the answer area. NOTE: Each correct selection is worth one point.

Illustration for PL-400 question 7
Show Answer
Correct Answer: Confirm Patch ThisItem Notify
Explanation:
Confirm prompts the user to affirm the action. Patch updates a single Dataverse column on the selected Opportunity. ThisItem references the current record in modern commanding. Notify displays a success message after completion.

Question 8

A company uses Microsoft Power Platform for development. Developers for the company spend many hours deploying customizations in a single solution to several downstream environments. Developers do not have access to any Microsoft or third-party integrated developer environments (IDEs). You need to recommend a solution that automates deployment to the environment. What should you recommend?

A. Use production environments.
B. Use Azure DevOps.
C. Use the maker portal.
D. Create a configuration migration package.
Show Answer
Correct Answer: B
Explanation:
Automating deployment of Power Platform solutions across multiple environments is best achieved with Azure DevOps pipelines. Azure DevOps supports Power Platform build and release tasks that export, unpack, version, and import solutions automatically, eliminating manual deployment effort. Configuration migration packages are primarily for data/configuration movement and do not provide end‑to‑end automated solution deployment.

Question 8

You are testing security in a model-driven app. The business unit structure in the environment consists of a top-level business unit with three business units, named BusA, BusB, and BusC, directly under it. BusA users must be able to view records in only their business unit. You observe that BusA users have security roles from BusB and BusC assigned to them. The BusA users can view records in those business units. All security role privileges are set to the Business Unit level. You need to correct the problem with record access. Which two actions should you perform? Each correct answer presents part of the solution. NOTE: Each correct selection is worth one point.

A. Turn off the feature that controls record ownership across business units.
B. Create a security role for BusA users in the parent business unit with privileges set to Business Unit level.
C. Move BusA users to the parent business unit. Assign security roles with Parent Child Business Units privileges.
D. Ensure security role privileges are set to User level.
Show Answer
Correct Answer: A, B
Explanation:
BusA users can see records in BusB and BusC because cross-business-unit record ownership is enabled and they have roles from those business units. To restrict access, you should disable the feature that allows record ownership across business units and ensure users have roles created in (and owned by) the parent business unit with privileges scoped to Business Unit level. Changing privileges to User level or moving users to the parent BU does not address the root cause.

Question 9

A global company based in North America maintains several Dataverse instances, including instances based in Europe. A single Microsoft Entra ID tenant is used by the organization, with the default location of North America. Compliance rules dictate that data must remain within the European Union data boundary. You develop a plugin for the company. Users encounter an issue with the plug-in within an environment located in Germany. You are unable to replicate the issue in any other environment. You need to debug the issue in a separate environment in the default region of the company and adhere to all necessary compliance rules. What should you do?

A. Copy the environment.
B. Create a new developer environment. Register the plug-in.
C. Back up and restore the environment.
D. Create a new sandbox environment Register the plug-in.
Show Answer
Correct Answer: B
Explanation:
EU data residency rules prevent copying or restoring EU data into a North America–based environment. Sandbox, copy, or restore options would involve moving data and violate compliance. Creating a new developer environment in the default region allows you to deploy and debug the plug-in code without transferring EU data, which is the only compliant option.

Question 10

HOTSPOT - You are implementing security features for a Dataverse plug-in that you created. The plug-in creates a Note whenever a user updates an Account row in Dataverse. The plug-in has the following security requirements: • Users must have edit-only restrictions for existing accounts that are not their own. • The plug-in must always trigger successfully. • All necessary privileges must be assigned to users within an existing Microsoft Teams site. • The principle of least privilege must always be followed. You need to implement the security features. Which features should you implement? To answer, select the appropriate options in the answer area. NOTE: Each correct selection is worth one point.

Illustration for PL-400 question 10
Show Answer
Correct Answer: Privilege provided to edit accounts: Security role Access level for the Account table: User Update Access level for the Notes table: User Append To Team type to assign privileges to: Microsoft Entra ID Security Group
Explanation:
Edit permissions in Dataverse are granted through security roles, supporting least privilege. User-level Update on Account enforces edit-only access to records a user owns. Creating Notes from a plug-in requires Append on Note and Append To on Account; User-level Append To is sufficient. Assigning roles via a Microsoft Entra ID Security Group linked to a Teams site ensures centralized privilege management while allowing the plug-in to run successfully.

Question 12

A company has a new implementation that will use Dynamics 365 Field Service. A developer adds two custom tables to the solution in a development environment. The custom tables have lookup columns to Field Service tables. The developer creates a new test environment and imports the solution. The developer receives an error that states dependencies are missing. You need to recommend a solution for the missing dependencies issue. What should you recommend?

A. Add the Field Service tables to the solution.
B. Export the solution as unmanaged.
C. Add the custom tables to the solution.
D. Install the Field Service application in test.
Show Answer
Correct Answer: D
Explanation:
The custom tables include lookup columns to Dynamics 365 Field Service tables. Those tables only exist if the Field Service application is installed in the target environment. The development environment has Field Service installed, but the new test environment does not, so the solution import fails due to missing dependencies. Installing the Field Service application in the test environment resolves those dependencies.

Question 13

You are creating a canvas app that will create rows in a Dataverse table. When a row is created, additional business logic must be performed on a related row. A cloud flow triggered by the canvas app must perform the business logic. You need to create the cloud flow. Which trigger should you use?

A. Dataverse - When an action is performed
B. Manually trigger a flow
C. Dataverse - When a row is added
D. Power Apps (V2)
Show Answer
Correct Answer: D
Explanation:
The requirement states that the cloud flow must be triggered by the canvas app and receive data from it. The Power Apps (V2) trigger is designed for canvas apps to directly call a flow and pass parameters (such as the created row ID). Dataverse triggers run on table events regardless of the app and are not explicitly app-invoked.

$19

Get all 406 questions with detailed answers and explanations

  • Instant download HTML + PDF delivered the moment payment clears.
  • Secure Stripe checkout we never see or store your card details.
  • 7-day refund if files are defective see our refund policy.