Microsoft PL-200 Power Platform Functional Consultant Exam Dumps and Practice Test Questions Set1 Q1-20

Visit here for our full Microsoft PL-200 exam dumps and practice test questions.

Question 1: 

You are configuring a model-driven app for a sales team. Users need to see accounts and their related contacts on the same form. Which component should you use to display related contacts?

A) Lookup field

B) Subgrid

C) Quick view form

D) Business process flow

Answer: B) Subgrid

Explanation:

A subgrid is the most suitable component for presenting multiple related records within a form in model-driven apps. When working with parent–child relationships—such as an account that may have many contact records—a subgrid offers a consolidated grid-style view directly on the parent form. This design enables users to review, create, edit, and manage related records without navigating away from the primary record they are working on, resulting in a smoother and more efficient user experience.

Subgrids can be configured to display a specific system or custom view, giving app designers granular control over which related records appear and how they are presented. They support a range of customizations, including filtering criteria, sorting options, column selection, and layout adjustments. Because the subgrid automatically maintains the relationship context between the parent and child records, users don’t have to manually associate new records—they are linked to the parent automatically when created from the subgrid.

In the scenario of showing multiple contacts associated with an account, placing a subgrid on the account form provides sales team members with immediate visibility into all related contacts. Users can quickly scan the list, open individual contact records for more details, or use built-in toolbar actions to add new contacts directly from the account form. This approach not only streamlines workflows but also reduces the number of clicks required to navigate between related entities.

Other components do not meet this requirement as effectively. A lookup field is limited to selecting or viewing a single related record, making it unsuitable for displaying a list of many contacts. A quick view form only shows read-only information from a single related record and cannot display multiple child records at once. Business process flows, while valuable for guiding users through stages and activities, are not designed to surface lists of related records.

Question 2: 

Your organization uses Dataverse to store customer information. You need to ensure that when a contact’s email address is updated, the same email address is automatically updated in all related accounts. What should you implement?

A) Business rule

B) Power Automate flow

C) Calculated field

D) Rollup field

Answer: B) Power Automate flow

Explanation:

Power Automate flow is the correct solution for propagating data changes across related records in Dataverse. When you need to update multiple related records based on a change in another record, Power Automate provides the flexibility and capability to handle this complex logic. You would create an automated cloud flow triggered when a contact’s email address is modified, then use the flow to identify all related accounts and update their corresponding email fields.

This approach allows you to implement sophisticated update logic including conditional checks, error handling, and notifications. Power Automate can query related records using Dataverse connectors, iterate through multiple accounts, and perform bulk updates efficiently. The flow can also handle scenarios where the relationship between contacts and accounts is many-to-many, ensuring all relevant records are updated consistently.

Business rules have limitations in that they cannot update related records or perform actions across different tables. They work only within the context of a single form or record. Calculated fields are read-only and compute values based on formulas but cannot trigger updates to other records. Rollup fields aggregate data from related records but don’t push updates to them. For cross-record data synchronization scenarios like this one, Power Automate flow provides the necessary automation capabilities to maintain data consistency across related Dataverse tables.

Question 3: 

You are designing a canvas app that needs to display data from multiple SharePoint lists. The app must work offline. Which data source connection type should you use?

A) Direct connection

B) Tabular data source

C) Imported data

D) Delegable data source

Answer: C) Imported data

Explanation:

Imported data is the correct and most reliable choice for enabling offline functionality in canvas apps. When data from SharePoint lists is imported into a canvas app, a full copy of the information is stored locally within the app package. This means the data becomes available to users even when they lose internet connectivity. The app downloads the necessary records during the initial load or at scheduled refresh points and securely caches them for offline use. Because the data is stored within the app, users are not dependent on live server calls to access important information.

This approach greatly benefits users working in environments where network availability is unpredictable. Field technicians, inspectors, sales representatives, and on-site service teams often work in locations without stable internet access. With imported data, these users can continue viewing records, updating information, and completing tasks without interruption. Any changes they make while offline can be stored locally and synced back to SharePoint automatically once a connection is restored. This ensures consistency and accuracy of information across the organization.

Direct connections to SharePoint, on the other hand, require continuous internet access. If a user loses connectivity, the app cannot fetch or update records, making direct connections unsuitable for offline scenarios. While SharePoint is recognized as a tabular data source, simply connecting to it does not provide offline capabilities. Delegable data sources deal with query performance and scalability but do not store information offline by default.

For canvas apps that need true offline capability, importing the data is the essential and recommended method. It ensures the app remains functional, provides a smooth user experience, and supports uninterrupted productivity regardless of network conditions. This approach also aligns well with real-world usage patterns where users must be able to rely on their apps at all times.

Question 4: 

You need to create a security role that allows users to read all accounts but only edit accounts they own. Which privilege level should you assign for the Edit privilege on the Account table?

A) Organization

B) Business Unit

C) User

D) Parent: Child Business Units

Answer: C) User

Explanation:

The User privilege level is the correct and most precise setting for this requirement. In Dataverse security roles, privilege levels define the scope of access a user has over records, and they play a significant role in ensuring proper data governance. When the Edit privilege for the Account table is configured at the User level, it restricts editing permissions so that users can modify only the account records they personally own. This ownership is determined by the owner field on each record, which associates the record with a specific user or team. Because of this structure, the User privilege level enforces a clear form of record-level security that aligns with scenarios where individual accountability is important.

This level of control supports the principle of least privilege, which recommends granting users only the minimum access necessary to perform their tasks. Many organizations prefer this approach in environments where team members manage their own customer accounts but still benefit from viewing other accounts for reference, collaboration, or planning. By configuring Read privileges at the Organization level and Edit privileges at the User level, administrators can create a balanced security model that allows full visibility without granting unnecessary modification rights.

The other privilege levels—Business Unit, Parent: Child Business Units, and Organization—do not offer the required level of restriction. Business Unit access would allow users to edit any account owned within their entire business unit, which is too broad. Parent: Child Business Units expands it further by including subordinate units. Organization level grants editing rights to every account across the entire environment, which clearly exceeds the intended scope. Only the User level ensures that users have modification rights exclusively to their own accounts while still allowing broader read access through separately configured permissions. This makes the User privilege level the most appropriate and secure choice for the requirement.

Question 5: 

Your company wants to display a notification banner at the top of all model-driven app forms when a record is inactive. What should you configure?

A) Business rule

B) Form notification

C) JavaScript web resource

D) Ribbon command

Answer: C) JavaScript web resource

Explanation:

A JavaScript web resource is the appropriate and most effective solution for implementing conditional notification banners in model-driven apps. Although model-driven apps include built-in form notifications, these notifications cannot function conditionally on their own. They require JavaScript logic to determine when the notification should appear, what it should display, and under what conditions it should be removed. By creating a JavaScript web resource, developers can execute code during the form load event or when specific fields change. In this scenario, the script would check the value of the record’s status field, determine whether the record is inactive, and then call the formContext.ui.setFormNotification method to display a banner that alerts the user.

JavaScript web resources offer a flexible way to implement advanced form functionality that goes beyond what is available through configuration alone. They allow conditional messaging based on field values, user permissions, record ownership, or other contextual data. The notification banner can use different severity levels such as information, warning, or error, allowing the app to communicate the importance of the message clearly. Developers can also create custom messages to inform users why the record is inactive, what limitations exist, and whether any follow-up steps are required. By registering the script on both the form load event and the on-change event of the status field, the notification will always reflect the current state of the record.

Business rules are not suitable for this requirement. They cannot display notification banners and are limited to actions such as setting field values, locking fields, or showing simple error messages. Ribbon commands focus on modifying command bar behavior and do not control form-level notifications. Form notifications exist, but they must be triggered programmatically. Therefore, JavaScript web resources provide the necessary flexibility and control to show conditional notification banners based on record data in model-driven app forms.

Question 6: 

You are creating a Power Automate cloud flow that needs to create records in Dataverse only when specific conditions are met. Which action should you use to evaluate multiple conditions?

A) Condition

B) Switch

C) Do until

D) Apply to each

Answer: A) Condition

Explanation:

The Condition action is the correct choice for evaluating criteria before creating Dataverse records in Power Automate. Condition actions allow you to define logical expressions that determine whether subsequent actions should execute. You can configure simple comparisons or complex expressions using AND/OR operators to evaluate multiple conditions simultaneously. When the condition evaluates to true, the flow proceeds with creating records in Dataverse; when false, it can take alternative actions or simply skip the record creation.

Conditions support various comparison operators including equals, not equals, greater than, less than, contains, and is empty. You can combine multiple conditions to create sophisticated decision logic. For example, you might check if a field value falls within a specific range AND another field contains particular text before proceeding with record creation. The condition action provides two branches: yes and no, allowing you to define different behaviors based on the evaluation outcome.

Switch actions are better suited when you need to evaluate one expression against multiple possible values and take different actions for each value. Do until loops repeat actions until a condition becomes true, which isn’t appropriate for one-time conditional record creation. Apply to each iterates through arrays or collections. None of these alternatives provide the straightforward true/false conditional logic needed for determining whether to create records based on multiple criteria. The Condition action is specifically designed for this type of decision-making in Power Automate flows.

Question 7: 

You need to allow users to export data from a model-driven app view to Excel. The organization uses custom security roles. What permission must users have?

A) Export to Excel permission

B) Read privilege on the table

C) Share privilege on the table

D) Write privilege on the table

Answer: A) Export to Excel permission

Explanation:

The Export to Excel permission is a specific privilege that must be explicitly granted in security roles for users to export data from model-driven app views. This permission is separate from basic CRUD operations and is found under the Core Records tab in security role configuration. Even if users have read access to view records in the app, they cannot export that data to Excel without this additional permission being enabled in their security role.

Export to Excel is considered a privileged operation because it allows users to extract potentially large volumes of data from the system, which has implications for data governance, compliance, and security. Organizations may want to restrict who can export data to prevent unauthorized data extraction or ensure compliance with data protection regulations. The permission can be granted at different levels such as User, Business Unit, or Organization, controlling the scope of data that can be exported.

Read privilege on the table is necessary to view records but doesn’t include export capabilities. Share privilege controls whether users can share records with others. Write privilege allows modifying records. None of these standard privileges automatically grant export functionality. The Export to Excel permission is specifically designed to control data export capabilities independently from other access rights. When configuring security roles for users who need to export data, you must explicitly enable the Export to Excel permission in addition to appropriate read privileges on the relevant tables.

Question 8: 

Your organization uses business process flows to guide users through sales opportunities. You need to allow users to switch to a different business process flow on the same record. What should you enable?

A) Process switching

B) Multiple process flows

C) Concurrent processes

D) Process branching

Answer: B) Multiple process flows

Explanation:

Multiple process flows is the setting that enables users to switch between different business process flows on the same record. When you configure a table to allow multiple process flows, users see an option in the process bar to switch to alternative flows that are also defined for that table. This flexibility is valuable when different scenarios require different guided processes, such as having separate flows for domestic versus international sales opportunities.

To enable this functionality, you must configure the table settings to allow multiple business process flows and ensure that multiple active business process flows exist for that table. Users can then click the process switcher button in the process bar and select from available flows. The current stage and progress in the original flow are preserved, and users can switch back if needed. This capability supports scenarios where business processes vary based on deal type, customer segment, or other factors that might not be apparent when the record is first created.

Process switching is not a standard term in Power Platform. Concurrent processes would imply running multiple processes simultaneously, which isn’t what’s needed here. Process branching refers to creating conditional paths within a single business process flow based on stage rules. These alternatives don’t provide the ability to switch between entirely different business process flows. The multiple process flows setting specifically enables the process switcher functionality that allows users to change which business process flow guides their work on a particular record.

Question 9: 

You are creating a calculated field in Dataverse that needs to display the number of days between two date fields. Which function should you use?

A) DATEVALUE

B) DATEDIFF

C) ADDDAYS

D) DATEFORMAT

Answer: B) DATEDIFF

Explanation:

DATEDIFF is the correct function for calculating the difference between two dates in Dataverse calculated fields. This function takes two date parameters and returns the number of days, months, or years between them depending on how you configure it. For calculating days between dates, you would use the syntax DATEDIFF(startdate, enddate, day) which returns an integer representing the number of days from the start date to the end date.

The DATEDIFF function is commonly used for scenarios like calculating age from a birthdate, determining how many days an opportunity has been open, or measuring time between creation and resolution dates. The function handles date arithmetic automatically, accounting for varying month lengths and leap years. You can specify different time units as the third parameter such as day, month, or year depending on what granularity of time difference you need to calculate.

DATEVALUE converts text strings to date values but doesn’t calculate differences. ADDDAYS adds a specified number of days to a date rather than calculating the difference between two dates. DATEFORMAT converts dates to formatted text strings for display purposes. None of these alternatives perform date difference calculations. When you need to determine the time elapsed between two date fields in a calculated field, DATEDIFF is the appropriate function that provides the arithmetic operation necessary to compute the number of days between the dates.

Question 10: 

You need to create a view in a model-driven app that shows accounts with annual revenue greater than one million dollars and more than fifty employees. What should you configure?

A) View filters with OR logic

B) View filters with AND logic

C) Related records filter

D) Quick find search

Answer: B) View filters with AND logic

Explanation:

View filters with AND logic are the correct configuration for this requirement. When creating a view in model-driven apps, you can add multiple filter conditions and specify whether records must meet all conditions using AND logic or at least one condition using OR logic. In this scenario, accounts must satisfy both criteria simultaneously: annual revenue exceeding one million dollars AND employee count greater than fifty. AND logic ensures only accounts meeting both requirements appear in the view.

To configure this, you would edit the view in the view designer, add a filter for the annual revenue field with a condition of “is greater than” one million, then add another filter for the number of employees field with a condition of “is greater than” fifty. Setting the filter logic to AND means both conditions must be true for a record to be included. This creates a precise filtered list showing only accounts that meet your specified size criteria in terms of both revenue and workforce.

OR logic would show accounts meeting either condition, which would include smaller accounts that only meet one criterion. Related records filters are used to filter based on data from related tables. Quick find search provides text-based searching across multiple fields rather than structured filtering. For combining multiple specific criteria where all must be met, view filters with AND logic provide the correct approach to create a filtered view showing only accounts that satisfy all specified requirements simultaneously.

Question 11: 

Your company wants to prevent users from deleting records in the Account table even if they have delete privileges. What should you implement?

A) Business rule

B) Field-level security

C) JavaScript web resource

D) Security role modification

Answer: C) JavaScript web resource

Explanation:

A JavaScript web resource is the appropriate solution for preventing record deletion beyond security role configurations. While removing delete privileges through security roles is the standard approach, the question implies users have delete privileges that cannot be removed. In this case, you can use JavaScript to disable the delete button and prevent deletion operations programmatically. You would create a JavaScript web resource that executes on form load and uses the formContext API to disable or hide the delete command button, preventing users from initiating deletion.

The JavaScript can implement conditional logic to prevent deletion based on specific criteria such as record status, ownership, or other business rules. You can also intercept the OnSave event and cancel it if it’s a delete operation, providing users with custom error messages explaining why deletion isn’t allowed. This approach provides flexibility to implement complex deletion prevention logic that goes beyond simple role-based security, such as preventing deletion of active records while allowing deletion of draft records.

Business rules cannot control record deletion; they’re limited to field validations and visibility. Field-level security controls access to individual fields, not entire record operations. Security role modification is the standard approach but the question implies this isn’t sufficient. When you need to prevent deletion through custom logic or override default behaviors while users retain delete privileges in their security roles, JavaScript web resources provide the programmatic control necessary to implement deletion prevention at the form level.

Question 12: 

You are configuring a Power Apps portal. Users need to authenticate using their existing social media accounts. What should you configure?

A) Portal authentication settings

B) Azure AD B2C

C) Local authentication

D) WS-Federation

Answer: B) Azure AD B2C

Explanation:

Azure AD B2C (Business to Consumer) is the correct identity solution for enabling social media authentication in Power Apps portals. Azure AD B2C is a customer identity access management solution that supports authentication through social identity providers including Microsoft Account, Google, Facebook, LinkedIn, Twitter, and others. By configuring Azure AD B2C as an identity provider for your portal, you enable users to sign in using their existing social media credentials without creating separate portal-specific accounts.

Setting up Azure AD B2C involves creating an Azure AD B2C tenant, configuring identity providers for the social platforms you want to support, creating user flows that define the authentication experience, and then configuring your Power Apps portal to use Azure AD B2C as an authentication provider. This provides a seamless sign-in experience where users can choose their preferred social identity provider from a list when accessing the portal. User information from social accounts can be captured and stored in portal contact records for profile management.

Portal authentication settings is a general area where you configure identity providers but isn’t itself the solution. Local authentication uses username and password stored in the portal without social identity support. WS-Federation is an enterprise federation protocol typically used for organizational accounts rather than social identities. For enabling social media authentication like Facebook and Google in Power Apps portals, Azure AD B2C provides the comprehensive identity platform designed specifically for consumer-facing applications with social identity provider integration.

Question 13: 

You need to create a rollup field that calculates the total revenue from all related opportunities for each account. What should you configure?

A) Source table: Opportunity, Related table: Account

B) Source table: Account, Related table: Opportunity

C) Calculated field on Account

D) Aggregate function in view

Answer: B) Source table: Account, Related table: Opportunity

Explanation:

The correct configuration is Source table: Account and Related table: Opportunity. When creating rollup fields in Dataverse, you define them on the table where you want the aggregated value to appear, which is the source table. In this scenario, you want the total revenue to display on each account record, so Account is the source table. The related table is where the data comes from that you’re aggregating, which is Opportunity since you’re summing opportunity revenue values.

Rollup fields work by traversing relationships to find related records and performing aggregate calculations. You would configure the rollup field on the Account table with an aggregate function of SUM applied to the revenue field from related Opportunity records. The system automatically maintains this calculated value by updating it when related opportunities change. You can also configure filters to include only specific opportunities, such as won opportunities, in the rollup calculation.

Having Source table as Opportunity and Related table as Account would be backwards, attempting to calculate account values and display them on opportunities. Calculated fields cannot aggregate data from related records; they only perform calculations using fields from the same record. Aggregate functions in views display calculations for the current filtered set of records but don’t store aggregated values on individual records. For calculating and storing aggregated values from related records like total opportunity revenue on accounts, rollup fields configured with the correct source and related table relationship are the appropriate solution.

Question 14: 

Your organization uses Dynamics 365 Sales. You need to ensure that when an opportunity reaches the Propose stage, the system automatically creates a quote. What should you use?

A) Business process flow

B) Power Automate flow

C) Workflow

D) Business rule

Answer: B) Power Automate flow

Explanation:

Power Automate flow is the correct solution for automatically creating related records based on stage changes in business process flows. You would create an automated cloud flow triggered when an opportunity record is updated, specifically when the stage changes to Propose. The flow would then use the Dataverse connector to create a new quote record and associate it with the opportunity. This approach provides flexibility to set default values on the quote, copy relevant information from the opportunity, and handle error scenarios.

Power Automate offers robust integration capabilities and can handle complex creation logic including conditional checks, data transformations, and error handling. You can configure the flow to populate the quote with information from the opportunity such as customer details, products, and pricing. The flow can also send notifications to relevant team members when the quote is created. Using the “When a row is added, modified or deleted” trigger with filters for the stage field ensures the flow only runs when opportunities enter the Propose stage.

Business process flows guide users through stages but don’t automatically create records. Classic workflows could technically accomplish this but are deprecated in favor of Power Automate. Business rules cannot create related records; they only work within a single form. For automating record creation in response to business process flow stage changes, Power Automate flows provide the modern, flexible, and maintainable approach with extensive integration capabilities and proper error handling.

Question 15: 

You are creating a canvas app that needs to display a gallery of items sorted by a custom formula combining multiple fields. Which function should you use?

A) Filter

B) SortByColumns

C) Sort

D) Search

Answer: B) SortByColumns

Explanation:

SortByColumns is the correct function for sorting gallery data by custom formulas or multiple fields in canvas apps. This function allows you to sort a data source by one or more columns and specify ascending or descending order for each. The powerful aspect of SortByColumns is that the columns can be calculated expressions or formulas rather than just simple field names. For example, you could sort by a combination of priority multiplied by age or any other complex calculation.

The syntax is SortByColumns(DataSource, “ColumnName1”, SortOrder.Ascending, “ColumnName2”, SortOrder.Descending) allowing multi-level sorting. You can replace column names with formulas to create custom sort logic. This is particularly useful when your sorting needs don’t align with simple field values but require computed values. The function returns a sorted table that you can assign to a gallery’s Items property to display data in your custom order.

Filter function filters records based on conditions but doesn’t sort them. Sort function can sort by a single column or formula but SortByColumns provides better control for complex scenarios and multiple sort levels. Search function filters data based on text matching across specified fields. When you need to sort gallery data by custom formulas combining multiple fields or require multi-level sorting with specific orders, SortByColumns provides the comprehensive sorting capabilities necessary for sophisticated data presentation in canvas apps.

Question 16: 

You need to configure a security role that allows users to append records to accounts they own but prevents them from appending records to accounts owned by others. Which privilege configuration should you use?

A) Append: User level, Append To: Organization level

B) Append: Organization level, Append To: User level

C) Append: User level, Append To: User level

D) Append: Organization level, Append To: Organization level

Answer: A) Append: User level, Append To: Organization level

Explanation:

The correct configuration is Append privilege at User level and Append To privilege at Organization level. Understanding these two privileges is crucial for controlling relationships in Dataverse. The Append privilege controls which records a user can attach to other records, while Append To controls which records can have other records attached to them. In this scenario, setting Append to User level means users can only attach records they own to other records. Setting Append To to Organization level means their records can be attached to any account in the organization.

These privileges work together to control both sides of relationships. If you want users to be able to attach their activities only to accounts they own, you would set Append at User level (can only append records I own) and Append To at User level (can only append to records I own). However, the question asks for appending to owned accounts while preventing appending to accounts owned by others, which the User level Append privilege accomplishes. The Organization level on Append To ensures that accounts can receive appended records without restriction.

Option B would allow appending any record in the organization but only to user-owned accounts. Option C would restrict both appending and being appended to only user-owned records. Option D would allow appending any record to any account. The combination of Append at User level with Append To at Organization level correctly implements the requirement where users can only append their own records to accounts they own while accounts remain available as targets for appending.

Question 17: 

You are designing a model-driven app form. You need to display a sum of all related order amounts on the account form. What should you add to the form?

A) Calculated field

B) Rollup field

C) Subgrid with aggregate

D) Quick view form

Answer: B) Rollup field

Explanation:

A rollup field is the correct solution for displaying aggregated data from related records on a form. Rollup fields are specifically designed to calculate aggregate values such as sum, count, minimum, or maximum from related records and display the result on the parent record. In this scenario, you would create a rollup field on the Account table that sums the order amount field from all related Order records. This rollup value automatically updates when related orders change and displays directly on the account form.

Rollup fields maintain their calculated values in the database and update based on a system schedule or can be configured for real-time updates. You can add filters to the rollup definition to include only specific related records, such as only active or completed orders. Once created, the rollup field is added to the account form like any other field, displaying the calculated sum. Users see the aggregated total without needing to manually calculate or view individual orders, improving efficiency and data visibility.

Calculated fields only work with data from the same record and cannot aggregate from related records. Subgrids display lists of related records but while they can show column totals visually, they don’t create a stored field value that can be used in other contexts like views or reports. Quick view forms display read-only data from a single related record. For displaying aggregated calculations from multiple related records as a field value on a form, rollup fields provide the appropriate functionality with automatic maintenance and update capabilities.

Question 18: 

Your organization requires that all new contact records must have a phone number before they can be saved. What is the most efficient way to enforce this requirement?

A) JavaScript validation

B) Required field configuration

C) Business rule

D) Power Automate flow

Answer: B) Required field configuration

Explanation:

Required field configuration is the most efficient approach for enforcing mandatory data entry in Dataverse and model-driven apps. By setting the phone number field’s requirement level to “Business Required” in the field definition, you ensure that users cannot save contact records without providing a phone number. This configuration is a built-in feature that requires no custom code or additional components, making it the simplest and most maintainable solution.

Field requirement levels include Optional, Business Recommended, and Business Required. Business Required fields are marked with a red asterisk on forms and prevent form submission if left empty. The validation happens automatically both in the user interface and through API operations, ensuring data completeness regardless of how records are created. This approach has minimal performance impact and works consistently across all forms where the field appears without additional configuration.

JavaScript validation could enforce this requirement but requires custom code that must be maintained and could potentially be bypassed. Business rules can also make fields required but add unnecessary complexity when the built-in field configuration accomplishes the same goal. Power Automate flows could validate after submission but that’s inefficient compared to preventing invalid submissions at the form level. For straightforward field requirement scenarios, using the field’s built-in Business Required configuration is the most efficient, maintainable, and reliable approach to ensuring mandatory data entry.

Question 19: 

You are configuring a canvas app that connects to multiple data sources including SQL Server and SharePoint. Users report the app is slow. What should you implement to improve performance?

A) Delegation

B) Concurrent function

C) Collections

D) Data gateway

Answer: C) Collections

Explanation:

Collections are the appropriate solution for improving performance in canvas apps with multiple data sources. Collections store data in memory within the app, reducing the need for repeated queries to external data sources. You would use the Collect or ClearCollect functions during app startup or at strategic points to load data from SQL Server and SharePoint into collections, then use those collections throughout the app instead of directly querying the data sources repeatedly.

This approach significantly reduces network calls and data source latency because data is retrieved once and cached locally. Collections are particularly effective when working with relatively stable data that doesn’t change frequently during an app session. You can refresh collections periodically or based on user actions to ensure data stays reasonably current. For example, loading reference data, lookup lists, or even transactional data into collections during app initialization improves subsequent screen load times and control responsiveness dramatically.

Delegation helps with large datasets but doesn’t reduce overall data source calls and might not be fully supported by all data sources in your scenario. The Concurrent function allows parallel execution of multiple operations but doesn’t reduce data fetching. Data gateways enable connectivity to on-premises data sources but don’t improve performance once connectivity exists. For improving performance of canvas apps that repeatedly access data from multiple sources, implementing collections to cache frequently accessed data provides significant performance improvements by minimizing network latency and data source query overhead.

Question 20: 

You need to configure a business process flow that includes a stage from a different table. What type of stage should you add?

A) Regular stage

B) Cross-entity stage

C) Related entity stage

D) Branching stage

Answer: B) Cross-entity stage

Explanation:

Cross-entity stage is the correct stage type for including stages from different tables in a business process flow. Business process flows can span multiple tables by incorporating cross-entity stages that transition the flow from one table to another. For example, a sales process might start on a Lead table, transition to an Opportunity table when the lead is qualified, and then move to a Quote table for proposal generation. The cross-entity stage enables this table transition within a single coherent business process flow.

When you add a cross-entity stage, you specify the relationship between the current table and the target table. The business process flow uses this relationship to create or associate records in the new table as the process moves to that stage. Cross-entity stages can be configured to automatically create the related record or allow users to select an existing related record. This capability enables modeling complete business processes that naturally span multiple tables while maintaining a unified guided experience for users.

Regular stages work within a single table and cannot span to other tables. Related entity stage is not a standard term in business process flows. Branching stages create conditional paths within a process based on rules but don’t change the underlying table. When you need to design business process flows that guide users through processes involving multiple Dataverse tables, cross-entity stages provide the mechanism to transition between tables while maintaining process continuity and context.

Leave a Reply

How It Works

img
Step 1. Choose Exam
on ExamLabs
Download IT Exams Questions & Answers
img
Step 2. Open Exam with
Avanset Exam Simulator
Press here to download VCE Exam Simulator that simulates real exam environment
img
Step 3. Study
& Pass
IT Exams Anywhere, Anytime!