PL-400 by Microsoft
PL-400 by Microsoft
A. Add the maintenance history app to the Field Service Mobile app.
B. Add the manager Power BI dashboard to the Field Service mobile app.
C. Create a new maintenance canvas app from within the Power BI management dashboard.
D. Add the maintenance history app to the Power BI dashboard.
Answer : D
Power BI enables data insights and better decision-making, while Power Apps enables everyone to build and use apps that connect to business data. Using the
Power Apps visual, you can pass context-aware data to a canvas app, which updates in real time as you make changes to your report. Now, your app users can derive business insights and take actions from right within
their Power BI reports and dashboards.
Reference:
https://docs.microsoft.com/en-us/powerapps/maker/canvas-apps/powerapps-custom-visual
Box 1: Custom self-service portal for both employers and job candidates
If you select an environment that contains customer engagement, you can create the following portals:
✑ Customer self-service portal: A customer self-service portal enables customers to access self-service knowledge, support resources, view the progress of their cases, and provide feedback.
✑ Partner portal: A partner portal allows every organization with resellers, distributors, suppliers, or partners to have real-time access to every stage of shared activities.
✑ Employee self-service portal: An employee self-service portal creates an efficient and well-informed workforce by streamlining common tasks and empowering every employee with a definitive source of knowledge.
Box 2: Model-driven app with push notifications
Compared to canvas apps, model-driven apps in PowerApps are based on underlying data ג€" specifically, the data stored in Common Data Service (CDS).
Box 3: Webform with target set to the job custom entity
Box 4: Configure a value for the Execute Workflow on Redeeming Contact option only.
Execute Workflow on Redeeming Contact: A workflow process to be executed when the invite is redeemed. The workflow will be passed the redeeming contact as the primary entity.
Box 5: Configure the value for the Assigned to Account option only.
Assign to Account: An account record to be associated as the redeeming contact's parent customer when the invite is redeemed.
Reference:
https://docs.microsoft.com/en-us/powerapps/maker/portals/portal-templates https://global.hitachi-solutions.com/blog/canvas-vs-model-driven-apps https://docs.microsoft.com/en-
us/powerapps/maker/portals/configure/invite-contacts#invitation-attributes
✑ When an online order for pickup is received, require store staff to enter an estimated time in an app. Staff must prepare the order and then use the app to notify the customer when the order is ready.
✑ Allow the store manager to personalize the company's corporate weekly newsletter and add store-specific specials.
You must minimize the amount of custom code and configuration required to implement the solution.
What should you use? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Hot Area:
Answer :
A. YAML
B. WSDL
C. OpenAPI definition
D. Postman collection
Answer : CD
A. SQL Server
B. Common Data Service
C. Azure Data Factory
D. Azure Table Storage
Answer : AB
When you are creating reports from large data sources (perhaps millions of records), you want to minimize network traffic.
Working with large data sets requires using data sources and formulas that can be delegated. It's the only way to keep your app performing well and ensure users can access all the information they need. Delegation is
supported for certain tabular data sources only.
These tabular data sources are the most popular, and they support delegation:
✑ Common Data Service
✑ SharePoint
✑ SQL Server
Reference:
https://docs.microsoft.com/en-us/powerapps/maker/canvas-apps/delegation-overview
Answer :
Box 1: Out-of-the-box -
Technicians can use the Field Service (Dynamics 365) mobile app to scan barcodes.
Answer :
Answer : B
Real-time Workflows roll back all changes if it fails. As the Workflow is going through the process itself, if it fails, it will roll back all of the prior steps taken.
Incorrect Answers:
A: With Background Workflows, actions will not roll back if it fails. All changes are up-to-date until the failure occurs. The workflow will stop at this point due to the failure.
Reference:
https://ledgeviewpartners.com/blog/what-are-the-differences-between-real-time-and-background-workflows-in-microsoft-dynamics-365-crm/
Answer :
A. Content snippet
B. Web page
C. Web template
D. Page template
E. Portal settings
Answer : BCD
Liquid is an open-source template language integrated into portals. It can be used to add dynamic content to pages, and to create a wide variety of custom templates. Using Liquid, you can:
✑ Add dynamic content directly to the Copy field of a webpage or the content of a content snippet.
✑ Store source content by using web templates, entirely through configuration within Power Apps, for use throughout the Power Apps portals content management system.
✑ Render a website header and primary navigation bar, entirely through configuration within Power Apps.
Note: page is one of the available liquid objects.
Reference:
https://docs.microsoft.com/en-us/powerapps/maker/portals/liquid/liquid-overview https://docs.microsoft.com/en-us/powerapps/maker/portals/liquid/liquid-objects#page
Question 11 ( Question Set 1 )
DRAG DROP -
Teachers in a school district use Azure skill bots to teach specific classes. Students sign into an online portal to submit completed homework to their teacher for review. Students use a Power Virtual Agents chatbot to
request help from teachers.
You need to incorporate the skill bot for each class into the homework bot.
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.
Select and Place:
Answer :
A. None
B. Global Assembly Cache (GAC)
C. Sandbox
D. Disk
Answer : C
You will find options related to the isolation mode and location for the assembly. These refer to options that apply to on-premise deployments. Dataverse is not available for on-premises deployments, so you will
always accept the default options of SandBox and Database for these options.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/data-platform/register-plug-in
Answer : AD
A: The Portal Management app lets you do advanced configuration actions on your portal.
1. Open the Portal Management app.
2. Go to Portals > Web Pages.
3. To edit an existing web page, select the web page name.
4. Enter appropriate values in the fields.
5. Select Save & Close.
D: To use the WYSIWYG editor:
1. Edit the portal to open it in Power Apps portals Studio.
2. Select the page on which you want to add the component.
3. Select an editable element on the canvas.
Reference:
https://docs.microsoft.com/en-us/powerapps/maker/portals/configure/web-page https://docs.microsoft.com/en-us/powerapps/maker/portals/compose-page
A. Power Automate
B. Common Data Service plug-in
C. Web API
D. Custom workflow activity
Answer : A
Improve operational efficiency with a unified view of business data by creating flows that use Dataverse (Common Data Service has been renamed to Microsoft
Dataverse as of November 2020).
For example, you can use Dataverse within Power Automate in these key ways:
Create a flow to import data, export data, or take action (such as sending a notification) when data changes.
Instead of creating an approval loop through email, create a flow that stores approval state in an entity, and then build a custom app in which users can approve or reject items.
Reference:
https://docs.microsoft.com/en-us/power-automate/common-data-model-intro
Answer : A
You create a Power Automate flow that retrieves data from the Microsoft Dataverse Account table.
How should you configure the Dataverse List Rows action? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Answer :
You create an Azure Function to retrieve the required information by using JSON.
Which two actions should you perform? Each correct answer presents part of the solution.
Answer : AE
A company is configuring Microsoft Power Virtual Agents and Power Automate flows that use model-driven apps.
The company has a website that uses Power Pages. You create Power Virtual Agents bot topics.
Answer :
The custom connector must allow the region to be entered for additional regions when creating the connection.
Answer : C
The chat bot must recognize geographic attributes to enable additional functionality.
A. Fallback topic
B. Power Automate Flow
C. Bot Service compliance
D. Slot filling
Answer : D
Answer : B
The Sales Azure AD security group is linked to a pre-existing Microsoft Dataverse Azure AD security group team that is associated with the Sales security role. You assign each of the appropriate licenses to each user.
User1 is not listed in the Team Members subgrid for the app. User2 and User3 are listed in the subgrid.
You need to ensure that User1 can use the model-driven app.
A. Change the membership of the Sales Azure AD Security group to Dynamic User.
B. Change the membership type for User1 to Owner in the Azure AD security group.
C. Create an Owner team for the members of the Sales Azure AD group.
D. Ask User1 to sign into the model-driven app.
Answer : D
• The order form must include a column that calculates payments based on how many years the customer wants to finance a bicycle.
• A pop-up box must remind the employee to validate the information entered before saving.
Answer :
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background -
Contoso Pharmaceuticals manufactures and sells drugs to retail and wholesale pharmacies, hospitals, and research facilities.
The company plans to implement Dynamics 365 Sales and Dynamics 365 Finance.
Current environment -
• Contoso maintains a Microsoft Excel workbook that lists all drugs they supply.
• Pharmacies submit order requests through email.
• All information at customer locations is handwritten by customer representatives.
• Contoso uses Cerner, which is a medical industry application that uses a proprietary database.
• Some accounts are referrals from other pharmacies.
• Every pharmacy has its own Dynamics 365 Sales instance.
Requirements -
General -
You must create a model-driven app to meet Contoso’s needs. You must minimize the use of custom code and custom connectors.
Accounts -
• Ensure that the names of the pharmacies are synced between the accounting and the customer management systems.
• Account numbers should be entered automatically into the pharmaceutical system that is in a Cerner database and kept in sync.
• When the account is entered into the system, extra fields must appear if the referral customer box is selected. If the box is not selected, the extra fields must not appear.
• A trigger must be created that changes the Priority field to 1 in the Account record 10 days after an Account record is created.
• A field named Priority_Trigger must be created to trigger the Priority field.
• A field named Facility type field must be added in order to select whether a customer is a retail pharmacy, wholesale pharmacy, research facility, or hospital.
Users -
Reporting -
The graphs must be interactive, and users must be able to drill down on any dimension.
Customizations -
• Ensure that notifications are sent to the sales team when a lead is added by using Slack.
• Ensure that leads have a review stage added to the sales process.
• Doctors must be manually added to a custom entity named Doctor if the doctor is not listed.
• Refill dates for customer prescriptions should be automatically determined and a notification should be sent to the customer.
• Fields for the doctor’s name and phone number must be displayed in the customer record.
• The doctor entered on the customer’s record must be validated against doctors that exist in the system.
• The new solution will be sold to other pharmacies for use. The application must not allow changes to be made.
• The solution must be error free so that when it is installed in other environments it does not cause issues.
Mobile app -
• A custom mobile app must be created to allow salespeople to add or search by pharmacy name.
• Pharmacy records must be uniquely identified by pharmacy name, address, contact name, and phone number.
• When a pharmacy is added by using the mobile app, the phone number must be validated to be all digits.
Answer : A
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background -
Contoso Pharmaceuticals manufactures and sells drugs to retail and wholesale pharmacies, hospitals, and research facilities.
The company plans to implement Dynamics 365 Sales and Dynamics 365 Finance.
Current environment -
• Contoso maintains a Microsoft Excel workbook that lists all drugs they supply.
• Pharmacies submit order requests through email.
• All information at customer locations is handwritten by customer representatives.
• Contoso uses Cerner, which is a medical industry application that uses a proprietary database.
• Some accounts are referrals from other pharmacies.
• Every pharmacy has its own Dynamics 365 Sales instance.
Requirements -
General -
You must create a model-driven app to meet Contoso’s needs. You must minimize the use of custom code and custom connectors.
Accounts -
• Ensure that the names of the pharmacies are synced between the accounting and the customer management systems.
• Account numbers should be entered automatically into the pharmaceutical system that is in a Cerner database and kept in sync.
• When the account is entered into the system, extra fields must appear if the referral customer box is selected. If the box is not selected, the extra fields must not appear.
• A trigger must be created that changes the Priority field to 1 in the Account record 10 days after an Account record is created.
• A field named Priority_Trigger must be created to trigger the Priority field.
• A field named Facility type field must be added in order to select whether a customer is a retail pharmacy, wholesale pharmacy, research facility, or hospital.
Users -
Reporting -
The graphs must be interactive, and users must be able to drill down on any dimension.
Customizations -
• Ensure that notifications are sent to the sales team when a lead is added by using Slack.
• Ensure that leads have a review stage added to the sales process.
• Doctors must be manually added to a custom entity named Doctor if the doctor is not listed.
• Refill dates for customer prescriptions should be automatically determined and a notification should be sent to the customer.
• Fields for the doctor’s name and phone number must be displayed in the customer record.
• The doctor entered on the customer’s record must be validated against doctors that exist in the system.
• The new solution will be sold to other pharmacies for use. The application must not allow changes to be made.
• The solution must be error free so that when it is installed in other environments it does not cause issues.
Mobile app -
• A custom mobile app must be created to allow salespeople to add or search by pharmacy name.
• Pharmacy records must be uniquely identified by pharmacy name, address, contact name, and phone number.
• When a pharmacy is added by using the mobile app, the phone number must be validated to be all digits.
Answer : B
Question 27 ( Question Set 1 )
Case study -
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background -
Contoso Pharmaceuticals manufactures and sells drugs to retail and wholesale pharmacies, hospitals, and research facilities.
The company plans to implement Dynamics 365 Sales and Dynamics 365 Finance.
Current environment -
• Contoso maintains a Microsoft Excel workbook that lists all drugs they supply.
• Pharmacies submit order requests through email.
• All information at customer locations is handwritten by customer representatives.
• Contoso uses Cerner, which is a medical industry application that uses a proprietary database.
• Some accounts are referrals from other pharmacies.
• Every pharmacy has its own Dynamics 365 Sales instance.
Requirements -
General -
You must create a model-driven app to meet Contoso’s needs. You must minimize the use of custom code and custom connectors.
Accounts -
• Ensure that the names of the pharmacies are synced between the accounting and the customer management systems.
• Account numbers should be entered automatically into the pharmaceutical system that is in a Cerner database and kept in sync.
• When the account is entered into the system, extra fields must appear if the referral customer box is selected. If the box is not selected, the extra fields must not appear.
• A trigger must be created that changes the Priority field to 1 in the Account record 10 days after an Account record is created.
• A field named Priority_Trigger must be created to trigger the Priority field.
• A field named Facility type field must be added in order to select whether a customer is a retail pharmacy, wholesale pharmacy, research facility, or hospital.
Users -
Reporting -
The graphs must be interactive, and users must be able to drill down on any dimension.
Customizations -
• Ensure that notifications are sent to the sales team when a lead is added by using Slack.
• Ensure that leads have a review stage added to the sales process.
• Doctors must be manually added to a custom entity named Doctor if the doctor is not listed.
• Refill dates for customer prescriptions should be automatically determined and a notification should be sent to the customer.
• Fields for the doctor’s name and phone number must be displayed in the customer record.
• The doctor entered on the customer’s record must be validated against doctors that exist in the system.
• The new solution will be sold to other pharmacies for use. The application must not allow changes to be made.
• The solution must be error free so that when it is installed in other environments it does not cause issues.
Mobile app -
• A custom mobile app must be created to allow salespeople to add or search by pharmacy name.
• Pharmacy records must be uniquely identified by pharmacy name, address, contact name, and phone number.
• When a pharmacy is added by using the mobile app, the phone number must be validated to be all digits.
The plug-in logic requires access to the record columns before the operation starts and must compare the columns to post-update values.
You need to modify the design of the solution to access the information.
A. Add the code to the plug-in to read the record from the InputParameters collection.
B. Register a pre-image by using the Plug-in Registration Tool. Add the code to the plug-in to read the image from the PreEntityImages collection.
C. Register a post-image by using the Plug-in Registration Tool. Add the code to the plug-in to read the image from the PostEntityImages collection.
D. Add the code to the plug-in to query the data from Dataverse by using the API call based on the record ID.
Answer : C
After you answer a question in this section, you will NOT be able to return to it. As a result, these questions will not appear in the review screen.
A company designs data integration with an external system by using virtual tables.
A. Yes
B. No
Answer : A
After you answer a question in this section, you will NOT be able to return to it. As a result, these questions will not appear in the review screen.
A company designs data integration with an external system by using virtual tables.
A. Yes
B. No
Answer : B
After you answer a question in this section, you will NOT be able to return to it. As a result, these questions will not appear in the review screen.
A company designs data integration with an external system by using virtual tables.
A. Yes
B. No
Answer : B
You need to create the remaining code to insert the follow-up task.
Which three code blocks should you use in sequence? To answer, move the appropriate code sequences from the list of sequences to the answer area and arrange in the correct order.
Answer :
After you answer a question in this section, you will NOT be able to return to it. As a result, these questions will not appear in the review screen.
A company designs data integration with an external system by using virtual tables.
A. Yes
B. No
Answer : B
The Custom API business logic must be encapsulated in a way that does not allow the business logic behavior to be modified or canceled.
You need to set the parameter value of the custom API so it cannot be customized.
Answer : D
Users state that the form takes too long to fully load.
Which three control types can you use? Each correct answer presents a complete solution.
A. timeline
B. quick view form
C. iFrame
D. lookup
Answer : BCD
A. Yes
B. No
Answer : A
Two security models can be used for hierarchies, the Manager hierarchy and the Position hierarchy. The Position hierarchy allows data access across business units. If you are a financial organization, you may prefer
the Manager hierarchy model, to prevent managersג€™ accessing data outside of their business units.
However, if you are a part of a customer service organization and want the managers to access service cases handled in different business units, the Position hierarchy may work better for you.
Note: The hierarchy security model is an extension to the existing security models that use business units, security roles, sharing, and teams. It can be used in conjunction with all other existing security models. The
hierarchy security offers a more granular access to records for an organization and helps to bring the maintenance costs down.
Reference:
https://docs.microsoft.com/en-us/power-platform/admin/hierarchy-security
A. Yes
B. No
Answer : B
Instead use position hierarchy security and define the two departments as positions.
Reference:
https://docs.microsoft.com/en-us/power-platform/admin/hierarchy-security
Answer : B
Instead use position hierarchy security and define the two departments as positions.
Reference:
https://docs.microsoft.com/en-us/power-platform/admin/hierarchy-security
Answer :
Box 1: Entity -
Existing vehicle licensing data must be imported into Microsoft Dataverse and easily queried.
Virtual tables (also known as virtual entities) enable the integration of data residing in external systems by seamlessly representing that data as tables in Microsoft
Dataverse, without replication of data and often without custom coding.
A virtual table is a definition of a table in the Dataverse platform without the associated physical tables for table instances created in the Dataverse database.
Instead during runtime, when a table instance is required, its state is dynamically retrieved from the associated external system.
The following data providers ship with Dataverse:
An OData v4 provider is included with the service and is installed by default. This provider supports create, read (retrieve, retrieve multiple), update and delete operations.
An Azure Cosmos DB -
Answer : BDE
Note: profiles/{id}/activate -
Activate a profile, which starts replication of both the associated table definitions and data.
Answer :
Answer :
Answer :
Box 1: No -
There is a read error.
Box 2: No -
Note: The Environment Maker role can create resources within an environment including apps, connections, custom connectors, gateways, and flows using Power
Automate.
Box 3: Yes -
The System Customizer role is similar to the System Administrator role which enables non-system administrators to customize Dynamics 365. A Customizer is a user who customizes entities, attributes and
relationships.
Box 4: Yes
Answer :
Box 1: Team -
'the studentג€™s current class history must be available to the administrators at the new school.'
Box 2: Many-to-one -
Box 3: Parental -
The N:1 (many-to-one) relationship type exists in the user interface because the designer shows you a view grouped by tables. 1:N relationships actually exist between tables and refer to each table as either a
Primary/Current table or Related table. The related table, sometimes called the child table, has a lookup column that allows storing a reference to a row from the primary table, sometimes called the parent table. A N:1
relationship is just a 1:N relationship viewed from the related table.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/data-platform/user-team-entities https://docs.microsoft.com/en-us/powerapps/maker/data-platform/create-edit-entity-relationships#types-of-table-
relationships
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
NOTE: Each correct selection is worth one point.
Hot Area:
Answer :
Box 1: Yes -
LoadData and SaveData combine to form a simple mechanism to store small amounts of data on a local device. By using these functions, you can add simple offline capabilities to your app.
References:
https://docs.microsoft.com/en-us/powerapps/maker/canvas-apps/offline-apps
A. Liquid
B. CSS
C. iFrame
D. Bootstrap
Answer : A
Liquid is an open-source template language that is integrated natively into Microsoft Power Apps portals. It acts as a bridge between Dataverse and the HTML or text output that is sent to the browser. Liquid can be
used to add dynamic content to pages and to create a variety of custom templates. Additionally, Liquid provides access only to the data and operations that are explicitly allowed by the portals.
Reference:
https://docs.microsoft.com/en-us/learn/modules/liquid-template-language/
Answer :
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
NOTE: Each correct selection is worth one point.
Hot Area:
Answer :
Box 1: No.
An alternate key is needed, not a new field for the record identifier.
Box 2: Yes -
The specified key attributes are not a defined key for the account entity.
Name: EntityKeyNotDefined -
Message: The specified key attributes are not a defined key for the {0} entity
Box 3: Yes -
One way to create an entity is by using the UpsertRequest class. An upsert will create a new entity when there is no existing record that has the unique identifiers included in the entity passed with the request.
Box 4: No -
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/common-data-service/org-service/web-service-error-codes https://docs.microsoft.com/en-us/powerapps/developer/common-data-service/org-
service/entity-operations-update-delete#use-upsert
Box 1: Referential -
Active/ Cascade Active one-to-many entity relationship: Perform the action on all active referencing entity records associated with the referenced entity record.
Box 2: Duration -
Duration - A number value presented as a drop-down list that contains time intervals. A user can select a value from the list or type an integer value that represents the number of minutes. The duration must be
entered in the format: ג€x minutes ג,€ג€x hoursג€ or ג€x daysג€. Hours and days can also be entered using decimals, for example, ג€x.x hoursג€ or ג€x.x daysג€. The values entered must be expressible in minutes,
sub-minute values will be rounded to the nearest minute.
Reference:
https://docs.microsoft.com/en-us/powerapps/maker/common-data-service/define-calculated-fields https://docs.microsoft.com/en-us/power-apps/maker/data-platform/create-edit-field-portal
A. In the development instance, make changes to the solutions that are deployed in the production instance, export the solutions as managed solutions, and import the managed solutions into the production instance.
B. In the development instance, highlight the solution you want to make changes to, select Clone a Patch, make changes, export the solution, and import the solution into the production instance.
C. Export all managed solutions from the development instance and import the solutions into the production instance.
D. In the production instance, import solutions with the same version number or higher when updating solutions.
Answer : AB
A: When you import a managed solution, all component changes will be brought into the environment in a published state.
B: You can apply patches to either managed or unmanaged solutions and include only changes to entities and related entity assets. Patches do not contain any non-customized system components or relationships that
it dependents upon because these components already exist in the deployed-to organization. At some point in your development cycle, you can roll up all the patches into a new solution version to replace the original
solution that the patches were created from.
Reference:
https://docs.microsoft.com/en-us/powerapps/maker/common-data-service/import-update-export-solutions https://docs.microsoft.com/en-us/power-platform/alm/create-patches-simplify-solution-updates
A. Use a Power Automate flow to read data from the parent record and update the child record upon creation.
B. Map table columns from the parent record to the child record.
C. Create a business rule that sets the default values on the child record fields to values from the parent record.
D. Include a quick view form on the child record showing the data from the parent record.
Answer : B
A subgrid exists within a main form and let app users view data within a Dataverse table, typically related to the record currently being reviewed.
Reference:
https://docs.microsoft.com/en-us/powerapps/maker/model-driven-apps/sub-grid-properties-legacy
Answer :
Answer : C
A file column is used for storing file data up to a specified maximum size. A custom or customizable table can have zero or more file columns plus a notes
(annotation) collection with zero to one attachment in each note.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/data-platform/file-attributes
Question 59 ( Question Set 2 )
HOTSPOT -
You are creating a package for a Power Platform solution. The package will include custom code and sample data.
The package must include all files that need to be installed.
You need to configure the package.
Which setting should you use? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Hot Area:
Answer :
Box 1: PackageTemplate.cs -
Define custom code for your package in the PackageTemplate.cs file.
Box 2: ImportConfig.xml -
The sample data and some flat files for solutions specified in the ImportConfig.xml file are imported before the solution import completes.
Answer : B
You can retrieve a global choice (option set) by name (label) using the RetrieveOptionSetRequest message.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/data-platform/org-service/metadata-option-sets
You need to create the entities and relationships to meet the requirements.
Which three actions should you perform? Each correct answer presents part of the solution.
NOTE: Each correct selection is worth one point.
Answer : CDF
Need a Region entity, a intersect entity ContactRegion between Contact and Region, and a way to input region visits.
A. Create new fields on the customer entity for insurance exposure and risk. Write a workflow process that is triggered when a new policy record is created to calculate the sum of values from policy records.
B. Update the Mass Calculate Rollup Field job to trigger when a new policy record is created.
C. Change the frequency of the Calculate Rollup Field recurring job from every hour to every five minutes.
D. Create a plug-in that uses the CalculateRollupFieldRequest method for the rollup field. Configure a step on the Create event for the policy entity for this plug-in.
Answer : D
In case you want to calculate Rollup field immediately whenever child record gets created, updated or deleted, you can write custom C# plugin or custom workflow activity and use SDK message
ג€CalculateRollupFieldRequestג€.
Incorrect:
Not B: Mass Calculate Rollup Field ג€" This job is created per Rollup field and runs when you create or update Rollup field. By default, job runs in 12 hours after you create or update Rollup field. You can adjust start
time of this job to make sure job runs during non-operational hours
Reference:
https://sachinbansal.blog/2018/05/07/dynamics-365-rollup-fields-important-points/
A. ADFS
B. Azure AD Conditional Access
C. Azure guest account
D. Client secret
Answer : C
Canvas apps can be shared with guest users of an Azure Active Directory (Azure AD) tenant. This enables inviting external business partners, contractors, and third parties to run your company's canvas apps.
Reference:
https://docs.microsoft.com/en-us/power-apps/maker/canvas-apps/share-app-guests
✑ FormC contains a message that appears in the OnSave function of the form.
You add the forms to a solution and export the solution as managed. Importing the managed solution into the test environment produces an error indicating the solution is missing a component.
You need to identify the issue.
What is the cause of the import error?
A. The web resources were not added to the form before adding the form to the solution.
B. The solution must be exported as an unmanaged solution.
C. The web resources were not added to the solution before exporting.
D. A copy of the form must be made before adding to the solution.
Answer : C
Symptoms.
When attempting to import a solution in Microsoft Dynamics 365, the import fails with the following message:
The import of the solution [solution name] failed. The following components are missing in your system and are not included in the solution. Import the managed solutions that contain these components ([name of
missing solution] ([solution version])) and then try importing the solution again.
Cause.
This error occurs if you are trying to import a solution that depends on other components that are not in your Microsoft Dynamics 365 organization.
Resolution -
Review the missing component details shown in the import dialog. If there are other solutions listed that are not already imported in the organization where you are trying to import this solution, import those
solutions first before trying to import this solution.
Reference:
https://docs.microsoft.com/en-us/troubleshoot/dynamics-365/sales/import-of-solution-fails-due-to-missing-components
A. Map the value of a Choices column on the child table to the value of a Choices column on the parent table.
B. Map the value of a column on the parent table that uses column values from the child table.
C. Map the value of columns on both the child table quick-create and main forms to the value for the same columns on the parent table.
D. Map the value of a single line of text column on the child table to the value of a currency column on the parent record.
Answer : AC
Incorrect:
Not B: It is the opposite. The child table uses column values from the parent table.
Not D: The data types need to match. Both columns must be of the same type and the same format.
Reference:
https://docs.microsoft.com/en-us/power-apps/maker/data-platform/map-entity-fields
Table ownership -
There are two different types of standard and custom table ownership. When you create a custom table the ownership options are User or team or Organization owned. Once a table is created, the ownership type can't
be changed.
Organization - Data belongs to the organization. Access to the data is controlled at the organization level.
User or team - Data belongs to a user or a team. Actions that can be performed on these rows can be controlled on a user level.
Note: Tables appear in Power Apps as one of three different types, which indicate how the table came into the environment, whether the table is managed or unmanaged, and whether it can be customized.
* Standard: Several standard tables, also known as out-of-box tables, are included with a Power Platform environment, that includes Microsoft Dataverse.
Account, business unit, contact, task, and user tables are examples of standard tables in Dataverse. Most of the standard tables included with Dataverse can be customized. Tables that are imported as part of a
managed solution and set as customizable also appear as standard tables. Any user with appropriate privileges can customize these tables where the table property has customizable set to true.
* Managed: Are tables that arenג€™t customizable and have been imported into the environment as part of a managed solution.
* Custom: Custom tables are unmanaged tables that are either imported from an unmanaged solution or are new tables created directly in the environment. Any user with appropriate privileges can fully customize
these tables.
Box 2: Activity table with User or Team ownership
Activity tables -
An activity can be thought of as any action for which an entry can be made on a calendar. An activity has time dimensions (start time, stop time, due date, and duration) that help determine when the action occurred
or will occur. Activities also contain data that helps determine what action the activity represents, for example, subject and description. An activity can be opened, canceled, or completed. The completed status of an
activity will have several sub-status values associated with it to clarify the way that the activity was completed.
Activity tables are a special kind of table that can only be owned by a user or team, but canג€™t be owned by an organization. When you create a table, you can specify it as a standard or activity table.
Reference:
https://docs.microsoft.com/en-us/power-apps/maker/data-platform/types-of-entities
Answer :
Box 1: Development -
Box 2: Production -
Environment variables can be created and modified within the modern solution interface, automatically created when connecting to certain data sources in canvas apps, or by using code. They can also be imported to
an environment via solutions. Once environment variables are present in an environment, they can be used as inputs when authoring canvas apps, Power Automate flows, when developing plug-ins, as well as many
other places such as adding a Power BI dashboard to a model-driven app. When these types of objects use environment variables, the values are then derived from the environment variables and can be changed when
solutions are imported to other environments.
Box 3: Production -
Environment variables can be used in solution cloud flows since they are available in the dynamic content selector. All types of environment variables can be used in triggers and actions.
Reference:
https://docs.microsoft.com/en-us/power-apps/maker/data-platform/environmentvariables
You need to create custom tables for the solution. You have the following requirements:
Which table type should you create? To answer, select the appropriate options in the answer area.
Answer :
You must reference the Name and Email from the ERP system during mapping to ensure that records are unique.
You need to create an alternate key that references the Name and Email columns.
A column contains sensitive data that should not be read by Group2. Group1 must be able to access the column.
You need to prevent Group2 users from viewing the sensitive data.
A. Create a security role for users in Group1 to grant users access to the column.
B. Create multiple forms. Assign a form containing the sensitive data to Group1. Assign a form that does not contain the sensitive data to Group2.
C. Use JavaScript to set visibility of the column based on the group of the current user.
D. Create a field-level security profile for Group1 users to grant the users access to the column.
Answer : D
A company deploys a set of automation processes. A process generates errors. A portion of the error log is displayed below.
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
NOTE: Each correct selection is worth one point.
Answer :
The following code updates the customersizecode choice column on the Account table if the numberofemployees column value is greater than 100.
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
NOTE: Each correct selection is worth one point.
Answer :
You must configure a Web API request to retrieve changes from the table.
You need to configure the preference header for the API request.
A. odata.nextLink
B. odata.context
C. odata.deltaLink
Answer : C
You plan to use the Organization Service to retrieve the delta data by using C#.
A. RetrieveAttributeRequest
B. odata.track-changes
C. RetrieveEntityChangesRequest
D. UpdateEntityRequest
E. UpdateRequest
Answer : B
Answer : B
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background -
Proseware, Inc. is an industry leading software company with several thousand employees. The company has had some trouble recruiting talented employees. Top-level candidates interview with the company but go
on to work for competitors.
Feedback from candidates show that some offers were not accepted because the interview scheduling process was unpleasant. The company does not have a system to keep track of the candidates that were not
selected.
Current Environment -
The recruiting process starts when an individual applies for a position on the company website. The individual may have found the position on their own, they may have been officially referred by an employee, or in
some cases were contacted directly by a hiring manager and encouraged to apply.
Recruiters schedule an interview with a hiring manager and interviews with two senior team members. Each interview results in feedback about the candidate and a recommendation whether to hire or not.
The company has the following Microsoft Dataverse tables and columns:
• JobPosting
- Hiring Manager - lookup to SystemUser
- Recruiter Assigned - lookup to SystemUser
• Contact (Job Applicant)
- Contact identifier
- First name
- Last name
- Time-Zone Offset
- Person of Interest - Yes/No (default)
• Application proapplication
- Contact identifier, Contact - lookup to Contact
- Job Posting - lookup to JobPosting
- pro_recruiterassignedid
• Interview
- Application - lookup to Application
- Job Posting - lookup to JobPosting
- Recommend - Choice (Yes (0), No (1), and null (default) are the available values)
- Person of Interest - Yes/No, No is the default value
• Referral
- Contact - lookup to Contact
- Referrer - lookup to SystemUser
- Job Posting - lookup to JobPosting
• SystemUser
- Manager - lookup to SystemUser
- Time-Zone Offset
• Recruiter
- Recruiter identifier
- Recruiter name
Applications -
There may be multiple applications associated with each job posting. Applications are linked to an employee record if an employee referred the applicant for a position. The same individual can be an applicant for
multiple job postings.
Interviews -
Each interview is performed by an employee and is related to a single application.
The interview scheduling process may force potential candidates to accept interviews at unusual times with the senior team members due to time-zone differences.
The system must provide recruiters with a list of team members and their time-zone information. You must create a Microsoft Power Apps Component Framework (PCF) control for the Job Application form to display
a list of senior team members who report directly to a hiring manager.
• The control must display the current time in each team member's local time.
• The control must be bound so that it minimizes the amount of code that must be written.
• You must display the list of team members and sort the list to show team members who reside in time zones closest to the applicant's time zone first.
You must develop a second PCF control that displays the time-zone name and current time on the Job Application form. You must display the data in the candidate’s local time.
You must create a process to identify individuals as a person of interest that the company should consider hiring. You must assign each individual a score based on their past interactions.
The automated process must run weekly to assess all candidates. The process must also run automatically when historical information is updated. You must be able to perform scoring by selecting a command button
on the contact form.
• This new command button must only be visible to employees who belong to a security role assigned named Recruiter. The command button must not be visible to anyone unless the contact form is in Update mode.
• A person of interest is defined as having a score of 15 or more based on the following historical information criteria:
- Each interview with a recommendation adds two to the score.
- Each interview without a recommendation subtracts two from the score.
- Each employee or manager referral adds one to the score.
- Each designation or certification adds one to the score.
• All scoring elements must be recalculated when changes occur. You must assign the score to the Person of interest field.
• Values representing totals or scores must be stored in their own numeric fields.
• Plug-ins must be used to keep the Person of Interest field on active interview records associated with the Contact.
• Plug-ins registered on the update of the Person of interest field must send an email notification when the candidate named in the email is a person of interest. Recruiters must receive the message when the field is
updated on the Contact record.
• Interviewers must get an email notification when the Person of Interest field on the interview record is successfully updated.
• Schema changes must be made using the method requiring the least amount of storage to meet the requirement.
• Out-of-the-box functionality must be used when possible.
• Any code required to calculate scores must be able to be run from a single point.
• Email notifications need to be kept to a minimum.
Issues -
• Recruiters report that the command button to score a candidate is not working. You debug the code and observe that the context input parameter is null.
• The system does not support associating designations and certifications with candidates.
• The value for the field used by the PCF control to display local time is saved to Microsoft Dataverse each time an active application record is opened.
• Interviewers report that they do not receive email notifications when interview records are created for an existing person of interest.
Answer : C
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background -
Proseware, Inc. is an industry leading software company with several thousand employees. The company has had some trouble recruiting talented employees. Top-level candidates interview with the company but go
on to work for competitors.
Feedback from candidates show that some offers were not accepted because the interview scheduling process was unpleasant. The company does not have a system to keep track of the candidates that were not
selected.
Current Environment -
The recruiting process starts when an individual applies for a position on the company website. The individual may have found the position on their own, they may have been officially referred by an employee, or in
some cases were contacted directly by a hiring manager and encouraged to apply.
Recruiters schedule an interview with a hiring manager and interviews with two senior team members. Each interview results in feedback about the candidate and a recommendation whether to hire or not.
The company has the following Microsoft Dataverse tables and columns:
• JobPosting
- Hiring Manager - lookup to SystemUser
- Recruiter Assigned - lookup to SystemUser
• Contact (Job Applicant)
- Contact identifier
- First name
- Last name
- Time-Zone Offset
- Person of Interest - Yes/No (default)
• Application proapplication
- Contact identifier, Contact - lookup to Contact
- Job Posting - lookup to JobPosting
- pro_recruiterassignedid
• Interview
- Application - lookup to Application
- Job Posting - lookup to JobPosting
- Recommend - Choice (Yes (0), No (1), and null (default) are the available values)
- Person of Interest - Yes/No, No is the default value
• Referral
- Contact - lookup to Contact
- Referrer - lookup to SystemUser
- Job Posting - lookup to JobPosting
• SystemUser
- Manager - lookup to SystemUser
- Time-Zone Offset
• Recruiter
- Recruiter identifier
- Recruiter name
Applications -
There may be multiple applications associated with each job posting. Applications are linked to an employee record if an employee referred the applicant for a position. The same individual can be an applicant for
multiple job postings.
Interviews -
Each interview is performed by an employee and is related to a single application.
The interview scheduling process may force potential candidates to accept interviews at unusual times with the senior team members due to time-zone differences.
The system must provide recruiters with a list of team members and their time-zone information. You must create a Microsoft Power Apps Component Framework (PCF) control for the Job Application form to display
a list of senior team members who report directly to a hiring manager.
• The control must display the current time in each team member's local time.
• The control must be bound so that it minimizes the amount of code that must be written.
• You must display the list of team members and sort the list to show team members who reside in time zones closest to the applicant's time zone first.
You must develop a second PCF control that displays the time-zone name and current time on the Job Application form. You must display the data in the candidate’s local time.
You must create a process to identify individuals as a person of interest that the company should consider hiring. You must assign each individual a score based on their past interactions.
The automated process must run weekly to assess all candidates. The process must also run automatically when historical information is updated. You must be able to perform scoring by selecting a command button
on the contact form.
• This new command button must only be visible to employees who belong to a security role assigned named Recruiter. The command button must not be visible to anyone unless the contact form is in Update mode.
• A person of interest is defined as having a score of 15 or more based on the following historical information criteria:
- Each interview with a recommendation adds two to the score.
- Each interview without a recommendation subtracts two from the score.
- Each employee or manager referral adds one to the score.
- Each designation or certification adds one to the score.
• All scoring elements must be recalculated when changes occur. You must assign the score to the Person of interest field.
• Values representing totals or scores must be stored in their own numeric fields.
• Plug-ins must be used to keep the Person of Interest field on active interview records associated with the Contact.
• Plug-ins registered on the update of the Person of interest field must send an email notification when the candidate named in the email is a person of interest. Recruiters must receive the message when the field is
updated on the Contact record.
• Interviewers must get an email notification when the Person of Interest field on the interview record is successfully updated.
• Schema changes must be made using the method requiring the least amount of storage to meet the requirement.
• Out-of-the-box functionality must be used when possible.
• Any code required to calculate scores must be able to be run from a single point.
• Email notifications need to be kept to a minimum.
Issues -
• Recruiters report that the command button to score a candidate is not working. You debug the code and observe that the context input parameter is null.
• The system does not support associating designations and certifications with candidates.
• The value for the field used by the PCF control to display local time is saved to Microsoft Dataverse each time an active application record is opened.
• Interviewers report that they do not receive email notifications when interview records are created for an existing person of interest.
You need to prevent the field used by the PCF control from updating the record.
What are two possible ways to achieve the goal? Each correct answer presents a complete solution.
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background -
Proseware, Inc. is an industry leading software company with several thousand employees. The company has had some trouble recruiting talented employees. Top-level candidates interview with the company but go
on to work for competitors.
Feedback from candidates show that some offers were not accepted because the interview scheduling process was unpleasant. The company does not have a system to keep track of the candidates that were not
selected.
Current Environment -
The recruiting process starts when an individual applies for a position on the company website. The individual may have found the position on their own, they may have been officially referred by an employee, or in
some cases were contacted directly by a hiring manager and encouraged to apply.
Recruiters schedule an interview with a hiring manager and interviews with two senior team members. Each interview results in feedback about the candidate and a recommendation whether to hire or not.
The company has the following Microsoft Dataverse tables and columns:
• JobPosting
- Hiring Manager - lookup to SystemUser
- Recruiter Assigned - lookup to SystemUser
• Contact (Job Applicant)
- Contact identifier
- First name
- Last name
- Time-Zone Offset
- Person of Interest - Yes/No (default)
• Application proapplication
- Contact identifier, Contact - lookup to Contact
- Job Posting - lookup to JobPosting
- pro_recruiterassignedid
• Interview
- Application - lookup to Application
- Job Posting - lookup to JobPosting
- Recommend - Choice (Yes (0), No (1), and null (default) are the available values)
- Person of Interest - Yes/No, No is the default value
• Referral
- Contact - lookup to Contact
- Referrer - lookup to SystemUser
- Job Posting - lookup to JobPosting
• SystemUser
- Manager - lookup to SystemUser
- Time-Zone Offset
• Recruiter
- Recruiter identifier
- Recruiter name
Applications -
There may be multiple applications associated with each job posting. Applications are linked to an employee record if an employee referred the applicant for a position. The same individual can be an applicant for
multiple job postings.
Interviews -
Each interview is performed by an employee and is related to a single application.
The interview scheduling process may force potential candidates to accept interviews at unusual times with the senior team members due to time-zone differences.
The system must provide recruiters with a list of team members and their time-zone information. You must create a Microsoft Power Apps Component Framework (PCF) control for the Job Application form to display
a list of senior team members who report directly to a hiring manager.
• The control must display the current time in each team member's local time.
• The control must be bound so that it minimizes the amount of code that must be written.
• You must display the list of team members and sort the list to show team members who reside in time zones closest to the applicant's time zone first.
You must develop a second PCF control that displays the time-zone name and current time on the Job Application form. You must display the data in the candidate’s local time.
You must create a process to identify individuals as a person of interest that the company should consider hiring. You must assign each individual a score based on their past interactions.
The automated process must run weekly to assess all candidates. The process must also run automatically when historical information is updated. You must be able to perform scoring by selecting a command button
on the contact form.
• This new command button must only be visible to employees who belong to a security role assigned named Recruiter. The command button must not be visible to anyone unless the contact form is in Update mode.
• A person of interest is defined as having a score of 15 or more based on the following historical information criteria:
- Each interview with a recommendation adds two to the score.
- Each interview without a recommendation subtracts two from the score.
- Each employee or manager referral adds one to the score.
- Each designation or certification adds one to the score.
• All scoring elements must be recalculated when changes occur. You must assign the score to the Person of interest field.
• Values representing totals or scores must be stored in their own numeric fields.
• Plug-ins must be used to keep the Person of Interest field on active interview records associated with the Contact.
• Plug-ins registered on the update of the Person of interest field must send an email notification when the candidate named in the email is a person of interest. Recruiters must receive the message when the field is
updated on the Contact record.
• Interviewers must get an email notification when the Person of Interest field on the interview record is successfully updated.
• Schema changes must be made using the method requiring the least amount of storage to meet the requirement.
• Out-of-the-box functionality must be used when possible.
• Any code required to calculate scores must be able to be run from a single point.
• Email notifications need to be kept to a minimum.
Issues -
• Recruiters report that the command button to score a candidate is not working. You debug the code and observe that the context input parameter is null.
• The system does not support associating designations and certifications with candidates.
• The value for the field used by the PCF control to display local time is saved to Microsoft Dataverse each time an active application record is opened.
• Interviewers report that they do not receive email notifications when interview records are created for an existing person of interest.
Answer : A
Case study
-
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background
-
Contoso Pharmaceuticals manufactures and sells drugs to retail and wholesale pharmacies, hospitals, and research facilities.
The company plans to implement Dynamics 365 Sales and Dynamics 365 Finance.
Current environment
-
• Contoso maintains a Microsoft Excel workbook that lists all drugs they supply.
• Pharmacies submit order requests through email.
• All information at customer locations is handwritten by customer representatives.
• Contoso uses Cerner, which is a medical industry application that uses a proprietary database.
• Some accounts are referrals from other pharmacies.
• Every pharmacy has its own Dynamics 365 Sales instance.
Requirements
-
General
-
You must create a model-driven app to meet Contoso’s needs. You must minimize the use of custom code and custom connectors.
Accounts
-
• Ensure that the names of the pharmacies are synced between the accounting and the customer management systems.
• Account numbers should be entered automatically into the pharmaceutical system that is in a Cerner database and kept in sync.
• When the account is entered into the system, extra fields must appear if the referral customer box is selected. If the box is not selected, the extra fields must not appear.
• A trigger must be created that changes the Priority field to 1 in the Account record 10 days after an Account record is created.
• A field named Priority_Trigger must be created to trigger the Priority field.
• A field named Facility type field must be added in order to select whether a customer is a retail pharmacy, wholesale pharmacy, research facility, or hospital.
Users
-
Reporting
-
The graphs must be interactive, and users must be able to drill down on any dimension.
Customizations
-
• Ensure that notifications are sent to the sales team when a lead is added by using Slack.
• Ensure that leads have a review stage added to the sales process.
• Doctors must be manually added to a custom entity named Doctor if the doctor is not listed.
• Refill dates for customer prescriptions should be automatically determined and a notification should be sent to the customer.
• Fields for the doctor’s name and phone number must be displayed in the customer record.
• The doctor entered on the customer’s record must be validated against doctors that exist in the system.
• The new solution will be sold to other pharmacies for use. The application must not allow changes to be made.
• The solution must be error free so that when it is installed in other environments it does not cause issues.
Mobile app
-
• A custom mobile app must be created to allow salespeople to add or search by pharmacy name.
• Pharmacy records must be uniquely identified by pharmacy name, address, contact name, and phone number.
• When a pharmacy is added by using the mobile app, the phone number must be validated to be all digits.
You need to assign the minimum environmental security role to the appropriate users.
Which security roles should you use? To answer, drag the appropriate security roles to the correct users. Each security role 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.
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background -
Northwind Traders uses Microsoft Dynamics 365 Sales to manage its sales process. To better understand its customers, Northwind Traders invests in a team of researchers who gather data from multiple sources. The
company stores the data it collects in a Microsoft Azure SQL Database. The company plans to use the data to enrich account records and make the sales team more effective.
Current environment -
Environment -
• The company has three Microsoft Power Platform environments with Dynamics 365 Sales installed. The environments are named development, test, and production.
• Each environment has an application user that can be used for integrations.
• The company must use solutions to perform all customization and configuration deployment.
Data -
Web API -
• The company creates an Azure Function to run a RESTful .NET Web API.
• Data can be retrieved by placing a GET request to the URL https://dataservice-[ENVIRONMENTNAME].azurewebsites.net/enrich/[DATAID].
• [ENVIRONMENTNAME] is the name of the Microsoft Power Platform environment that requests the data.
• [DATAID] is the new_dataid column in the Account table.
• The Web API response will return a 200 response plus data if the DataId is found. Otherwise, a 404 response is returned.
• Developers plan to create a custom connector from the Web API to make it accessible from Microsoft Power Platform.
Requirements -
Custom connector -
• The Web API definition used to create the custom connector must be generated based on a low-code technology.
• The URL used by the custom connector must incorporate the current environment name without hardcoding values.
• Errors generated by the custom connector must not cause downstream processes to fail.
• Text descriptions and field placeholder text that describe the use of the custom connector must appear for non-developers.
Process -
• All account records must be updated with data from the Web API once automatically.
• Only account records that contain a DataId should be updated by the Web API.
• Researchers must create Power Automate flows to specify data analysis priority.
• The researchers require a process that repurposes a set of identical steps of parameterized Microsoft Dataverse queries from a Power Automate flow for use in other flows that have different parameters. The
researchers want to avoid recreating the steps manually each time they create a flow to save time and avoid errors.
Issues -
• A tester attempts to connect to the production instance of the Web API with a DataId that should return data. The tester receives an error stating that the remote name could not be resolved.
• A missing component causes an error to occur when importing the solution that contains the Power Automate flow to update account records in a test environment.
You need to determine which component to add to the solution to resolve the account records import error.
A. connection
B. service endpoint
C. custom connector
D. Account table
Answer : D
Users report that the system does not update values for the rollup fields when new insurance policies are written.
You need to recalculate the value of the rollup fields immediately after a policy is created.
A. Create new fields on the customer entity for insurance exposure and risk. Write a workflow process that is triggered when a new policy record is created to calculate the sum of values from policy records.
B. Update the Mass Calculate Rollup Field job to trigger when a new policy record is created.
C. Create new calculated fields on the customer entity for insurance exposure and risk. Create a formula to calculate the sum of values from policy records.
D. Create a plug-in that uses the CalculateRollupFieldRequest method for the rollup field. Configure a step on the Create event for the policy entity for this plug-in.
Answer : D
You develop the following code for a console application that performs the data import to Microsoft Dataverse.
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
NOTE: Each correct selection is worth one point.
Answer :
An error occurs when a test engineer attempts to create a record. The error message states, "Record is not available."
Answer : C
Answer : A
You must update the solutions and import them into an environment that has no customizations.
Solution A
-
• Changes the length of the name column to 75
• Adds the categoryid column at the top of the Account Information section of the Account form
Solution B
-
• Changes the length of the name column to 100
• Adds the territoryid column at the top of the Account Information section of the Account form
Which effect does each component exhibit? To answer, select the appropriate options in the answer area.
Answer :
Both solutions in the managed state are installed in the destination environment.
You need to delete the custom_text column and apply changes in the destination environment.
In which order should you perform the actions? To answer, move all actions from the list of actions to the answer area and arrange them in the correct orders.
NOTE: More than one order of answer choices is correct. You will receive credit for any of the correct orders you select.
Answer :
A company manages a Microsoft Power Platform solution that includes an account table.
You enable an Auditing flag in the table and import a managed version of the solution to the production environment.
After the import, you observe that the Auditing flag is disabled in the production environment.
You check solution layering of the Account table. You observe that the First Party solution customization lays on top of the solution.
In which order should you perform the actions? To answer, move all actions from the list of actions to the answer area and arrange them in the correct order.
Answer :
After you answer a question in this section, you will NOT be able to return to it. As a result, these questions will not appear in the review screen.
A company develops a new custom connector for a Microsoft Entra ID-protected Azure Function that was created as a single tenant app.
The custom connector must be moved to a production environment. The connector must be visible and accessible only to users in the tenant.
Solution: Add the custom connector to a managed solution, export the managed solution, and then import the managed solution into the production environment.
Answer : B
After you answer a question in this section, you will NOT be able to return to it. As a result, these questions will not appear in the review screen.
A company develops a new custom connector for a Microsoft Entra ID-protected Azure Function that was created as a single tenant app.
The custom connector must be moved to a production environment. The connector must be visible and accessible only to users in the tenant.
A. Yes
B. No
Answer : B
After you answer a question in this section, you will NOT be able to return to it. As a result, these questions will not appear in the review screen.
A company develops a new custom connector for a Microsoft Entra ID-protected Azure Function that was created as a single tenant app.
The custom connector must be moved to a production environment. The connector must be visible and accessible only to users in the tenant.
Solution: Use the maker portal to export the custom connector. Then use the maker portal to import the connector into the production environment.
A. Yes
B. No
Answer : A
After you answer a question in this section, you will NOT be able to return to it. As a result, these questions will not appear in the review screen.
A company develops a new custom connector for a Microsoft Entra ID-protected Azure Function that was created as a single tenant app.
The custom connector must be moved to a production environment. The connector must be visible and accessible only to users in the tenant.
Solution: Use Postman to export the custom connector. Then use Postman to import the connector into the production environment.
A. Yes
B. No
Answer : B
Answer : B
To resolve this issue, grant the Environment Maker security role to the Power Apps Checker application user.
Note: Solution checker fails to export solutions with model-driven app components
If a solution contains a model-driven app, Solution Checker might fail to export the solution for analysis. This error is caused by role-based security for sharing of apps. If the Power Apps Checker application user does
not have appropriate access to model-driven apps, any solutions containing them will fail to export with solution checker.
Reference:
https://docs.microsoft.com/en-us/powerapps/maker/data-platform/common-issues-resolutions-solution-checker#solution-checker-fails-to-export-solutions-with- model-driven-app-components
Answer :
Box 1: main.aspx -
Example, to open the Active Contacts view.
https://myorg.crm.dynamics.com/main.aspx?etn=contact&pagetype=entitylist&viewid={00000000-0000-0000-00AA-000010001004}
Box 2: etn -
Etn: The logical name of the entity. Important: Do not use the etc (entity type code) parameter that contains an integer code for the entity. This integer code varies for custom entities in different organizations.
Box 3: Extraqs -
Extraqs: Optional for forms. This parameter contains encoded parameters within this parameter.
When you open a new form by using the URL address, you can include arguments in the extraqs parameter to set field values
Note: You must encode the parameters passed in the extraqs parameter. To encode the parameters, use encodeURIComponent. To use special characters like
"=" or "&" in the parameter values, you must double encode (e.g. to set name to A=B&C, it would be extraqs=name%3DA%253DB%2526C).
Box 4: entityrecord -
Example: Set the value for choice columns
To set the value for a Choice column, set the integer value for the option. The following sample sets the Role column value to ג€Decision Makerג€ in a new contact record.
The unencoded value for the extraqs parameter is ג€accountrolecode=1ג€.
/main.aspx?etn=contact&extraqs=accountrolecode%3D1&pagetype=entityrecord
Note: Pagetype: The type of page. There are two possible values:
- entityrecord
Displays an entity record form.
- entitylist
Displays an entity view.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/model-driven-apps/open-forms-views-dialogs-reports-url https://docs.microsoft.com/en-us/powerapps/developer/model-driven-apps/set-field-values-
using-parameters-passed-form
Answer : A
Use LoadData and SaveData for basic data storage while offline.
Note:
When building mobile apps, one of the most common scenarios app makers face is how to enable their users be productive in situations where there is limited or no connectivity at all. This has been one of the most
requested features for PowerApps to allow running apps while being disconnected and to provide some support for offline data caching. In this release of PowerApps, we are delivering the first set of improvements for
app makers to achieve that by enabling:
1. Launching the PowerApps mobile player app offline
2. Running apps while being offline
3. Determine when your app is online or offline or in a metered connection by using the Connection signal object.
4. Leverage existing formulas such as LoadData and SaveData for basic data storage while offline.
Reference:
https://powerapps.microsoft.com/sv-se/blog/build-offline-apps-with-new-powerapps-capabilities/
Answer :
A. Send a PUT request to enable plug-in tracing for the production environment.
B. Send a GET request to retrieve the plugintracelogs records.
C. Install Plug-in profiler in the production environment by using the Plug-in Registration tool.
D. Reproduce and capture the errors, then debug from Visual Studio.
Answer : C
Plug-in profiler is a solution that you can install on your environment that enables you to capture the execution context of a plug-in and then use that data to re- play the event within Visual Studio while debugging.
There are two tools available from which to run the Plug-in Profiler: the Plug-in Registration Tool and Power Platform Tools for Visual Studio.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/data-platform/tutorial-debug-plug-in
Answer :
Box 1: Privileges -
Privileges: This defines whether a subarea is displayed based on privileges available in any security roles that are assigned to the user.
Box 2: Client -
Client: Select the type of client that displays this subarea.
Incorrect Answers:
Offline Availability: Select this check box to make this subarea available to users when they are offline in Dynamics 365 for Outlook.
Reference:
https://docs.microsoft.com/en-us/powerapps/maker/model-driven-apps/create-site-map-app
A. 10.0.3.1
B. 10.0.2.2
C. 10.1.0.2
D. 11.0.0
Answer : B
You need to ensure that the manager can view contact records owned by someone in the Residences business unit.
For each of the following statements, select Yes if the statement achieves the goal. Otherwise, select No.
Hot Area:
Answer :
Box 1: Yes -
Change it to Direct User/Basic access level and Team privileges. This creates a security role with team member's privilege inheritance.
Note: For roles assigned to teams with Basic-level access user privilege, the role's inheritance configuration also comes into play. If the team has the Member's privilege inheritance set to Team privileges only, then the
user will only be able make use of that privilege for records owned by the team.ֲ¨
Box 2: No -
The manager of the Property Management business unit is already a member of a Fabrikam business unit, which has the root security role
Box 3: Yes -
Reference:
https://docs.microsoft.com/en-us/power-platform/admin/security-roles-privileges
Answer :
A. Enable field security for the balance field and grant the customer service team read and update permissions.
B. Create a customer service form and role and make the balance field read-only.
C. Enable field security for the balance field and grant the accounting team read and update permissions.
D. Create an accounting form and role and make the balance field read-only.
Answer : C
In Dynamics 365 Customer Engagement (on-premises), you use field-level security to restrict access to high business impact fields to specific users and teams.
For example, you use this to enable only certain users to read or update the credit score for a customer.
Reference:
https://docs.microsoft.com/en-us/dynamics365/customerengagement/on-premises/developer/security-dev/use-field-security-control-access-field-values
Answer :
Box 1: Set the test environment security group to TestSG and assign test users the app security role.
PowerApps apps use role-based security for sharing. The fundamental concept in role-based security is that a security role contains privileges that define a set of actions that can be performed within the app. All app
users must be assigned to one or more predefined or custom roles.
Reference:
https://docs.microsoft.com/en-us/powerapps/maker/model-driven-apps/share-model-driven-app
Question 104 ( Question Set 3 )
A travel company plans to track the address of places their clients visit in an entity named Destination. Client information is captured as contact records. Client records include links to the places that clients visit.
The company must be able to link multiple rating records to the new address record.
You find a custom Rating entity that is incomplete.
You need to expand the Rating entity to include contact, address, and rating information in one place.
Which three actions should you perform? Each correct answer presents part of the solution.
NOTE: Each correct selection is worth one point.
A. Create a 1:N relationship between the Contact system entity and the Address system entity named Destination.
B. Create a mapping for the Contact ג€" Rating relationship.
C. Create a 1:N relationship between the Address system entity and the Rating entity.
D. Create a 1:N relationship between the Contact system entity and the Rating entity.
E. Create a mapping for the Destination ג€" Rating relationship.
F. Create a 1:N relationship between the Destination entity and the Rating entity.
Answer : ABC
Box 1: Yes -
If you are creating an attribute editor you will need to retrieve entity data that has been saved but not published. For other scenarios you will want to only retrieve published metadata.
✑ Set this value to true to include unpublished changes, as it would look if you called publish.
✑ Set this value to false to include only the currently published changes, ignoring the changes that haven't yet been published.
Box 2: AttributeMetadata -
AttributeMetadata class is returned in the RetrieveAttributeResponse.
Reference:
https://docs.microsoft.com/en-us/dotnet/api/microsoft.xrm.sdk.messages.retrieveattributerequest.retrieveasifpublished?view=dynamics-general-ce-9 https://docs.microsoft.com/en-
us/dotnet/api/microsoft.xrm.sdk.metadata.attributemetadata?view=dynamics-general-ce-9
A. Xrm.Navigation.openWebResource("prefix.myPoliteMessage.html")
B. Xrm.Navigation.openAlertDialog(myPoliteMessage)
C. Xrm.Utility.openWebResource("prefix_myPoliteMessage.html")
D. Xrm.Utility.showProgressIndicator(myPoliteMessage)
Answer : D
Box 1: Privileges -
Privileges: This defines whether a subarea is displayed based on privileges available in any security roles that are assigned to the user.
Box 2: SKU -
SKUs: Select the versions of Dynamics 365 that display this subarea.
Box 3: Client -
Client: Select the type of client that displays this subarea.
Incorrect Answers:
Offline Availability: Select this check box to make this subarea available to users when they are offline in Dynamics 365 for Outlook.
Reference:
https://docs.microsoft.com/en-us/powerapps/maker/model-driven-apps/create-site-map-app
Answer :
Selecting the portal notification will link to this page of common issues for further troubleshooting. If one of the provided common issues does not resolve the
problem, a reference number is also returned. Provide this reference number to Microsoft Support for further investigation.
Box 2: The code uses the following rule: web-use-strict-mode
web-use-strict-mode is able to throw a SyntaxError before the script is executing.
Example:
The reason is JavaScript lets you compare different variable types but this can have unexpected results, so by using the strict === it compares the same type
and wonג€™t have unexpected results this gets a warning entity.field == "Line1"
Incorrect Answers:
web-avoid-eval: The eval() function evaluates JavaScript code represented as a string. web-avoid-modals: Avoid using modal dialogs. web-remove-debug-script:
Avoid including debug script in non-development environments.
Reference:
https://docs.microsoft.com/en-us/powerapps/maker/common-data-service/common-issues-resolutions-solution-checker
Answer : A
Answer :
Box 1: View -
Search for rows and create personal views with modern advanced find
When your administrator enables the modern advanced find experience, it lets you search for rows and create personal views in your app.
Answer :
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
NOTE: Each correct selection is worth one point.
Hot Area:
Answer :
Box 1: No -
The For Each loop is exited if there is an error. Need ContinueOnError in the right place.
Box 2: No -
The ContinueOnError statement should be placed in the For Each loop before line 13.
Box 3: Yes -
Box 4: No -
This code is just for displaying the result on the screen.
A. var data = { "name": "Contoso account", "primarycontactid": { "logicalname": "contact", "id": "991bf2fd-d40c-4752-9984-26b7c0455b69" } };
B. var data = { "name": "Contoso account", "[email protected]": "/contacts(991bf2fd-d40c-4752-9984-26b7c0455b69)" };
C. var data = { "name": "Contoso account", "[email protected]": "/contacts(991bf2fd-d40c-4752-9984-26b7c0455b69)" };
D. var data = { "name": "Contoso account", "primarycontactid": "/contacts(991bf2fd-d40c-4752-9984-26b7c0455b69)" };
Answer : AB
B: To associate new table records to existing table records, set the value of single-valued navigation properties using the @odata.bind annotation
Example:
var data =
{
"name": "Sample Account",
"[email protected]": "/contacts(465b158c-541c-e511-80d3-3863bb347ba8)"
}
A: For mobile clients in the offline mode, you cannot use the @odata.bind annotation, and instead have to pass a lookup object (logicalname and id) pointing to the target record. var data =
{
"name": "Sample Account",
"primarycontactid":
{
"logicalname": "contact",
"id": "465b158c-541c-e511-80d3-3863bb347ba8"
}
}
Note Syntax:
Xrm.WebApi.createRecord(entityLogicalName, data).then(successCallback, errorCallback); entityLogicalName: Logical name of the table you want to create. For example: "account".
Data: A JSON object defining the columns and values for the new table record.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/model-driven-apps/clientapi/reference/xrm-webapi/createrecord
Answer :
Box 2: Action -
Define the actions to be performed by a command bar or ribbon control in a <CommandDefinition> element together with rules that control whether the control is enabled or visible in the ribbon.
A. Open the web resource file, add the two image web resources to the dependencyג€™s lists, and then add the custom field new_placeofbirth to the dependencyג€™s list.
B. From Settings, select Customizations and then select Customize the System.
C. In the Account form, select Form Properties, select Non-Event Dependencies, and then add the custom field new_placeofbirth.
D. Select Account, select Forms, and then select the Account form.
E. From Web Resources, select the JavaScript file for the Account form and then select the JavaScript file.
F. In the Account form, select Form Properties and add the primary JavaScript file and the other two images web resources in Form Libraries.
Answer : BCD
Step 1 (B): From Settings, select Customizations and then select Customize the System.
Step 2 (D): Select Account, select Forms, and then select the Account form.
Step 3 (C): In the Account form, select Form Properties, select Non-Event Dependencies, and then add the custom field new_placeofbirth.
In our Dynamics 365 forms, there are measures we can take to ensure fields that are being used by JavaScript are not removed from forms. To prevent this from happening, we can go to Form Properties and select the
Non-Event Dependencies, and add the website field:
Reference:
https://docs.microsoft.com/en-us/dynamics365/customerengagement/on-premises/developer/web-resource-dependencies
Question 116 ( Question Set 3 )
HOTSPOT -
You open a canvas app in edit mode. A warning message displays as shown in the graphic.
Use the drop-down menus to select the answer choice that answers each question based on the information presented in the graphic.
NOTE: Each correct selection is worth one point.
Hot Area:
Answer :
Box 2: Gallery1 -
Reference:
https://docs.microsoft.com/en-us/powerapps/maker/canvas-apps/use-native-cds-connector
Answer : ADE
The Ribbon Workbench requires a solution to load that contains the entities that you wish to work on.
Reference:
https://community.dynamics.com/crm/f/microsoft-dynamics-crm-forum/371643/add-a-button-on-account-list-view-in-dynamics-crm
A. gridContext.refresh();
B. formContext.ui.refreshRibbon(refreshAll);
C. formContext.data.refresh(save).then(successCallback, errorCallback);
D. formContext.ui.refreshRibbon();
E. formContext.getControl(arg).refresh();
Answer : BD
B: formContext.ui.refreshRibbon(refreshAll);
Causes the ribbon to re-evaluate data that controls what is displayed in it.
Indicates whether all the ribbon command bars on the current page are refreshed. If you specify false, only the page-level ribbon command bar is refreshed. If you do not specify this parameter, by default false is
passed.
Remarks: This function is typicaly used when a ribbon (RibbonDiffXml) depends on a value in the form. After your code changes a value that is used by a rule, use this method to force the ribbon to re-evaluate the
data in the form so that the rule can be applied.
D: If role is there - just refresh the ribbon to see the button if (isButtonEnabled) { formContext.ui.refreshRibbon();
}
},
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/model-driven-apps/clientapi/reference/formcontext-ui/refreshribbon https://community.dynamics.com/crm/f/microsoft-dynamics-crm-
forum/302049/show-hide-button-bases-on-different-criteria/871674
Question 119 ( Question Set 3 )
HOTSPOT -
A fine arts school uses a custom canvas application based on the Microsoft Dataverse.
Artists experience errors on their Artist canvas app and delays when switching pages.
You need to identify the root causes of these issues.
Which troubleshooting methods should you use? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Hot Area:
Answer :
Incorrect Answers:
With Solution checker, you can inspect your code against a set of best practice development rules specific to customizing and extending the CDS for Apps
platform. Get access to rich detailed reports listing issues identified, severity, locations, and sometimes the line code, with linkage to detailed prescriptive
guidance on how to fix the problem.
PowerApp Checker checks your solution for any usage of code that was deprecated or any performance or security issues in the code. It checks the plugin code
as well as web resources.
Box 2: Service Performance in Power Apps Analytic
Regarding Microsoft Power Apps Canvas Driven Apps: for reviewing performance bottlenecks and API calls, admins can leverage the Service Performance report
for connection health. Admins can gain insights into the least and best performing services, the mean response time and success rate for connectors and the
50th,
75th and 95th percentile markers for response time. Each of these can be filtered down by service or connector, device, player version and regionally.
Reference:
https://docs.microsoft.com/en-us/dynamics365/customerengagement/on-premises/customize/validate-app
https://community.dynamics.com/crm/b/crminthefield/posts/monitoring-the-power-platform-canvas-driven-apps---power-apps-analytics
Answer : BD
Before you are able to run it, make sure you have the proper Security Roles in your common data service environment. Two of the required permissions are
Export Customizations and Solution Checker.
Reference:
https://learntoinspire.ca/2020/01/18/leveraging-the-power-of-solution-checker/
A. Server-to-server
B. API key-based
C. Basic
D. OAuth
Answer : D
OAuth 2.0 is the industry-standard protocol for authorization. After application users provide credentials to authenticate, OAuth determines whether they are authorized to access the resources.
OAuth enables two-factor authentication (2FA) or certificate-based authentication for server-to-server application scenarios.
Reference:
https://docs.microsoft.com/en-us/power-apps/developer/data-platform/authenticate-oauth
A. Replace all instances of the ClearCollect method with the connect method.
B. Replace the existing code segment with the following code segment Concurrent (ClearCollect(collectNeighborList, Filter(NeighborList, Status = ג€Activeג€)),
ClearCollect(collectRealtorList,CompanyList),ClearCollect(collectRegions, RegionList))
C. Replace the existing code segment with the following code segment: ClearCollect(collectNeighborList, Filter(NeighborList, Status = ג€Activeג€)); Concurrent(ClearCollect(collectRealtorList,CompanyList));
Concurrent(ClearCollect(collectRegions, RegionList))
Answer : B
Answer :
Add credentials -
Credentials are used by confidential client applications that access a web API. Examples of confidential clients are web apps, other web APIs, or service-type and daemon-type applications. Credentials allow your
application to authenticate as itself, requiring no interaction from a user at runtime.
You can add both certificates and client secrets (a string) as credentials to your confidential client app registration.
Step 3: Create the application user in Dataverse using the Application User form.
App registration can also be done by an application developer or individual user who is building a client application to connect to and read/write data in Dataverse.
Use the Application ID and Redirect URI values from your registered app in your client application's authentication code to be able to connect to Dataverse environment from your client application, and perform the
required operations. Note that if the app is registered in the same tenant as your Dataverse environment, you won't be presented with a consent form when connecting from your client application to your Dataverse
environment.
Note: When end users use the ISV's application for the first time to connect to their Dataverse environment by providing their Dataverse credentials, a consent form is presented to the end user. After consenting to use
their Dataverse account with the ISV's application, end users can connect to Dataverse environment from external application. The consent form is not displayed again to other users after the first user who has already
consented to use the ISV's app. Apps registered in Azure Active Directory are multi-tenant, which implies that other Dataverse users from other tenant can connect to their environment using the ISV's app.
Step 4: Assign a security role to the application user in Dataverse
Grant access to users that already have a Dynamics 365 license
Any user who already has a license for any model-driven app in Dynamics 365 also will be able to access Dynamics 365 Marketing without requiring any additional licenses. All you need to do is assign them the
security roles and privileges required to access the Marketing features they need.
Incorrect:
* Grant the Dataverse application user the Access Dynamics 365 as organization users permission in Azure AD.
Reference:
https://docs.microsoft.com/en-us/power-apps/developer/data-platform/walkthrough-register-app-azure-active-directory https://docs.microsoft.com/en-us/azure/active-directory/develop/quickstart-register-app
https://docs.microsoft.com/en-us/dynamics365/marketing/admin-users-licenses-roles
Answer :
Itג€™ll be the same result ג€" you will have the harness started, but, also, your original terminal session will continue to work, and you wonג€™t need to open
another one.
Launching the test harness in watch mode enables you to quickly see the changes in action. Changes made to any of the following component assets are
automatically reflected in the test harness without having to restart it: index.ts file.
Imported modules in index.ts (excluding node_modules).
All of the resources listed in the ControlManifest.Input.xml file, for example, css/DataSetGrid.css or strings/DataSetGrid.1033.resx
Incorrect:
* To start the test harness, you would use the following command: npm start
This is fast and convenient, but this command will lock your terminal session. For example, if you are doing PCF development in Visual Studio Code, here is what
you will see in the terminal window:
Reference:
https://docs.microsoft.com/en-us/power-apps/developer/component-framework/debugging-custom-controls https://www.itaintboring.com/dynamics-
crm/test-harness-for-pcf-controls-we-can-also-use-start-npm-start/
Answer :
DataSourceInfo function -
Data sources can provide a wealth of information to optimize the user experience.
Step 4: Configure a visibility expression.ֲ¨
You can use Power Fx for both actions (what happens when the command button is selected) as well as visibility (logic to control when the button is visible).
Visible -
Defines logic for hiding or showing the button when running the app.
To define visibility logic select the command. Then select Visibility on the right command properties pane and choose Show on condition from formula. You may now select Visible on the left of the formula bar then
write a Power Fx expression using the formula bar.
Step 5: Create a task by using OnSelect expression.
OnSelect -
Defines the logic that will be executed when the button is selected within the app.
Reference:
https://docs.microsoft.com/en-us/power-apps/maker/model-driven-apps/use-command-designer https://docs.microsoft.com/en-us/power-apps/maker/model-driven-apps/commanding-use-powerfx
The button must copy information for the selected product and create a record in the data source. You add the following code to the button. (Line numbers are included for reference only.)
A. UpdateContext(
B. IsMatch(
C. LoadData(
D. Patch(
E. SaveData(
Answer : A
Answer :
Which two tools can you use? Each correct answer presents part of the solution.
Answer : AC
You are creating a model-driven app for users to submit and manage budgets for projects.
You must create a business process flow to ensure any lead with a budget over $10,000 requires approval by a manager. You must add a custom control that allows users to select the estimated budget cost for a
project.
In which order should you perform the actions? To answer, move all actions from the list of actions to the answer area and arrange them in the correct order.
Answer :
The engineering team in a company uses a SharePoint list to manage critical technical issues that are raised by clients. Other departments do not have access to this list. Departments use their own apps for their own
processes.
All departments must be able to see the total number of client issues at any point in time.
You need to design a component that can be used in all the departmental apps to display the total number of client issues in bold colors.
Which four 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.
NOTE: Each correct selection is worth one point
Answer :
Case Study
-
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background
-
Proseware, Inc. is an industry leading software company with several thousand employees. The company has had some trouble recruiting talented employees. Top-level candidates interview with the company but go
on to work for competitors.
Feedback from candidates show that some offers were not accepted because the interview scheduling process was unpleasant. The company does not have a system to keep track of the candidates that were not
selected.
Current Environment
-
The recruiting process starts when an individual applies for a position on the company website. The individual may have found the position on their own, they may have been officially referred by an employee, or in
some cases were contacted directly by a hiring manager and encouraged to apply.
Recruiters schedule an interview with a hiring manager and interviews with two senior team members. Each interview results in feedback about the candidate and a recommendation whether to hire or not.
The company has the following Microsoft Dataverse tables and columns:
• JobPosting
- Hiring Manager - lookup to SystemUser
- Recruiter Assigned - lookup to SystemUser
• Contact (Job Applicant)
- Contact identifier
- First name
- Last name
- Time-Zone Offset
- Person of Interest - Yes/No (default)
• Application proapplication
- Contact identifier, Contact - lookup to Contact
- Job Posting - lookup to JobPosting
- pro_recruiterassignedid
• Interview
- Application - lookup to Application
- Job Posting - lookup to JobPosting
- Recommend - Choice (Yes (0), No (1), and null (default) are the available values)
- Person of Interest - Yes/No, No is the default value
• Referral
- Contact - lookup to Contact
- Referrer - lookup to SystemUser
- Job Posting - lookup to JobPosting
• SystemUser
- Manager - lookup to SystemUser
- Time-Zone Offset
• Recruiter
- Recruiter identifier
- Recruiter name
Applications
-
There may be multiple applications associated with each job posting. Applications are linked to an employee record if an employee referred the applicant for a position. The same individual can be an applicant for
multiple job postings.
Interviews
-
Each interview is performed by an employee and is related to a single application.
The interview scheduling process may force potential candidates to accept interviews at unusual times with the senior team members due to time-zone differences.
The system must provide recruiters with a list of team members and their time-zone information. You must create a Microsoft Power Apps Component Framework (PCF) control for the Job Application form to display
a list of senior team members who report directly to a hiring manager.
• The control must display the current time in each team member's local time.
• The control must be bound so that it minimizes the amount of code that must be written.
• You must display the list of team members and sort the list to show team members who reside in time zones closest to the applicant's time zone first.
You must develop a second PCF control that displays the time-zone name and current time on the Job Application form. You must display the data in the candidate’s local time.
You must create a process to identify individuals as a person of interest that the company should consider hiring. You must assign each individual a score based on their past interactions.
The automated process must run weekly to assess all candidates. The process must also run automatically when historical information is updated. You must be able to perform scoring by selecting a command button
on the contact form.
• This new command button must only be visible to employees who belong to a security role assigned named Recruiter. The command button must not be visible to anyone unless the contact form is in Update mode.
• A person of interest is defined as having a score of 15 or more based on the following historical information criteria:
- Each interview with a recommendation adds two to the score.
- Each interview without a recommendation subtracts two from the score.
- Each employee or manager referral adds one to the score.
- Each designation or certification adds one to the score.
• All scoring elements must be recalculated when changes occur. You must assign the score to the Person of interest field.
• Values representing totals or scores must be stored in their own numeric fields.
• Plug-ins must be used to keep the Person of Interest field on active interview records associated with the Contact.
• Plug-ins registered on the update of the Person of interest field must send an email notification when the candidate named in the email is a person of interest. Recruiters must receive the message when the field is
updated on the Contact record.
• Interviewers must get an email notification when the Person of Interest field on the interview record is successfully updated.
• Schema changes must be made using the method requiring the least amount of storage to meet the requirement.
• Out-of-the-box functionality must be used when possible.
• Any code required to calculate scores must be able to be run from a single point.
• Email notifications need to be kept to a minimum.
Issues
-
• Recruiters report that the command button to score a candidate is not working. You debug the code and observe that the context input parameter is null.
• The system does not support associating designations and certifications with candidates.
• The value for the field used by the PCF control to display local time is saved to Microsoft Dataverse each time an active application record is opened.
• Interviewers report that they do not receive email notifications when interview records are created for an existing person of interest.
Which configurations should you use? To answer, drag the appropriate configurations to the correct columns. Each configuration 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.
Answer :
Case Study
-
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background
-
Proseware, Inc. is an industry leading software company with several thousand employees. The company has had some trouble recruiting talented employees. Top-level candidates interview with the company but go
on to work for competitors.
Feedback from candidates show that some offers were not accepted because the interview scheduling process was unpleasant. The company does not have a system to keep track of the candidates that were not
selected.
Current Environment
-
The recruiting process starts when an individual applies for a position on the company website. The individual may have found the position on their own, they may have been officially referred by an employee, or in
some cases were contacted directly by a hiring manager and encouraged to apply.
Recruiters schedule an interview with a hiring manager and interviews with two senior team members. Each interview results in feedback about the candidate and a recommendation whether to hire or not.
The company has the following Microsoft Dataverse tables and columns:
• JobPosting
- Hiring Manager - lookup to SystemUser
- Recruiter Assigned - lookup to SystemUser
• Contact (Job Applicant)
- Contact identifier
- First name
- Last name
- Time-Zone Offset
- Person of Interest - Yes/No (default)
• Application proapplication
- Contact identifier, Contact - lookup to Contact
- Job Posting - lookup to JobPosting
- pro_recruiterassignedid
• Interview
- Application - lookup to Application
- Job Posting - lookup to JobPosting
- Recommend - Choice (Yes (0), No (1), and null (default) are the available values)
- Person of Interest - Yes/No, No is the default value
• Referral
- Contact - lookup to Contact
- Referrer - lookup to SystemUser
- Job Posting - lookup to JobPosting
• SystemUser
- Manager - lookup to SystemUser
- Time-Zone Offset
• Recruiter
- Recruiter identifier
- Recruiter name
Applications
-
There may be multiple applications associated with each job posting. Applications are linked to an employee record if an employee referred the applicant for a position. The same individual can be an applicant for
multiple job postings.
Interviews
-
Each interview is performed by an employee and is related to a single application.
The interview scheduling process may force potential candidates to accept interviews at unusual times with the senior team members due to time-zone differences.
The system must provide recruiters with a list of team members and their time-zone information. You must create a Microsoft Power Apps Component Framework (PCF) control for the Job Application form to display
a list of senior team members who report directly to a hiring manager.
• The control must display the current time in each team member's local time.
• The control must be bound so that it minimizes the amount of code that must be written.
• You must display the list of team members and sort the list to show team members who reside in time zones closest to the applicant's time zone first.
You must develop a second PCF control that displays the time-zone name and current time on the Job Application form. You must display the data in the candidate’s local time.
You must create a process to identify individuals as a person of interest that the company should consider hiring. You must assign each individual a score based on their past interactions.
The automated process must run weekly to assess all candidates. The process must also run automatically when historical information is updated. You must be able to perform scoring by selecting a command button
on the contact form.
• This new command button must only be visible to employees who belong to a security role assigned named Recruiter. The command button must not be visible to anyone unless the contact form is in Update mode.
• A person of interest is defined as having a score of 15 or more based on the following historical information criteria:
- Each interview with a recommendation adds two to the score.
- Each interview without a recommendation subtracts two from the score.
- Each employee or manager referral adds one to the score.
- Each designation or certification adds one to the score.
• All scoring elements must be recalculated when changes occur. You must assign the score to the Person of interest field.
• Values representing totals or scores must be stored in their own numeric fields.
• Plug-ins must be used to keep the Person of Interest field on active interview records associated with the Contact.
• Plug-ins registered on the update of the Person of interest field must send an email notification when the candidate named in the email is a person of interest. Recruiters must receive the message when the field is
updated on the Contact record.
• Interviewers must get an email notification when the Person of Interest field on the interview record is successfully updated.
• Schema changes must be made using the method requiring the least amount of storage to meet the requirement.
• Out-of-the-box functionality must be used when possible.
• Any code required to calculate scores must be able to be run from a single point.
• Email notifications need to be kept to a minimum.
Issues
-
• Recruiters report that the command button to score a candidate is not working. You debug the code and observe that the context input parameter is null.
• The system does not support associating designations and certifications with candidates.
• The value for the field used by the PCF control to display local time is saved to Microsoft Dataverse each time an active application record is opened.
• Interviewers report that they do not receive email notifications when interview records are created for an existing person of interest.
You create the following Fetch XML query to determine the number of interviews where there are no recommendations for an applicant.
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
Answer :
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background -
Northwind Traders uses Microsoft Dynamics 365 Sales to manage its sales process. To better understand its customers, Northwind Traders invests in a team of researchers who gather data from multiple sources. The
company stores the data it collects in a Microsoft Azure SQL Database. The company plans to use the data to enrich account records and make the sales team more effective.
Current environment -
Environment -
• The company has three Microsoft Power Platform environments with Dynamics 365 Sales installed. The environments are named development, test, and production.
• Each environment has an application user that can be used for integrations.
• The company must use solutions to perform all customization and configuration deployment.
Data -
Web API -
• The company creates an Azure Function to run a RESTful .NET Web API.
• Data can be retrieved by placing a GET request to the URL https://dataservice-[ENVIRONMENTNAME].azurewebsites.net/enrich/[DATAID].
• [ENVIRONMENTNAME] is the name of the Microsoft Power Platform environment that requests the data.
• [DATAID] is the new_dataid column in the Account table.
• The Web API response will return a 200 response plus data if the DataId is found. Otherwise, a 404 response is returned.
• Developers plan to create a custom connector from the Web API to make it accessible from Microsoft Power Platform.
Requirements -
Custom connector -
• The Web API definition used to create the custom connector must be generated based on a low-code technology.
• The URL used by the custom connector must incorporate the current environment name without hardcoding values.
• Errors generated by the custom connector must not cause downstream processes to fail.
• Text descriptions and field placeholder text that describe the use of the custom connector must appear for non-developers.
Process -
• All account records must be updated with data from the Web API once automatically.
• Only account records that contain a DataId should be updated by the Web API.
• Researchers must create Power Automate flows to specify data analysis priority.
• The researchers require a process that repurposes a set of identical steps of parameterized Microsoft Dataverse queries from a Power Automate flow for use in other flows that have different parameters. The
researchers want to avoid recreating the steps manually each time they create a flow to save time and avoid errors.
Issues -
• A tester attempts to connect to the production instance of the Web API with a DataId that should return data. The tester receives an error stating that the remote name could not be resolved.
• A missing component causes an error to occur when importing the solution that contains the Power Automate flow to update account records in a test environment.
Answer : A
Which three component types can you move? Each correct answer presents part of the solution.
A. available UI languages
B. scheduled power automate flow
C. custom entity
D. modified standard security role
E. Currencies enabled in the environment
Answer : ACE
You must restrict users in customer service from being able to change the value of the balance field on the Contact records. The accounting team must be the only team able to edit this field.
You need to create the appropriate solution without any customizations.
Answer : C
You observe that the following issues occur with the app:
• One custom column displays an unexpected value when a new record is created.
• An error prevents the record from saving.
You need to use the browser to find the root cause of the issues.
Which events should you debug? To answer, select the appropriate options in the answer area.
Answer :
The forms in the app do not work as expected. You must troubleshoot the form issues.
Which URL parameters should you use? To answer, move the appropriate URL parameters to the correct events. You may use each URL parameter once, more than once, or not at all. You may need to move the split
bar between panes or scroll to view content.
NOTE: Each correct selection is worth one point.
Answer :
You must restrict users in customer service from being able to change the value of the balance field on the Contact records. The accounting team must be the only team able to edit this field.
A. Enable field security for the balance field and grant the customer service team read permissions.
B. Create a customer service form and role and make the balance field read-only.
C. Create a customer service form and role and a business rule that enables the balance field.
D. Create an accounting form and role and a business rule that enables the balance field.
Answer : A
Answer : C
The asynchronous service executes long-running operations independent of the main Microsoft Dataverse core operation. This results in improved overall system performance and improved scalability.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/common-data-service/asynchronous-service
Answer :
Box 1: No -
Box 2: Yes -
ContinueOnError: When true, continue processing the next request in the collection even if a fault has been returned from processing the current request in the collection. When false, do not continue processing the
next request.
ReturnResponses: When true, return responses from each message request processed. When false, do not return responses.
When false, the Responses collection will not be empty if errors are returned. If errors are returned, there will be one response item in the collection for each processed request that returned a fault and Fault will be set
to the actual fault that occurred.
Box 3: No -
Box 4: Yes -
For example, in a request collection that contains six requests where the third and fifth request return faults, the following table indicates what the Responses collection would contain.
ContinueOnError=true, ReturnResponses=false: 2 response items: 2 have Fault set to a value.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/common-data-service/org-service/execute-multiple-requests
Answer :
Box 1: Step -
Each step represents a field where data can be entered.
Stages tell you where you are in the process, while steps are action items that lead to a desired outcome.
Box 3: Stage -
Each stage contains a group of steps.
Incorrect Answers:
You can use custom controls to add rich visualizations (such as sliders, radial knobs, the LinkedIn control, and more) to business process flows steps and deliver engaging experiences to those who use your business
process.
Reference:
https://docs.microsoft.com/en-us/power-automate/business-process-flows-overview https://docs.microsoft.com/en-us/power-automate/enhance-business-process-flows-branching
Use the drop-down menus to select the answer choice that answers each question based on the information presented in the graphic.
NOTE: Each correct selection is worth one point.
Hot Area:
Answer :
Reference:
https://www.loganconsulting.com/blog/how-use-power-automate-trigger-workflows-microsoft-dynamics-crm/
A. Two automated flows with scope Business Unit, with triggers on Create/Update/Delete on orders.
B. Two automated flows with scope Business Unit, with triggers on Create/Update/Delete and each flow filtering updates from each business unit.
C. Two scheduled flows, each querying and updating the parts included in orders from each business unit.
D. One scheduled flow, querying the parts included in orders in both business units.
E. One automated flow, querying the orders in both business units.
F. Two scheduled flows, each querying the orders from each business unit.
G. Two automated flows with scope Organization, with triggers on Create/Update/Delete and filters on WH1 and WH2.
H. Two automated flow with scope Business Unit, with triggers on Create/Update/Delete on orders and filters on WH1 and WH2.
Answer : H
With the Common Data Service connector, you can create Power Automate flows that are initiated by create and update events within Dataverse. Additionally, you can perform create, update, retrieve, and delete
actions on records within Dataverse.
You can use scopes to determine if your flow runs if you create a new record, if a new record is created by a user within your business unit, or if a new record is created by any user in your organization.
Reference:
https://docs.microsoft.com/en-us/power-automate/connection-cds
Answer :
If the total discount on an order exceeds 30 percent, a manager must approve the order before the order is fulfilled and delivered.
You need to create a flow that notifies managers when approvals are required.
How should you configure the flow trigger? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Hot Area:
Answer :
Box 1: store_totaldiscount -
If the total discount on an order exceeds 30 percent, a manager must approve the order before the order is fulfilled and delivered.
Box 2: @greater(add(triggerBody()..
When to use triggerBody() ? ג€" When you want to fetch attributes from the body of the trigger.
Incorrect Answers:
When to use triggerOutputs() ? ג€" Whenever you need to access anything from within the body as well as some info from the header as well.
Reference:
https://d365demystified.com/2020/09/06/using-triggerbody-triggeroutput-to-read-cds-trigger-metadata-attributes-in-a-flow-power-automate/
Answer : BC
Answer : D
Set scope of business rule to "Entity" instead of "All Form". This will trigger it on server side.
Reference:
https://docs.microsoft.com/en-us/previous-versions/dynamicscrm-2016/developers-guide/dn481574(v=crm.8)
A. a workflow
B. an action step
C. a data step
Answer : A
When you include a workflow that you want to trigger on Stage Exit of a stage in your business process flow, and that stage is the last stage in the flow, the designer gives the impression that the workflow will be
triggered when that stage is completed.
Reference:
https://docs.microsoft.com/en-us/dynamics365/customerengagement/on-premises/customize/business-process-flows-overview
Answer : AE
Answer : A
Answer :
Answer :
Reference:
https://docs.microsoft.com/en-us/powerapps/teams/embed-teams-app https://docs.microsoft.com/en-us/microsoftteams/teams-app-permission-policies
Here are the steps you must follow to add custom controls to a business process flow:
Step 1: Configure custom controls on a related entity.
Step 2: Generate and exporting the business process flow form.
Step 3: Copy custom control configurations to the FormXML for the business process flow.
Step 4: Import customizations into the Microsoft Dataverse environment.
Note:
1. Configure custom controls on a related table form.
2. Generate and exporting the business process flow form.
3. Copy custom control configurations to the business process flow form from the related table form.
4. Import the customizations back into Microsoft Dataverse.
Reference:
https://docs.microsoft.com/en-us/power-automate/custom-controls-business-process-flows
Box 1: Workflow -
You configure the approval processes in a workflow.
Box 3: JavaScript -
In Dynamics 365, you can hide and show fields using JavaScript. This is useful if you have business logic that determines if fields are displayed or not to the user.
Reference:
https://docs.microsoft.com/en-us/dynamics365/fin-ops-core/fin-ops/organization-administration/configure-approval-process-workflow
Answer :
Box 1: equals -
Box 2: User1 -
Box 3: User2 -
Reference:
https://www.enjoysharepoint.com/power-automate-if/
Question 157 ( Question Set 4 )
You create a form in a model-driven app that uses data from the Lead table in a Microsoft Dataverse instance. You add a business rule to the Lead table. The business rule displays an error if the email address is null.
You set the scope for the business rule to All Forms.
You configure a Power Apps portal by using the same Microsoft Dataverse instance. You create a web page by using the Lead form.
You need to ensure the same logic is applied on the Power Apps portal page.
What are two possible ways to achieve the goal? Each correct answer presents a complete solution.
NOTE: Each correct selection is worth one point.
A. Deactivate the business rule. Change the scope for the rule to Table and then reactivate the rule.
B. Replace the business rule logic with a Microsoft Power Automate cloud flow by using the Dataverse When a row is added, modified or deleted trigger.
C. Extend the webFormClientValidate JavaScript function to replace the business rule logic. Edit the code in Power Apps Studio. Add the function in a <script> block.
D. Create a JavaScript web resource and replace the business rule with a JavaScript function. Add an OnSave event handler to the Lead form.
Answer : AD
PowerApps Portal or CRM Portal don't support Business Rule that apply on the Forms.
A: Business rules defined for a table apply to both canvas apps and model-driven apps if the table is used in the app.
D: PostSave event occurs after the OnSave event is complete. This event is used to support or execute custom logic using web resources to perform after Save actions when the save event is successful or failed due to
server errors.
Reference:
https://docs.microsoft.com/en-us/power-apps/maker/data-platform/data-platform-create-business-rule https://powerusers.microsoft.com/t5/Power-Apps-Portals/Business-rules-in-a-PowerApps-Portal/td-
p/404588
A. Create new fields on the customer entity for insurance exposure and risk. Write a workflow process that is triggered when a new policy record is created to calculate the sum of values from policy records.
B. Update the Mass Calculate Rollup Field job to trigger when a new policy record is created.
C. Create a plug-in that uses the update method for the rollup fields. Configure a step on the Create event for the policy entity for this plug-in.
D. Create a plug-in that uses the CalculateRollupFieldRequest method for the rollup field. Configure a step on the Create event for the policy entity for this plug-in.
Answer : B
Rollup column values are calculated asynchronously by scheduled system jobs. Administrators set when a job is run or pause the job.
Mass Calculate Rollup Field.
Mass Calculate Rollup Field is a recurring job, created for each rollup column. It runs once, after you create or update a rollup column. The job recalculates the specified rollup column value in all existing records that
contain this column. By default, the job will run 12 hours after you have created or updated a column.
When the column is modified, the job resets to run again in 12 hours after the update. The 12-hour delay is needed to assure that the Mass Calculate Rollup Field runs during the non-operational hours of the
environment.
Reference:
https://docs.microsoft.com/en-us/power-apps/maker/data-platform/define-rollup-fields
What are two possible ways to achieve this goal? Each correct answer presents a complete solution.
A. Create the flow and set the flow frequency to daily and the interval to 1.
B. Create the flow and set the flow frequency to daily and the interval to 24.
C. Create the flow and set the flow frequency to hourly and the interval to 1.
D. Create the flow and set the flow frequency to hourly and the interval to 24.
Answer : AD
You create a business process flow that is associated with the Contact table. You grant users Create, Read, and Write permissions on the business process flow.
Users report that the new business process flow does not appear when the users create new contact records. You verify that you can view the business process flow when you sign into the app and create a new contact
record.
Users report that the system does not update values for the rollup fields when new insurance policies are written.
You need to recalculate the value of the rollup fields immediately after a policy is created.
A. Create new fields on the customer entity for insurance exposure and risk. Write a workflow process that is triggered when a new policy record is created to calculate the sum of values from policy records.
B. Create new calculated fields on the customer entity for insurance exposure and risk. Configure the formula to calculate the sum of values from policy records.
C. Change the frequency of the Calculate Rollup Field recurring job from every hour to every five minutes.
D. Create new fields on the customer entity for insurance exposure and risk. Write a plug-in that is triggered whenever a new policy is created.
Answer : D
You need to determine when to initialize a variable that is used to process the records.
Answer : C
You need to select the variables that will return information about the logged in user.
A. AuthToken
B. UserDisplayName
C. UserID
D. IsLoggedIn
Answer : BC
You are using the Opportunities table to estimate the opportunity. The requirements for the app include:
• An email must be sent to the sales team if the opportunity is over $50,000.
• Users must be able to enter sponsors when creating a record if the opportunity is over one million dollars.
To answer, drag the appropriate tools to the correct requirements. Each tool 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.
Answer :
Which components should you use? To answer, select the appropriate options in the answer area.
Answer :
Users report that the system does not update values for the rollup fields when new insurance policies are written.
You need to recalculate the value of the rollup fields immediately after a policy is created.
A. Create new calculated fields on the customer entity for insurance exposure and risk. Configure the formula to calculate the sum of values from policy records.
B. Create a plug-in that uses the update method for the rollup field. Configure a step on the Create event for the policy entity for this plug-in.
C. Create new fields on the customer entity for insurance exposure and risk. Write a plug-in that is triggered whenever a new policy is created.
D. Create new fields on the customer entity for insurance exposure and risk. Write a workflow process that is triggered when a new policy record is created to calculate the sum of values from policy records.
Answer : C
Case study
-
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background
-
Northwind Traders uses Microsoft Dynamics 365 Sales to manage its sales process. To better understand its customers, Northwind Traders invests in a team of researchers who gather data from multiple sources. The
company stores the data it collects in a Microsoft Azure SQL Database. The company plans to use the data to enrich account records and make the sales team more effective.
Current environment
-
Environment
-
• The company has three Microsoft Power Platform environments with Dynamics 365 Sales installed. The environments are named development, test, and production.
• Each environment has an application user that can be used for integrations.
• The company must use solutions to perform all customization and configuration deployment.
Data
-
Web API
-
• The company creates an Azure Function to run a RESTful .NET Web API.
• Data can be retrieved by placing a GET request to the URL https://dataservice-[ENVIRONMENTNAME].azurewebsites.net/enrich/[DATAID].
• [ENVIRONMENTNAME] is the name of the Microsoft Power Platform environment that requests the data.
• [DATAID] is the new_dataid column in the Account table.
• The Web API response will return a 200 response plus data if the DataId is found. Otherwise, a 404 response is returned.
• Developers plan to create a custom connector from the Web API to make it accessible from Microsoft Power Platform.
Requirements
-
Custom connector
-
• The Web API definition used to create the custom connector must be generated based on a low-code technology.
• The URL used by the custom connector must incorporate the current environment name without hardcoding values.
• Errors generated by the custom connector must not cause downstream processes to fail.
• Text descriptions and field placeholder text that describe the use of the custom connector must appear for non-developers.
Process
-
• All account records must be updated with data from the Web API once automatically.
• Only account records that contain a DataId should be updated by the Web API.
• Researchers must create Power Automate flows to specify data analysis priority.
• The researchers require a process that repurposes a set of identical steps of parameterized Microsoft Dataverse queries from a Power Automate flow for use in other flows that have different parameters. The
researchers want to avoid recreating the steps manually each time they create a flow to save time and avoid errors.
Issues
-
• A tester attempts to connect to the production instance of the Web API with a DataId that should return data. The tester receives an error stating that the remote name could not be resolved.
• A missing component causes an error to occur when importing the solution that contains the Power Automate flow to update account records in a test environment.
You need to configure a Dataverse trigger and action in a Power Automate flow so researchers can update account records with data from the Web API even if they do not have edit privileges on the record.
What should you configure for each trigger and action requirement? To answer, select the appropriate options in the answer area.
Answer :
Users report that the system does not update values for the rollup fields when new insurance policies are written.
You need to recalculate the value of the rollup fields immediately after a policy is created.
A. Change the frequency of the Calculate Rollup Field recurring job from every hour to every five minutes.
B. Create new fields on the customer entity for insurance exposure and risk. Write a workflow process that is triggered when a new policy record is created to calculate the sum of values from policy records.
C. Create new fields on the customer entity for insurance exposure and risk. Write a plug-in that is triggered whenever a new policy record is created.
D. Update the Mass Calculate Rollup Field job to trigger when a new policy record is created.
Answer : C
You manage a Microsoft Power Automate cloud flow that uses a List rows action to query data from the Accounts table. The Accounts table contains more than 15,000 rows.
Which properties should you configure? To answer, move the appropriate properties to the correct requirements. You may use each property once, more than once, or not at all. You may need to move the split bar
between panes or scroll to view content.
Answer :
Case study
-
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background
-
Northwind Traders uses Microsoft Dynamics 365 Sales to manage its sales process. To better understand its customers, Northwind Traders invests in a team of researchers who gather data from multiple sources. The
company stores the data it collects in a Microsoft Azure SQL Database. The company plans to use the data to enrich account records and make the sales team more effective.
Current environment
-
Environment
-
• The company has three Microsoft Power Platform environments with Dynamics 365 Sales installed. The environments are named development, test, and production.
• Each environment has an application user that can be used for integrations.
• The company must use solutions to perform all customization and configuration deployment.
Data
-
• The company creates an Azure Function to run a RESTful .NET Web API.
• Data can be retrieved by placing a GET request to the URL https://dataservice-[ENVIRONMENTNAME].azurewebsites.net/enrich/[DATAID].
• [ENVIRONMENTNAME] is the name of the Microsoft Power Platform environment that requests the data.
• [DATAID] is the new_dataid column in the Account table.
• The Web API response will return a 200 response plus data if the DataId is found. Otherwise, a 404 response is returned.
• Developers plan to create a custom connector from the Web API to make it accessible from Microsoft Power Platform.
Requirements
-
Custom connector
-
• The Web API definition used to create the custom connector must be generated based on a low-code technology.
• The URL used by the custom connector must incorporate the current environment name without hardcoding values.
• Errors generated by the custom connector must not cause downstream processes to fail.
• Text descriptions and field placeholder text that describe the use of the custom connector must appear for non-developers.
Process
-
• All account records must be updated with data from the Web API once automatically.
• Only account records that contain a DataId should be updated by the Web API.
• Researchers must create Power Automate flows to specify data analysis priority.
• The researchers require a process that repurposes a set of identical steps of parameterized Microsoft Dataverse queries from a Power Automate flow for use in other flows that have different parameters. The
researchers want to avoid recreating the steps manually each time they create a flow to save time and avoid errors.
Issues
-
• A tester attempts to connect to the production instance of the Web API with a DataId that should return data. The tester receives an error stating that the remote name could not be resolved.
• A missing component causes an error to occur when importing the solution that contains the Power Automate flow to update account records in a test environment.
You need to implement a reusable solution to encapsulate the parameterized Dataverse queries.
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.
Answer :
A. Xrm.WebApi.online.executeMultiple()
B. Xrm.WebApi.online.updateRecord()
C. Xrm.WebApi.online.createRecord()
D. Xrm.WebApi.online.execute()
Answer : AD
Xrm.WebApi.online.executeMultiple executes a collection of action, function, or CRUD operations.
Xrm.WebApi.online.execute executes a single action, function, or CRUD operation.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/model-driven-apps/clientapi/reference/xrm-webapi/online/executemultiple https://docs.microsoft.com/en-us/powerapps/developer/model-driven-
apps/clientapi/reference/xrm-webapi/online/execute
A. https://globaldisco.crm.dynamics.com/api/discovery/v9.1/instances
B. https://myorg.api.crm.dynamics.com/api/data/v9.1/
C. https://dev.crm.dynamics.com/api/discovery/v9.1/instances
D. https://disco.crm.dynamics.com/api/discovery/v9.1/
E. https://dev.crm.dynamics.com/api/discovery/v9.1/instances(UniqueName=ג€™myorgג€™)
Answer : CE
Organization information is stored in the Instance entity of the Discovery service. To see the kind of information contained in that entity, send an HTTP GET request to the service for one of your instances.
GET https://dev.{servername}/api/discovery/v9.0/Instances(UniqueName='myorg')
Example: Get the details of a specific instance. If you leave out the GUID, all instances that the authenticated user has access to are returned.
GET https://dev.{servername}/api/discovery/v9.0/Instances(<guid>)
Reference:
https://docs.microsoft.com/en-us/dynamics365/customerengagement/on-premises/developer/webapi/discover-url-organization-web-api
A. In the JavaScript web resource, add the missing web resource as a dependency.
B. Add &ribbondebug=true to the app URL and run the Command Checker tool.
C. From the Ribbon Workbench, add the missing JavaScript web resource as a CustomRule in EnableRules.
Answer : A
A. updateView
B. notifyOutputChanged
C. getOutputs
Answer : A
The updateView method will be called when any value in the property bag has changed. This includes field values, data-sets, global values such as container height and width, offline status, component metadata values
such as label, visible, etc.
Note: webAPI.retrieveMultipleRecords retrieves a collection of entity records.
Incorrect Answers:
notifyOutputChanged is a callback method to alert the framework that the control has new outputs ready to be retrieved asynchronously. getOutputs is called by the framework prior to a component receiving the new
data. Returns an object based on nomenclature defined in manifest, expecting objects[s] for the property marked as bound.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/component-framework/reference/control/updateview https://www.inogic.com/blog/2021/01/what-is-popupservice-in-powerapps-component-framework/
Answer :
Box 1: Yes -
getFormTyp gets the form type for the record.
Form type 2 is Update.
Note: Syntax: formContext.ui.getFormType();
Return Value -
Type: Number -
Description: Form type. Returns one of the following values
RETURN VALUE -
Box 2: Yes -
Xrm.WebApi.updateRecord Return Value: On success, returns a promise object containing the values specified earlier in the description of the successCallback parameter.
Note:
Syntax: Xrm.WebApi.updateRecord(entityLogicalName, id, data).then(successCallback, errorCallback);
Where errorCallback: A function to call when the operation fails. An object with the following properties will be passed: errorCode: Number. The error code. message: String. An error message describing the issue.
Box 3: No -
It will displayed even if the update fails.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/model-driven-apps/clientapi/reference/formcontext-ui/getformtype https://docs.microsoft.com/en-us/powerapps/developer/model-driven-
apps/clientapi/reference/xrm-webapi/updaterecord
The Annual Revenue view column is configured to call the function as shown in the Column Properties exhibit. (Click the Change Column Properties tab.)
Users report that the icons that appear in the Active Accounts view are incorrect, as shown in the Active Accounts View exhibit. (Click the Active Accounts View tab.)
You need to determine why the incorrect icons are being displayed.
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
Hot Area:
Answer :
Box 1: No -
parseFloat will return 'NaN' if it's not a number (null and undefined are NaNs).
Box 2: No -
Box 3: Yes -
Session.userLCID is the Locale ID for the ASP application.
Reference:
https://support.microsoft.com/en-us/help/229690/how-to-set-the-asp-locale-id-per-the-browser-s-language-settings
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
NOTE: Each correct selection is worth one point.
Hot Area:
Answer :
Box 1: Yes -
Box 2: No -
=== - Strict Equality Comparison is already used in the code.
Box 3: No -
No debugger statement in the code, so web-remove-debug-script (avoid including debug script in non-development environments) does not apply.
Reference:
https://docs.microsoft.com/sr-cyrl-rs/powerapps/developer/model-driven-apps/best-practices/business-logic/interact-http-https-resources-asynchronously https://developer.mozilla.org/en-
US/docs/Web/JavaScript/Reference/Operators/Strict_equality
A. Web pages
B. Web resources
C. Webforms
D. Entity lists
Answer : CD
C: The Web Form Step record contains a field named Custom JavaScript that can be used to store JavaScript code to allow you to extend or modify the form's visual display or function.
D: You can add custom Javascripts to Entity lists.
Reference:
https://docs.microsoft.com/en-us/powerapps/maker/portals/configure/add-custom-javascript https://docs.microsoft.com/en-us/powerapps/maker/portals/configure/entity-lists#add-custom-javascript
Box 1: Functions -
most functions and services that are stateless and do not have side effects.
Box 2: Actions -
Actions can have side effects.
Complex types -
Complex types are keyless named structured types consisting of a set of properties. These are value types whose instances cannot be referenced outside of their containing entity. Complex types are commonly used as
property values in an entity or as parameters to operations.
Incorrect:
* An entity type is a named structured type with a key. It defines the named properties and relationships of a table.
* Enumeration types are named primitive types whose values are named constants with underlying integer values.
Type definitions are named primitive types with fixed facet values such as maximum length or precision. Type definitions can be used in place of primitive typed properties, for example, within property definition
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/common-data-service/webapi/use-web-api-actions https://docs.microsoft.com/en-us/odata/concepts/data-model#complex-types
Answer : B
You can create a Single-Page Application (SPA) which uses JavaScript to work with Microsoft Dataverse (Common Data Service) data. To provide this, Cross-
Origin Resource Sharing (CORS) is enabled so that your SPAs can bypass browser restrictions that normally prevent requests that cross domain boundaries.
Reference:
https://docs.microsoft.com/en-us/power-apps/developer/data-platform/oauth-cross-origin-resource-sharing-connect-single-page-application
Answer :
Box 1: CrmParameter -
In addition to data values, you can retrieve client context information by using <CrmParameter>. You can use the following options as the value for the
CrmParameter element: OrgName, OrgLcid, and UserLcid.
Box 2: UserLcid -
userLCID is the language code of the current user.
Note: A locale is a set of user preference information related to the user's language. The locale determines how dates, times, currencies, and numbers are formatted, how items are alphabetically sorted, and how
strings are compared. The locale identifier (LCID) is a 32-bit value that uniquely defines a locale.
Reference:
https://docs.microsoft.com/en-us/dynamics365/customerengagement/on-premises/developer/customize-dev/pass-dynamics-365-data-page-parameter-ribbon- actions
Answer :
Box 1: AdultDatePicker -
Constructor: Constructor of the code component.
Box 2: DateandTime.DateOnly -
Date Only - No Time zone conversion.
The time portion of the value is always 12:00AM.
The date portion of the value is stored and retrieved as specified in the UI and Web services.
Box 3: bound -
usage: Has two properties, bound and input. Bound properties are bound only to the value of the field. Input properties are either bound to a field or allow a static value.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/component-framework/manifest-schema-reference/manifest https://docs.microsoft.com/en-us/powerapps/developer/component-
framework/implementing-controls-using-typescript https://docs.microsoft.com/en-us/power-apps/maker/data-platform/behavior-format-date-time-field
Answer :
Install Dependencies -
Once ג€˜initג€™ sets up the basic folder, as a next step install all the PCF control dependencies using ג€˜npm installג€™ command.
Example:
Now at this point, there is nothing we have actually created. However, the solution created contains sample PCF control code.
Step 3: Run the following np run build command
Build PCF Component.
Once you implement the PCF component, build the code for any syntax errors.
Syntax:
npm run build
Reference:
https://rajeevpentyala.com/2020/03/21/power-apps-component-framework-pcf-demystify/ https://carldesouza.com/creating-a-custom-component-using-the-
powerapps-component-framework/
Answer : B
By default, model-driven apps allows a specified set of query string parameters to be passed to a form. You use these parameters to set default values when you create a new record in the application. Each parameter
must use a standard naming convention that includes a reference to the column logical name.
There are two ways to specify which query string parameters will be accepted by the form:
✑ Edit form properties
✑ Edit form XML
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/model-driven-apps/configure-form-accept-custom-querystring-parameters
A. Yes
B. No
Answer : B
By default, model-driven apps allows a specified set of query string parameters to be passed to a form. You use these parameters to set default values when you create a new record in the application. Each parameter
must use a standard naming convention that includes a reference to the column logical name.
There are two ways to specify which query string parameters will be accepted by the form:
✑ Edit form properties
✑ Edit form XML
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/model-driven-apps/configure-form-accept-custom-querystring-parameters
Answer : A
Answer :
Box 1: 1 -
The css order element is the order in which the CSS files should load.
Box 2: 1 -
The html order element is the order in which the HTML files should load.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/component-framework/manifest-schema-reference/css https://docs.microsoft.com/en-us/powerapps/developer/component-framework/manifest-schema-
reference/html
Answer :
Answer : D
Answer :
Box 1: SortByColums -
The SortByColumns function can be used to sort a table based on one or more columns.
The parameter list for SortByColumns provides the names of the columns to sort by and the sort direction per column. Sorting is performed in the order of the parameters (sorted first by the first column, then the
second, and so on).
Box 2: Filter -
The Filter function finds records in a table that satisfy a formula. Use Filter to find a set of records that match one or more criteria and to discard those that don't.
Incorrect Answers:
✑ Lookup: The LookUp function finds the first record in a table that satisfies a formula. Use LookUp to find a single record that matches one or more criteria.
✑ Search: Search function uses a single string to match instead of a formula.
Reference:
https://docs.microsoft.com/en-us/powerapps/maker/canvas-apps/functions/function-sort
A. Yes
B. No
Answer : A
By default, model-driven apps allows a specified set of query string parameters to be passed to a form. You use these parameters to set default values when you create a new record in the application. Each parameter
must use a standard naming convention that includes a reference to the column logical name.
There are two ways to specify which query string parameters will be accepted by the form:
✑ Edit form properties
✑ Edit form XML
When you edit a form, on the Home tab in the Form group, select Form Properties. In the Form Properties dialog box, select the Parameters tab.
Use this tab to modify the names and data types that the form allows.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/model-driven-apps/configure-form-accept-custom-querystring-parameters
A. Yes
B. No
Answer : A
Within the exported solution customizations.xml file, immediately following the footer element, you can add a <formparameters> element. In the <formparameters> element, add <querystringparameter> elements
to specify which parameters will be allowed.
Note: By default, model-driven apps allows a specified set of query string parameters to be passed to a form. You use these parameters to set default values when you create a new record in the application. Each
parameter must use a standard naming convention that includes a reference to the column logical name.
There are two ways to specify which query string parameters will be accepted by the form:
✑ Edit form properties
✑ Edit form XML
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/model-driven-apps/configure-form-accept-custom-querystring-parameters
Entity: LogicalName -
Querying the EntityMetadata entity type:
GET [Organization URI]/api/data/v9.0/EntityDefinitions(LogicalName='account')
Attribute: LogicalName -
Retrieving attributes:
GET [Organization URI]/api/data/v9.0/EntityDefinitions(LogicalName='account')/Attributes(
Relationship: SchemaName -
Querying relationship metadata:
Entity relationships can also be queried using the RelationshipDefinitions entity set. You can use a query like the following to get the SchemaName property for every relationship.
GET [Organization URI]/api/data/v9.0/RelationshipDefinitions?$select=SchemaName
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/data-platform/webapi/query-metadata-web-api
A. important
B. none
C. internal
D. advanced
Answer : C
Leave the Visibility property set to none. This property for operations and parameters in a logic app or flow has the following options:
✑ none: displayed normally in the logic app or flow
✑ advanced: hidden under an additional menu
✑ internal: hidden from the user
✑ important: always shown to the user first
Reference:
https://docs.microsoft.com/en-us/connectors/custom-connectors/define-blank
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
NOTE: Each correct selection is worth one point.
Hot Area:
Answer :
Box 1: Yes -
Xrm.WebApi.updateRecord updates a table record.
Syntax:
Xrm.WebApi.updateRecord(entityLogicalName, id, data).then(successCallback, errorCallback);
Box 2: Yes -
Box 3: No -
No action would be taken.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/model-driven-apps/clientapi/reference/xrm-webapi/updaterecord
The Business Phone field has the OnChange event handler defined as shown in the Event Handler exhibit. (Click the Event Handler tab.)
Users report that there is incorrect wording on the Contact page, as shown in the Contact exhibit. (Click the Contact tab.)
You need to determine what happens when a user modifies the business phone of a contact record.
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
NOTE: Each correct selection is worth one point.
Hot Area:
Answer :
Box 1: Yes -
setNotification displays an error message for the control to indicate that data isnג€™t valid. When this method is used, a red "X" icon appears next to the control. On
Dynamics 365 mobile clients, tapping on the icon will display the message.
Syntax: formContext.getControl(arg).setNotification(message,uniqueId);
Box 2: No -
Box 3: Yes -
setFormNotification displays form level notifications. You can display any number of notifications and they will be displayed until they are removed using clearFormNotification.
Syntax: formContext.ui.setFormNotification(message, level, uniqueId);
Box 4: No -
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/model-driven-apps/clientapi/reference/formcontext-ui/setformnotification https://docs.microsoft.com/en-us/powerapps/developer/model-driven-
apps/clientapi/reference/controls/setnotification
A. odata.context
B. odata.deltaLink
C. odata.track-changes
D. odata.nextLink
Answer : B
The @odata.deltaLink Uri returned from the below example can be used to fetch changes in tables. In this example a new account was created and an existing account deleted. The delta link returned from the
previous request fetches these changes, as shown in the example below.
{
"@odata.context":"[Organization URI]/api/data/v9.0/$metadata#accounts(name,accountnumber,telephone1,fax)",
"@odata.deltaLink": "[Organization URI]/api/data/v9.0/accounts?$select=name,accountnumber,telephone1,fax&$deltatoken=919042%2108%2f22%2f2017%
2008%3a10%3a44",
"value":[
{
"@odata.etag":"W/\"915244\"",
"name":"Monte Orton",
"accountnumber":null,
"telephone1":"555000",
"fax":"10101",
"accountid":"60c4e274-0d87-e711-80e5-00155db19e6d"
}
]
}
Reference:
https://docs.microsoft.com/en-us/power-apps/developer/data-platform/use-change-tracking-synchronize-data-external-systems
Answer : B
The control element defines the component's namespace, version and display information.
Example:
<?xml version="1.0" encoding="utf-8" ?>
<manifest>
<control namespace="MyNameSpace" constructor="JSHelloWorldControl" version="1.0.0" display-name-key="JS_HelloWorldControl_Display_Key" description- key="JS_HelloWorldControl_Desc_Key" control-
type="standard">
<property name="myFirstProperty" display-name-key="myFirstProperty_Display_Key" description-key="myFirstProperty_Desc_Key" of-type="SingleLine.Text" usage="bound" required="true" />
<resources>
<code path="JS_HelloWorldControl.js" order="1" />
<css path="css/JS_HelloWorldControl.css" order="1" />
</resources>
</control>
</manifest>
Reference:
https://docs.microsoft.com/en-us/power-apps/developer/component-framework/manifest-schema-reference/manifest
You need to configure the associated JavaScript web resource name when adding the event handler to the form.
A. Event Type
B. Component
C. Function
D. Library
Answer : D
The planning department for municipal government wants to survey the land in town and define new property lines. You define a data model for the surveys.
Surveyors and other department employees need a phone app to capture survey data.
You need to define a Power Apps component framework (PCF) component to be used across multiple functional areas.
How should you complete the PCF control manifest? To answer, select the appropriate options in the answer area.
You are developing an inventory tracking component for a warehouse. You plan to use the component with a Power Apps app.
Truck drivers will use tablet devices to confirm their cargo manifest. Warehouse employees will use their phones to pick and fulfill orders. The phone-based version must run in a Power Apps runtime container.
You need to create a single Power Apps component that can be used on both tablet devices and phones.
How should you complete the code segment? To answer, drag the appropriate code segments to the correct locations. Each code segment 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.
Answer :
You need to implement custom functionality in the portal by using JavaScript code.
Which two portal entities can you use? Each correct answer presents a complete solution.
A. Web pages
B. Web resources
C. Web roles
D. Entity lists
Answer : AD
You have the following code registered on the OnChange event of the parentcustomerid column on a contact table form. The parentcustomerid field is a lookup which can be an account or a contact record.
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
You need to implement client-side logic that uses the Microsoft Dataverse web API to evaluate the class type associated with a class record. The code must hide the School Schedule tab if no value is entered for Class
Type.
How should you complete the code? To answer, select the appropriate options in the answer area.
Answer :
Case Study
-
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background
-
Proseware, Inc. is an industry leading software company with several thousand employees. The company has had some trouble recruiting talented employees. Top-level candidates interview with the company but go
on to work for competitors.
Feedback from candidates show that some offers were not accepted because the interview scheduling process was unpleasant. The company does not have a system to keep track of the candidates that were not
selected.
Current Environment
-
The recruiting process starts when an individual applies for a position on the company website. The individual may have found the position on their own, they may have been officially referred by an employee, or in
some cases were contacted directly by a hiring manager and encouraged to apply.
Recruiters schedule an interview with a hiring manager and interviews with two senior team members. Each interview results in feedback about the candidate and a recommendation whether to hire or not.
The company has the following Microsoft Dataverse tables and columns:
• JobPosting
- Hiring Manager - lookup to SystemUser
- Recruiter Assigned - lookup to SystemUser
• Contact (Job Applicant)
- Contact identifier
- First name
- Last name
- Time-Zone Offset
- Person of Interest - Yes/No (default)
• Application proapplication
- Contact identifier, Contact - lookup to Contact
- Job Posting - lookup to JobPosting
- pro_recruiterassignedid
• Interview
- Application - lookup to Application
- Job Posting - lookup to JobPosting
- Recommend - Choice (Yes (0), No (1), and null (default) are the available values)
- Person of Interest - Yes/No, No is the default value
• Referral
- Contact - lookup to Contact
- Referrer - lookup to SystemUser
- Job Posting - lookup to JobPosting
• SystemUser
- Manager - lookup to SystemUser
- Time-Zone Offset
• Recruiter
- Recruiter identifier
- Recruiter name
Applications
-
There may be multiple applications associated with each job posting. Applications are linked to an employee record if an employee referred the applicant for a position. The same individual can be an applicant for
multiple job postings.
Interviews
-
Each interview is performed by an employee and is related to a single application.
The interview scheduling process may force potential candidates to accept interviews at unusual times with the senior team members due to time-zone differences.
The system must provide recruiters with a list of team members and their time-zone information. You must create a Microsoft Power Apps Component Framework (PCF) control for the Job Application form to display
a list of senior team members who report directly to a hiring manager.
• The control must display the current time in each team member's local time.
• The control must be bound so that it minimizes the amount of code that must be written.
• You must display the list of team members and sort the list to show team members who reside in time zones closest to the applicant's time zone first.
You must develop a second PCF control that displays the time-zone name and current time on the Job Application form. You must display the data in the candidate’s local time.
You must create a process to identify individuals as a person of interest that the company should consider hiring. You must assign each individual a score based on their past interactions.
The automated process must run weekly to assess all candidates. The process must also run automatically when historical information is updated. You must be able to perform scoring by selecting a command button
on the contact form.
• This new command button must only be visible to employees who belong to a security role assigned named Recruiter. The command button must not be visible to anyone unless the contact form is in Update mode.
• A person of interest is defined as having a score of 15 or more based on the following historical information criteria:
- Each interview with a recommendation adds two to the score.
- Each interview without a recommendation subtracts two from the score.
- Each employee or manager referral adds one to the score.
- Each designation or certification adds one to the score.
• All scoring elements must be recalculated when changes occur. You must assign the score to the Person of interest field.
• Values representing totals or scores must be stored in their own numeric fields.
• Plug-ins must be used to keep the Person of Interest field on active interview records associated with the Contact.
• Plug-ins registered on the update of the Person of interest field must send an email notification when the candidate named in the email is a person of interest. Recruiters must receive the message when the field is
updated on the Contact record.
• Interviewers must get an email notification when the Person of Interest field on the interview record is successfully updated.
• Schema changes must be made using the method requiring the least amount of storage to meet the requirement.
• Out-of-the-box functionality must be used when possible.
• Any code required to calculate scores must be able to be run from a single point.
• Email notifications need to be kept to a minimum.
Issues
-
• Recruiters report that the command button to score a candidate is not working. You debug the code and observe that the context input parameter is null.
• The system does not support associating designations and certifications with candidates.
• The value for the field used by the PCF control to display local time is saved to Microsoft Dataverse each time an active application record is opened.
• Interviewers report that they do not receive email notifications when interview records are created for an existing person of interest.
You need to configure elements in the manifest for the PCF control used to display local time.
Which values should you use? To answer, select the appropriate options in the answer area.
Answer :
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background -
Proseware, Inc. is an industry leading software company with several thousand employees. The company has had some trouble recruiting talented employees. Top-level candidates interview with the company but go
on to work for competitors.
Feedback from candidates show that some offers were not accepted because the interview scheduling process was unpleasant. The company does not have a system to keep track of the candidates that were not
selected.
Current Environment -
The recruiting process starts when an individual applies for a position on the company website. The individual may have found the position on their own, they may have been officially referred by an employee, or in
some cases were contacted directly by a hiring manager and encouraged to apply.
Recruiters schedule an interview with a hiring manager and interviews with two senior team members. Each interview results in feedback about the candidate and a recommendation whether to hire or not.
The company has the following Microsoft Dataverse tables and columns:
• JobPosting
- Hiring Manager - lookup to SystemUser
- Recruiter Assigned - lookup to SystemUser
• Contact (Job Applicant)
- Contact identifier
- First name
- Last name
- Time-Zone Offset
- Person of Interest - Yes/No (default)
• Application proapplication
- Contact identifier, Contact - lookup to Contact
- Job Posting - lookup to JobPosting
- pro_recruiterassignedid
• Interview
- Application - lookup to Application
- Job Posting - lookup to JobPosting
- Recommend - Choice (Yes (0), No (1), and null (default) are the available values)
- Person of Interest - Yes/No, No is the default value
• Referral
- Contact - lookup to Contact
- Referrer - lookup to SystemUser
- Job Posting - lookup to JobPosting
• SystemUser
- Manager - lookup to SystemUser
- Time-Zone Offset
• Recruiter
- Recruiter identifier
- Recruiter name
Applications -
There may be multiple applications associated with each job posting. Applications are linked to an employee record if an employee referred the applicant for a position. The same individual can be an applicant for
multiple job postings.
Interviews -
Each interview is performed by an employee and is related to a single application.
The interview scheduling process may force potential candidates to accept interviews at unusual times with the senior team members due to time-zone differences.
The system must provide recruiters with a list of team members and their time-zone information. You must create a Microsoft Power Apps Component Framework (PCF) control for the Job Application form to display
a list of senior team members who report directly to a hiring manager.
• The control must display the current time in each team member's local time.
• The control must be bound so that it minimizes the amount of code that must be written.
• You must display the list of team members and sort the list to show team members who reside in time zones closest to the applicant's time zone first.
You must develop a second PCF control that displays the time-zone name and current time on the Job Application form. You must display the data in the candidate’s local time.
You must create a process to identify individuals as a person of interest that the company should consider hiring. You must assign each individual a score based on their past interactions.
The automated process must run weekly to assess all candidates. The process must also run automatically when historical information is updated. You must be able to perform scoring by selecting a command button
on the contact form.
• This new command button must only be visible to employees who belong to a security role assigned named Recruiter. The command button must not be visible to anyone unless the contact form is in Update mode.
• A person of interest is defined as having a score of 15 or more based on the following historical information criteria:
- Each interview with a recommendation adds two to the score.
- Each interview without a recommendation subtracts two from the score.
- Each employee or manager referral adds one to the score.
- Each designation or certification adds one to the score.
• All scoring elements must be recalculated when changes occur. You must assign the score to the Person of interest field.
• Values representing totals or scores must be stored in their own numeric fields.
• Plug-ins must be used to keep the Person of Interest field on active interview records associated with the Contact.
• Plug-ins registered on the update of the Person of interest field must send an email notification when the candidate named in the email is a person of interest. Recruiters must receive the message when the field is
updated on the Contact record.
• Interviewers must get an email notification when the Person of Interest field on the interview record is successfully updated.
• Schema changes must be made using the method requiring the least amount of storage to meet the requirement.
• Out-of-the-box functionality must be used when possible.
• Any code required to calculate scores must be able to be run from a single point.
• Email notifications need to be kept to a minimum.
Issues -
• Recruiters report that the command button to score a candidate is not working. You debug the code and observe that the context input parameter is null.
• The system does not support associating designations and certifications with candidates.
• The value for the field used by the PCF control to display local time is saved to Microsoft Dataverse each time an active application record is opened.
• Interviewers report that they do not receive email notifications when interview records are created for an existing person of interest.
You need to resolve the issue with the new command button.
Answer : C
Case Study
-
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background
-
Proseware, Inc. is an industry leading software company with several thousand employees. The company has had some trouble recruiting talented employees. Top-level candidates interview with the company but go
on to work for competitors.
Feedback from candidates show that some offers were not accepted because the interview scheduling process was unpleasant. The company does not have a system to keep track of the candidates that were not
selected.
Current Environment
-
The recruiting process starts when an individual applies for a position on the company website. The individual may have found the position on their own, they may have been officially referred by an employee, or in
some cases were contacted directly by a hiring manager and encouraged to apply.
Recruiters schedule an interview with a hiring manager and interviews with two senior team members. Each interview results in feedback about the candidate and a recommendation whether to hire or not.
The company has the following Microsoft Dataverse tables and columns:
• JobPosting
- Hiring Manager - lookup to SystemUser
- Recruiter Assigned - lookup to SystemUser
• Contact (Job Applicant)
- Contact identifier
- First name
- Last name
- Time-Zone Offset
- Person of Interest - Yes/No (default)
• Application proapplication
- Contact identifier, Contact - lookup to Contact
- Job Posting - lookup to JobPosting
- pro_recruiterassignedid
• Interview
- Application - lookup to Application
- Job Posting - lookup to JobPosting
- Recommend - Choice (Yes (0), No (1), and null (default) are the available values)
- Person of Interest - Yes/No, No is the default value
• Referral
- Contact - lookup to Contact
- Referrer - lookup to SystemUser
- Job Posting - lookup to JobPosting
• SystemUser
- Manager - lookup to SystemUser
- Time-Zone Offset
• Recruiter
- Recruiter identifier
- Recruiter name
Applications
-
There may be multiple applications associated with each job posting. Applications are linked to an employee record if an employee referred the applicant for a position. The same individual can be an applicant for
multiple job postings.
Interviews
-
Each interview is performed by an employee and is related to a single application.
The interview scheduling process may force potential candidates to accept interviews at unusual times with the senior team members due to time-zone differences.
The system must provide recruiters with a list of team members and their time-zone information. You must create a Microsoft Power Apps Component Framework (PCF) control for the Job Application form to display
a list of senior team members who report directly to a hiring manager.
• The control must display the current time in each team member's local time.
• The control must be bound so that it minimizes the amount of code that must be written.
• You must display the list of team members and sort the list to show team members who reside in time zones closest to the applicant's time zone first.
You must develop a second PCF control that displays the time-zone name and current time on the Job Application form. You must display the data in the candidate’s local time.
You must create a process to identify individuals as a person of interest that the company should consider hiring. You must assign each individual a score based on their past interactions.
The automated process must run weekly to assess all candidates. The process must also run automatically when historical information is updated. You must be able to perform scoring by selecting a command button
on the contact form.
• This new command button must only be visible to employees who belong to a security role assigned named Recruiter. The command button must not be visible to anyone unless the contact form is in Update mode.
• A person of interest is defined as having a score of 15 or more based on the following historical information criteria:
- Each interview with a recommendation adds two to the score.
- Each interview without a recommendation subtracts two from the score.
- Each employee or manager referral adds one to the score.
- Each designation or certification adds one to the score.
• All scoring elements must be recalculated when changes occur. You must assign the score to the Person of interest field.
• Values representing totals or scores must be stored in their own numeric fields.
• Plug-ins must be used to keep the Person of Interest field on active interview records associated with the Contact.
• Plug-ins registered on the update of the Person of interest field must send an email notification when the candidate named in the email is a person of interest. Recruiters must receive the message when the field is
updated on the Contact record.
• Interviewers must get an email notification when the Person of Interest field on the interview record is successfully updated.
• Schema changes must be made using the method requiring the least amount of storage to meet the requirement.
• Out-of-the-box functionality must be used when possible.
• Any code required to calculate scores must be able to be run from a single point.
• Email notifications need to be kept to a minimum.
Issues
-
• Recruiters report that the command button to score a candidate is not working. You debug the code and observe that the context input parameter is null.
• The system does not support associating designations and certifications with candidates.
• The value for the field used by the PCF control to display local time is saved to Microsoft Dataverse each time an active application record is opened.
• Interviewers report that they do not receive email notifications when interview records are created for an existing person of interest.
You need to implement ribbon display rules to control availability for the scoring command button.
Which rule types should you use? To answer, select the appropriate options in the answer area.
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background -
Proseware, Inc. is an industry leading software company with several thousand employees. The company has had some trouble recruiting talented employees. Top-level candidates interview with the company but go
on to work for competitors.
Feedback from candidates show that some offers were not accepted because the interview scheduling process was unpleasant. The company does not have a system to keep track of the candidates that were not
selected.
Current Environment -
The recruiting process starts when an individual applies for a position on the company website. The individual may have found the position on their own, they may have been officially referred by an employee, or in
some cases were contacted directly by a hiring manager and encouraged to apply.
Recruiters schedule an interview with a hiring manager and interviews with two senior team members. Each interview results in feedback about the candidate and a recommendation whether to hire or not.
The company has the following Microsoft Dataverse tables and columns:
• JobPosting
- Hiring Manager - lookup to SystemUser
- Recruiter Assigned - lookup to SystemUser
• Contact (Job Applicant)
- Contact identifier
- First name
- Last name
- Time-Zone Offset
- Person of Interest - Yes/No (default)
• Application proapplication
- Contact identifier, Contact - lookup to Contact
- Job Posting - lookup to JobPosting
- pro_recruiterassignedid
• Interview
- Application - lookup to Application
- Job Posting - lookup to JobPosting
- Recommend - Choice (Yes (0), No (1), and null (default) are the available values)
- Person of Interest - Yes/No, No is the default value
• Referral
- Contact - lookup to Contact
- Referrer - lookup to SystemUser
- Job Posting - lookup to JobPosting
• SystemUser
- Manager - lookup to SystemUser
- Time-Zone Offset
• Recruiter
- Recruiter identifier
- Recruiter name
Applications -
There may be multiple applications associated with each job posting. Applications are linked to an employee record if an employee referred the applicant for a position. The same individual can be an applicant for
multiple job postings.
Interviews -
Each interview is performed by an employee and is related to a single application.
The interview scheduling process may force potential candidates to accept interviews at unusual times with the senior team members due to time-zone differences.
• The control must display the current time in each team member's local time.
• The control must be bound so that it minimizes the amount of code that must be written.
• You must display the list of team members and sort the list to show team members who reside in time zones closest to the applicant's time zone first.
You must develop a second PCF control that displays the time-zone name and current time on the Job Application form. You must display the data in the candidate’s local time.
You must create a process to identify individuals as a person of interest that the company should consider hiring. You must assign each individual a score based on their past interactions.
The automated process must run weekly to assess all candidates. The process must also run automatically when historical information is updated. You must be able to perform scoring by selecting a command button
on the contact form.
• This new command button must only be visible to employees who belong to a security role assigned named Recruiter. The command button must not be visible to anyone unless the contact form is in Update mode.
• A person of interest is defined as having a score of 15 or more based on the following historical information criteria:
- Each interview with a recommendation adds two to the score.
- Each interview without a recommendation subtracts two from the score.
- Each employee or manager referral adds one to the score.
- Each designation or certification adds one to the score.
• All scoring elements must be recalculated when changes occur. You must assign the score to the Person of interest field.
• Values representing totals or scores must be stored in their own numeric fields.
• Plug-ins must be used to keep the Person of Interest field on active interview records associated with the Contact.
• Plug-ins registered on the update of the Person of interest field must send an email notification when the candidate named in the email is a person of interest. Recruiters must receive the message when the field is
updated on the Contact record.
• Interviewers must get an email notification when the Person of Interest field on the interview record is successfully updated.
• Schema changes must be made using the method requiring the least amount of storage to meet the requirement.
• Out-of-the-box functionality must be used when possible.
• Any code required to calculate scores must be able to be run from a single point.
• Email notifications need to be kept to a minimum.
Issues -
• Recruiters report that the command button to score a candidate is not working. You debug the code and observe that the context input parameter is null.
• The system does not support associating designations and certifications with candidates.
• The value for the field used by the PCF control to display local time is saved to Microsoft Dataverse each time an active application record is opened.
• Interviewers report that they do not receive email notifications when interview records are created for an existing person of interest.
You need to configure the PCF control to display team members for interview scheduling.
Which two inputs should you use? Each correct answer presents part of the solution.
Answer : BE
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background -
Northwind Traders uses Microsoft Dynamics 365 Sales to manage its sales process. To better understand its customers, Northwind Traders invests in a team of researchers who gather data from multiple sources. The
company stores the data it collects in a Microsoft Azure SQL Database. The company plans to use the data to enrich account records and make the sales team more effective.
Current environment -
Environment -
• The company has three Microsoft Power Platform environments with Dynamics 365 Sales installed. The environments are named development, test, and production.
• Each environment has an application user that can be used for integrations.
• The company must use solutions to perform all customization and configuration deployment.
Data -
Web API -
• The company creates an Azure Function to run a RESTful .NET Web API.
• Data can be retrieved by placing a GET request to the URL https://dataservice-[ENVIRONMENTNAME].azurewebsites.net/enrich/[DATAID].
• [ENVIRONMENTNAME] is the name of the Microsoft Power Platform environment that requests the data.
• [DATAID] is the new_dataid column in the Account table.
• The Web API response will return a 200 response plus data if the DataId is found. Otherwise, a 404 response is returned.
• Developers plan to create a custom connector from the Web API to make it accessible from Microsoft Power Platform.
Requirements -
Custom connector -
• The Web API definition used to create the custom connector must be generated based on a low-code technology.
• The URL used by the custom connector must incorporate the current environment name without hardcoding values.
• Errors generated by the custom connector must not cause downstream processes to fail.
• Text descriptions and field placeholder text that describe the use of the custom connector must appear for non-developers.
Process -
• All account records must be updated with data from the Web API once automatically.
• Only account records that contain a DataId should be updated by the Web API.
• Researchers must create Power Automate flows to specify data analysis priority.
• The researchers require a process that repurposes a set of identical steps of parameterized Microsoft Dataverse queries from a Power Automate flow for use in other flows that have different parameters. The
researchers want to avoid recreating the steps manually each time they create a flow to save time and avoid errors.
Issues -
• A tester attempts to connect to the production instance of the Web API with a DataId that should return data. The tester receives an error stating that the remote name could not be resolved.
• A missing component causes an error to occur when importing the solution that contains the Power Automate flow to update account records in a test environment.
Answer : C
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background -
Northwind Traders uses Microsoft Dynamics 365 Sales to manage its sales process. To better understand its customers, Northwind Traders invests in a team of researchers who gather data from multiple sources. The
company stores the data it collects in a Microsoft Azure SQL Database. The company plans to use the data to enrich account records and make the sales team more effective.
Current environment -
Environment -
• The company has three Microsoft Power Platform environments with Dynamics 365 Sales installed. The environments are named development, test, and production.
• Each environment has an application user that can be used for integrations.
• The company must use solutions to perform all customization and configuration deployment.
Data -
• Researchers are responsible for creating account records.
• Researchers have permissions on the Account table to create records, read all records, and update records they own.
• A synchronous plug-in runs when an account record is created and could reassign the record to a different user.
• Users must access data as themselves to enforce security and audit changes.
• A column named new_dataid is added to the Account table. The column uniquely identifies which data it should receive.
• Researchers have researched only the top 20 percent of account records.
Web API -
• The company creates an Azure Function to run a RESTful .NET Web API.
• Data can be retrieved by placing a GET request to the URL https://dataservice-[ENVIRONMENTNAME].azurewebsites.net/enrich/[DATAID].
• [ENVIRONMENTNAME] is the name of the Microsoft Power Platform environment that requests the data.
• [DATAID] is the new_dataid column in the Account table.
• The Web API response will return a 200 response plus data if the DataId is found. Otherwise, a 404 response is returned.
• Developers plan to create a custom connector from the Web API to make it accessible from Microsoft Power Platform.
Requirements -
Custom connector -
• The Web API definition used to create the custom connector must be generated based on a low-code technology.
• The URL used by the custom connector must incorporate the current environment name without hardcoding values.
• Errors generated by the custom connector must not cause downstream processes to fail.
• Text descriptions and field placeholder text that describe the use of the custom connector must appear for non-developers.
Process -
• All account records must be updated with data from the Web API once automatically.
• Only account records that contain a DataId should be updated by the Web API.
• Researchers must create Power Automate flows to specify data analysis priority.
• The researchers require a process that repurposes a set of identical steps of parameterized Microsoft Dataverse queries from a Power Automate flow for use in other flows that have different parameters. The
researchers want to avoid recreating the steps manually each time they create a flow to save time and avoid errors.
Issues -
• A tester attempts to connect to the production instance of the Web API with a DataId that should return data. The tester receives an error stating that the remote name could not be resolved.
• A missing component causes an error to occur when importing the solution that contains the Power Automate flow to update account records in a test environment.
You need to ensure data returned from the Web API corresponds to the correct environment.
Answer : D
Case study
-
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background
-
Northwind Traders uses Microsoft Dynamics 365 Sales to manage its sales process. To better understand its customers, Northwind Traders invests in a team of researchers who gather data from multiple sources. The
company stores the data it collects in a Microsoft Azure SQL Database. The company plans to use the data to enrich account records and make the sales team more effective.
Current environment
-
Environment
-
• The company has three Microsoft Power Platform environments with Dynamics 365 Sales installed. The environments are named development, test, and production.
• Each environment has an application user that can be used for integrations.
• The company must use solutions to perform all customization and configuration deployment.
Data
-
• Researchers are responsible for creating account records.
• Researchers have permissions on the Account table to create records, read all records, and update records they own.
• A synchronous plug-in runs when an account record is created and could reassign the record to a different user.
• Users must access data as themselves to enforce security and audit changes.
• A column named new_dataid is added to the Account table. The column uniquely identifies which data it should receive.
• Researchers have researched only the top 20 percent of account records.
Web API
-
• The company creates an Azure Function to run a RESTful .NET Web API.
• Data can be retrieved by placing a GET request to the URL https://dataservice-[ENVIRONMENTNAME].azurewebsites.net/enrich/[DATAID].
• [ENVIRONMENTNAME] is the name of the Microsoft Power Platform environment that requests the data.
• [DATAID] is the new_dataid column in the Account table.
• The Web API response will return a 200 response plus data if the DataId is found. Otherwise, a 404 response is returned.
• Developers plan to create a custom connector from the Web API to make it accessible from Microsoft Power Platform.
Requirements
-
Custom connector
-
• The Web API definition used to create the custom connector must be generated based on a low-code technology.
• The URL used by the custom connector must incorporate the current environment name without hardcoding values.
• Errors generated by the custom connector must not cause downstream processes to fail.
• Text descriptions and field placeholder text that describe the use of the custom connector must appear for non-developers.
Process
-
• All account records must be updated with data from the Web API once automatically.
• Only account records that contain a DataId should be updated by the Web API.
• Researchers must create Power Automate flows to specify data analysis priority.
• The researchers require a process that repurposes a set of identical steps of parameterized Microsoft Dataverse queries from a Power Automate flow for use in other flows that have different parameters. The
researchers want to avoid recreating the steps manually each time they create a flow to save time and avoid errors.
Issues
-
• A tester attempts to connect to the production instance of the Web API with a DataId that should return data. The tester receives an error stating that the remote name could not be resolved.
• A missing component causes an error to occur when importing the solution that contains the Power Automate flow to update account records in a test environment.
You need to configure the custom connector to incorporate the environment name and DataId in the Web API URL.
Which four 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.
NOTE: More than one order of answer choices is correct. You will receive credit for any of the correct orders you select.
Answer :
The form must display the buttons only if conditions meet a pre-defined criteria.
You need to create rules for the form.
Answer :
During testing, a user observes that the plug-in unintentionally triggers a synchronous third-party ISV plug-in.
You need to modify the system design to avoid unwanted triggering of the third-party plug-in.
A. Disable the existing third-party plug-in by using the Plug-in Registration Tool.
B. Use UpdateRequest with the BypassCustomPluginExecution parameter and Execute method of the Organization service.
C. Update the code of the third-party ISV plug-in to ignore updates caused by the new plug-in.
D. Update the code of the new plug-in to use InputParameters of Plugin Execution Context.
Answer : B
You need to configure the app to display a dialog box when a form is opened or when a grid on a form is sorted.
A. Grid OnSave
B. Grid OnRecordSelect
C. Grid OnChange
D. Subgrid OnLoad
Answer : D
You test the changes to the code component in the development environment. You then import the component to the production environment as a part of a managed solution. You observe that the changes to the
component are not reflected in the production environment.
You need to ensure that the changes are effective in the production environment.
Answer : A
You develop the following code as part of an OnSave event handler in a form.
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
Answer :
The custom API does not appear in the response received from https://[yourorg].api.crm.dynamics.com/api/data/v9.2/$metadata and returns an error when called.
Answer : B
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background -
Northwind Traders uses Microsoft Dynamics 365 Sales to manage its sales process. To better understand its customers, Northwind Traders invests in a team of researchers who gather data from multiple sources. The
company stores the data it collects in a Microsoft Azure SQL Database. The company plans to use the data to enrich account records and make the sales team more effective.
Current environment -
Environment -
• The company has three Microsoft Power Platform environments with Dynamics 365 Sales installed. The environments are named development, test, and production.
• Each environment has an application user that can be used for integrations.
• The company must use solutions to perform all customization and configuration deployment.
Data -
Web API -
• The company creates an Azure Function to run a RESTful .NET Web API.
• Data can be retrieved by placing a GET request to the URL https://dataservice-[ENVIRONMENTNAME].azurewebsites.net/enrich/[DATAID].
• [ENVIRONMENTNAME] is the name of the Microsoft Power Platform environment that requests the data.
• [DATAID] is the new_dataid column in the Account table.
• The Web API response will return a 200 response plus data if the DataId is found. Otherwise, a 404 response is returned.
• Developers plan to create a custom connector from the Web API to make it accessible from Microsoft Power Platform.
Requirements -
Custom connector -
• The Web API definition used to create the custom connector must be generated based on a low-code technology.
• The URL used by the custom connector must incorporate the current environment name without hardcoding values.
• Errors generated by the custom connector must not cause downstream processes to fail.
• Text descriptions and field placeholder text that describe the use of the custom connector must appear for non-developers.
Process -
• All account records must be updated with data from the Web API once automatically.
• Only account records that contain a DataId should be updated by the Web API.
• Researchers must create Power Automate flows to specify data analysis priority.
• The researchers require a process that repurposes a set of identical steps of parameterized Microsoft Dataverse queries from a Power Automate flow for use in other flows that have different parameters. The
researchers want to avoid recreating the steps manually each time they create a flow to save time and avoid errors.
Issues -
• A tester attempts to connect to the production instance of the Web API with a DataId that should return data. The tester receives an error stating that the remote name could not be resolved.
• A missing component causes an error to occur when importing the solution that contains the Power Automate flow to update account records in a test environment.
What should you do? Each correct answer presents a complete solution.
Answer : CD
Answer : ADE
A: Registering an application with Azure Active Directory, enables a user with Power Apps user account to connect to their Microsoft Dataverse environment from external client applications using OAuth
authentication.
D: Use minimum permissions.
E: In the application registration process you delegate permissions to the Dynamics CRM API in Azure Active Directory.
Incorrect:
Not B: The system administrator security role would give the user too much privileges.
Not C: The Power Platform administrator role would give the user too much privileges.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/common-data-service/walkthrough-register-app-azure-active-directory
Answer :
Box 1: 0 0 4 * * 1-5 -
Azure Functions uses the NCronTab library to interpret NCRONTAB expressions.
An NCRONTAB expression is similar to a CRON expression except that it includes an additional sixth field at the beginning to use for time precision in seconds:
{second} {minute} {hour} {day} {month} {day-of-week}
Box 2: 0 0 4 * * 1-5 -
Reference:
https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-timer
?
Answer :
Box 2: OAuth -
Oauth 2.0 is the most frequently used type, which uses the Oauth 2 authentication framework to authenticate with the service. Before using this authentication type, you'll need to register your application with the
service so that it can receive access tokens for the users.
For example, Register the application in Azure AD shows how to register an application with the Azure Active Directory service.
During the connection creation process, the user will be asked to enter the credentials for login to the service. These credentials will be used by the application to get an authorization token. For every request, this
authorization token will be sent to your service through the Authorization header.
Authentication types -
The different types of authentication that are currently supported are:
No authentication -
Basic authentication -
Oauth 2.0 -
Reference:
https://docs.microsoft.com/en-us/dynamics365/customerengagement/on-premises/admin/security-roles-privileges https://docs.microsoft.com/en-us/connectors/custom-connectors/connection-parameters
Answer :
Box 1: PreValidation -
For the initial operation, this stage will occur before the main system operation.
This provides an opportunity to include logic to cancel the operation before the database transaction.
Box 2: PreOperation -
PreOperation occurs before the main system operation and within the database transaction.
If you want to change any values for an entity included in the message, you should do it here.
Box 3: PostOperation -
Occurs after the main system operation and within the database transaction.
Use this stage to modify any properties of the message before it is returned to the caller.
Incorrect Answers:
MainOperation: For internal use only except for Custom API and Custom virtual table data providers.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/data-platform/event-framework
Answer :
Box 1: Yes -
Delta query lets you query for additions, deletions, or updates to users, by way of a series of delta function calls. Delta query enables you discover changes to users without having to fetch the entire set of users from
Microsoft Graph and compare changes.
Box 2: No -
Box 3: No -
There is limited support for $filter:
The only supported $filter expression is for tracking changes on a specific object: $filter=id+eq+{value}.
Box 4: Yes -
Reference:
https://docs.microsoft.com/en-us/graph/api/user-delta
Question 226 ( Question Set 6 )
HOTSPOT -
A training company implements a Common Data Service (CDS) environment. The company has created and stores information about courses in a custom entity.
A Power Automate flow must be created whether a course has been created that starts within the next seven days and must be accurate to the minute.
You need to define an expression that meets the requirements.
Which functions should you use for the expression? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Hot Area:
Answer :
Box 1: less -
less checks whether the first value is less than the second value. Return true when the first value is less, or return false when the first value is more.
Box 2 : ticks -
ticks(timestamp: string) - Returns the number of ticks (100 nanoseconds interval) since 1 Jan 1601 00:00:00 UT
Syntax: ticks('<timestamp>')
Box 3: triggerBody -
triggerBody returns a trigger's body output at runtime.
Box 4: ticks -
Box 5: getFutureTime -
getFutureTime teturn the current timestamp plus the specified time units.
Syntax: getFutureTime(<interval>, <timeUnit>, <format>?)
Reference:
https://docs.microsoft.com/en-us/azure/logic-apps/workflow-definition-language-functions-reference
Answer :
Box 1: PreValidation -
For the initial operation, this stage will occur before the main system operation.
This provides an opportunity to include logic to cancel the operation before the database transaction.
Box 2: PreOperation -
Occurs before the main system operation and within the database transaction.
If you want to change any values for an entity included in the message, you should do it here.
Avoid cancelling an operation here. Canceling will trigger a rollback of the transaction and have significant performance impact.
Box 3: PostOperation -
Occurs after the main system operation and within the database transaction.
Use this stage to modify any properties of the message before it is returned to the caller.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/data-platform/event-framework
A. ADFS
B. Azure AD Conditional Access
C. OAuth 2.0
D. Client secret
Answer : C
The OAuth 2.0 client credentials grant flow permits a web service (confidential client) to use its own credentials, instead of impersonating a user, to authenticate when calling another web service.
Note: OAuth is the preferred means to authenticate because it provides access to both the OData RESTful web services (Web API and OData global Discovery service) as well as to the SOAP web services (Organization
service and Discovery service).
OAuth is also required to support:
✑ Azure Active Directory configurations for conditional access, such as Two-factor Authentication (2FA)
✑ Use of client secrets to enable server-to-server authentication scenarios.
✑ Cross-Origin Resource Sharing (CORS) to connect a Single-page Application (SPA)
Reference:
https://docs.microsoft.com/en-us/power-platform/admin/wp-security https://docs.microsoft.com/en-us/powerapps/developer/data-platform/authentication
Answer :
Answer : C
OAuth is the preferred means to authenticate because it provides access to both the OData RESTful web services (Web API and OData global Discovery service) as well as to the SOAP web services (Organization
service and Discovery service).
OAuth is also required to support:
✑ Azure Active Directory configurations for conditional access, such as Two-factor Authentication (2FA)
✑ Use of client secrets to enable server-to-server authentication scenarios.
✑ Cross-Origin Resource Sharing (CORS) to connect a Single-page Application (SPA)
Incorrect Answers:
A: Using Microsoft 365 authentication does not require that your register your applications as OAuth does. You must simply provide a User Principal Name (UPN) and password for a valid user.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/data-platform/authentication
Answer :
Answer :
Box 1: IsBlank -
The IsBlank function tests for a blank value or an empty string. The test includes empty strings to ease app creation since some data sources and controls use an empty string when there is no value present.
Box 2: IsType -
The IsType function tests whether a record reference refers to a specific table type.
Box 3: AsType -
The AsType function treats a record reference as a specific table type, sometimes referred to as casting. You can use the result as if it were a record of the table and again use the Record.Field notation to access all of
the fields of that record. An error occurs if the reference isn't of the specific type.
Box 4: AsType -
Reference:
https://docs.microsoft.com/en-us/powerapps/maker/canvas-apps/functions/function-isblank-isempty https://docs.microsoft.com/en-us/powerapps/maker/canvas-apps/functions/function-astype-istype
Answer :
Box 1: Number per user over a sliding window of time
Service protection API limits are enforced based on three facets:
✑ The number of requests sent by a user.
✑ The combined execution time required to process requests sent by a user.
✑ The number of concurrent requests sent by a user.
The following table describes the default service protection API limits enforced per web server:
Answer : D
You can configure policy templates for custom connectors. Policies allow you to modify the behavior of a custom connector at runtime. You can use policies to perform data conversion, route requests, set parameter
values, and more. You can configure policies directly in the custom connector API properties file before import, or you can do it from the maker portal in the custom connector designer by applying policy templates.
Common policy use cases are:
* Set query parameter - Use for handling default values, if necessary, but the maker doesn't configure one. For example, if an API required a top parameter for how many records to return by using a policy, you could
set a default value to be used if the maker doesn't configure one.
Note: ServiceNow Action: GetRecords
A. Highlight the plug-in step and select Debug in the Plug-in Registration tool
B. Copy the .pdb file into the server/bin/assembly folder
C. Select Start Profiling in the Plug-in Registration tool
D. Attach the debugger to the w3wp.exe process
E. Install the plug-in profiler
Answer : ACE
Answer :
A. Metadata diagram
B. Sales Insights
C. Power Automate
D. Security model
Answer : A
Visual representation of metadata can be useful, especially when you are trying to describe the relationship between entities in the system. You can use the
Metadata Diagram sample code provided for Dynamics 365 Customer Engagement (on-premises) to generate the entity relationship diagrams.
You can create a diagram that shows a relationship for just one entity, or a complex diagram that includes dozens of related entities, including custom and system entities.
Reference:
https://docs.microsoft.com/en-us/dynamics365/customerengagement/on-premises/developer/use-metadata-generate-entity-diagrams
Answer :
Box 1: create -
An error message must display if customers enter data incorrectly.
Box 2: contact -
Customers are allowed to add up to three countries/regions to their travel preferences from the website. Their preferences must be stored in the Contact entity.
Box 3: region -
Customers are allowed to add up to three regions to their travel preferences from the website. Customer preferences must be stored in the Contact entity
Box 4: synchronous -
A synchronous plug-in will cause the operation to wait until the code in the plug-in completes. This has an impact on perceived performance of the system. The operations in an asynchronous plug-in are placed in a
queue and are executed after the operation is completed so that the operation can complete with minimal interruption.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/common-data-service/tutorial-write-plug-in
Question 239 ( Question Set 6 )
A company uses a third-party shipping company to deliver products to customers.
You need to design a custom connector that retrieves the shipping fees from the shipping company API.
Which three elements should you define for the custom connector? Each correct answer presents part of the solution.
NOTE: Each correct selection is worth one point.
A. Authentication model
B. Address parameter
C. OpenAPI definition
D. Fee parameter
E. Fee reference
Answer : ABC
C: You can create a custom connector using a OpenAPI definition file or a URL to OpenAPI definition.
A: On the Security page you get to choose how to authenticate to the API.
B: Address parameter.
If you were to create a Custom Connector from scratch, then you would have to study the API you have chosen and type in the URL manually here.
Reference:
https://carinaclaesson.com/2019/09/06/setting-up-a-custom-connector-from-an-openapi-file-and-utilizing-it-in-powerapps-and-flow/
Answer : BE
E: Before exporting an API, you must describe the API using an OpenAPI definition.
B: This OpenAPI definition contains information about what operations are available in an API and how the request and response data for the API should be structured. PowerApps and Microsoft Flow can create
custom connectors for any OpenAPI 2.0 definition.
Reference:
https://github.com/MicrosoftDocs/azure-docs/blob/master/articles/azure-functions/app-service-export-api-to-powerapps-and-flow.md
Answer :
Box 1: PreValidation -
PreValidation: For the initial operation, this stage will occur before the main system operation.
This provides an opportunity to include logic to cancel the operation before the database transaction.
Box 2: Synchronous -
Ideally, you should only cancel operations using synchronous plug-ins registered in the PreValidation stage.
Answer :
Box 1: Lookup -
The LookUp function finds the first record in a table that satisfies a formula. Use LookUp to find a single record that matches one or more criteria.
Besides the normal formula operators, you can use the in and exactin operators for substring matches.
[!INCLUDE [record-scope]../../includes/record-scope.md)]
Example:
Filter(IceCream, OnOrder > 0) - Returns records where OnOrder is greater than zero.
A. Plug-in profiler
B. Power Platform Tools for Visual Studio
C. Plug-in dashboard
D. Plug-in Registration Tool
Answer : A
Because the plug-in executes on a remote server, you cannot attach a debugger to the plug-in process. The plug-in profiler captures a profile of an executing plug- in and allows you to re-play the execution of the plug-
in using Visual Studio on your local computer.
Start profiling -
Follow these steps to begin profiling a plug-in's execution.
1. In the Plug-in Registration tool, select the (Step) BasicPlugin.FollowupPlugin: Create of account step you registered earlier, and click Start Profiling.
2. When presented with the Profiler Settings dialog, accept the default settings and click OK to close the dialog.
Reference:
https://docs.microsoft.com/en-us/power-apps/developer/data-platform/tutorial-debug-plug-in
Which HTTP methods should you use? To answer, drag the appropriate HTTP methods to the correct requirements. Each HTTP method 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.
Select and Place:
Answer :
Box 1: POST -
Box 2: PATCH -
Basic update -
Update operations use the HTTP PATCH verb. Pass a JSON object containing the properties you want to update to the URI that represents the record.
Reference:
https://docs.microsoft.com/en-us/power-apps/developer/data-platform/webapi/create-update-entity-definitions-using-web-api https://docs.microsoft.com/en-us/power-apps/developer/data-
platform/webapi/update-delete-entities-using-web-api
You have a plug-in that performs business logic on contact records. The plug-in is registered in the post-operation stage and is executed when a field named custom_field3 is updated.
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
NOTE: Each correct selection is worth one point.
Answer :
You are creating various Power Apps apps for a company. Power Automate flows must connect securely to the following external systems:
To answer, drag the appropriate security types to the correct external systems. Each security type 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.
You are developing a Power Platform solution that uses a plug-in. The plug-in includes the following code (line numbers are included for reference):
The plug-in includes a step that is registered in the execution pipeline within the PreOperation stage for the Create message.
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
You must add the following information to a vaccination record before a proof of vaccination card is created:
• Vaccination type
• Date of vaccination
• Name of person administering the vaccine
A. PreValidation
B. PostOperation
C. MainOperation
D. PreOperation
Answer : D
You must create a custom connector to connect the app to the Microsoft Graph API.
You need to configure the environment before creating the custom connector.
Which actions should you use? To answer, select the appropriate options in the answer area.
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background -
Proseware, Inc. is an industry leading software company with several thousand employees. The company has had some trouble recruiting talented employees. Top-level candidates interview with the company but go
on to work for competitors.
Feedback from candidates show that some offers were not accepted because the interview scheduling process was unpleasant. The company does not have a system to keep track of the candidates that were not
selected.
Current Environment -
The recruiting process starts when an individual applies for a position on the company website. The individual may have found the position on their own, they may have been officially referred by an employee, or in
some cases were contacted directly by a hiring manager and encouraged to apply.
Recruiters schedule an interview with a hiring manager and interviews with two senior team members. Each interview results in feedback about the candidate and a recommendation whether to hire or not.
The company has the following Microsoft Dataverse tables and columns:
• JobPosting
- Hiring Manager - lookup to SystemUser
- Recruiter Assigned - lookup to SystemUser
• Contact (Job Applicant)
- Contact identifier
- First name
- Last name
- Time-Zone Offset
- Person of Interest - Yes/No (default)
• Application proapplication
- Contact identifier, Contact - lookup to Contact
- Job Posting - lookup to JobPosting
- pro_recruiterassignedid
• Interview
- Application - lookup to Application
- Job Posting - lookup to JobPosting
- Recommend - Choice (Yes (0), No (1), and null (default) are the available values)
- Person of Interest - Yes/No, No is the default value
• Referral
- Contact - lookup to Contact
- Referrer - lookup to SystemUser
- Job Posting - lookup to JobPosting
• SystemUser
- Manager - lookup to SystemUser
- Time-Zone Offset
• Recruiter
- Recruiter identifier
- Recruiter name
Applications -
There may be multiple applications associated with each job posting. Applications are linked to an employee record if an employee referred the applicant for a position. The same individual can be an applicant for
multiple job postings.
Interviews -
Each interview is performed by an employee and is related to a single application.
The interview scheduling process may force potential candidates to accept interviews at unusual times with the senior team members due to time-zone differences.
The system must provide recruiters with a list of team members and their time-zone information. You must create a Microsoft Power Apps Component Framework (PCF) control for the Job Application form to display
a list of senior team members who report directly to a hiring manager.
• The control must display the current time in each team member's local time.
• The control must be bound so that it minimizes the amount of code that must be written.
• You must display the list of team members and sort the list to show team members who reside in time zones closest to the applicant's time zone first.
You must develop a second PCF control that displays the time-zone name and current time on the Job Application form. You must display the data in the candidate’s local time.
You must create a process to identify individuals as a person of interest that the company should consider hiring. You must assign each individual a score based on their past interactions.
The automated process must run weekly to assess all candidates. The process must also run automatically when historical information is updated. You must be able to perform scoring by selecting a command button
on the contact form.
• This new command button must only be visible to employees who belong to a security role assigned named Recruiter. The command button must not be visible to anyone unless the contact form is in Update mode.
• A person of interest is defined as having a score of 15 or more based on the following historical information criteria:
- Each interview with a recommendation adds two to the score.
- Each interview without a recommendation subtracts two from the score.
- Each employee or manager referral adds one to the score.
- Each designation or certification adds one to the score.
• All scoring elements must be recalculated when changes occur. You must assign the score to the Person of interest field.
• Values representing totals or scores must be stored in their own numeric fields.
• Plug-ins must be used to keep the Person of Interest field on active interview records associated with the Contact.
• Plug-ins registered on the update of the Person of interest field must send an email notification when the candidate named in the email is a person of interest. Recruiters must receive the message when the field is
updated on the Contact record.
• Interviewers must get an email notification when the Person of Interest field on the interview record is successfully updated.
• Schema changes must be made using the method requiring the least amount of storage to meet the requirement.
• Out-of-the-box functionality must be used when possible.
• Any code required to calculate scores must be able to be run from a single point.
• Email notifications need to be kept to a minimum.
Issues -
• Recruiters report that the command button to score a candidate is not working. You debug the code and observe that the context input parameter is null.
• The system does not support associating designations and certifications with candidates.
• The value for the field used by the PCF control to display local time is saved to Microsoft Dataverse each time an active application record is opened.
• Interviewers report that they do not receive email notifications when interview records are created for an existing person of interest.
You need to determine the cause for the issue reported by the interviewers.
Answer : B
Case Study
-
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background
-
Proseware, Inc. is an industry leading software company with several thousand employees. The company has had some trouble recruiting talented employees. Top-level candidates interview with the company but go
on to work for competitors.
Feedback from candidates show that some offers were not accepted because the interview scheduling process was unpleasant. The company does not have a system to keep track of the candidates that were not
selected.
Current Environment
-
The recruiting process starts when an individual applies for a position on the company website. The individual may have found the position on their own, they may have been officially referred by an employee, or in
some cases were contacted directly by a hiring manager and encouraged to apply.
Recruiters schedule an interview with a hiring manager and interviews with two senior team members. Each interview results in feedback about the candidate and a recommendation whether to hire or not.
The recruiting team manages all information by using a model-driven application.
The company has the following Microsoft Dataverse tables and columns:
• JobPosting
- Hiring Manager - lookup to SystemUser
- Recruiter Assigned - lookup to SystemUser
• Contact (Job Applicant)
- Contact identifier
- First name
- Last name
- Time-Zone Offset
- Person of Interest - Yes/No (default)
• Application proapplication
- Contact identifier, Contact - lookup to Contact
- Job Posting - lookup to JobPosting
- pro_recruiterassignedid
• Interview
- Application - lookup to Application
- Job Posting - lookup to JobPosting
- Recommend - Choice (Yes (0), No (1), and null (default) are the available values)
- Person of Interest - Yes/No, No is the default value
• Referral
- Contact - lookup to Contact
- Referrer - lookup to SystemUser
- Job Posting - lookup to JobPosting
• SystemUser
- Manager - lookup to SystemUser
- Time-Zone Offset
• Recruiter
- Recruiter identifier
- Recruiter name
Applications
-
There may be multiple applications associated with each job posting. Applications are linked to an employee record if an employee referred the applicant for a position. The same individual can be an applicant for
multiple job postings.
Interviews
-
Each interview is performed by an employee and is related to a single application.
The interview scheduling process may force potential candidates to accept interviews at unusual times with the senior team members due to time-zone differences.
The system must provide recruiters with a list of team members and their time-zone information. You must create a Microsoft Power Apps Component Framework (PCF) control for the Job Application form to display
a list of senior team members who report directly to a hiring manager.
• The control must display the current time in each team member's local time.
• The control must be bound so that it minimizes the amount of code that must be written.
• You must display the list of team members and sort the list to show team members who reside in time zones closest to the applicant's time zone first.
You must develop a second PCF control that displays the time-zone name and current time on the Job Application form. You must display the data in the candidate’s local time.
You must create a process to identify individuals as a person of interest that the company should consider hiring. You must assign each individual a score based on their past interactions.
The automated process must run weekly to assess all candidates. The process must also run automatically when historical information is updated. You must be able to perform scoring by selecting a command button
on the contact form.
• This new command button must only be visible to employees who belong to a security role assigned named Recruiter. The command button must not be visible to anyone unless the contact form is in Update mode.
• A person of interest is defined as having a score of 15 or more based on the following historical information criteria:
- Each interview with a recommendation adds two to the score.
- Each interview without a recommendation subtracts two from the score.
- Each employee or manager referral adds one to the score.
- Each designation or certification adds one to the score.
• All scoring elements must be recalculated when changes occur. You must assign the score to the Person of interest field.
• Values representing totals or scores must be stored in their own numeric fields.
• Plug-ins must be used to keep the Person of Interest field on active interview records associated with the Contact.
• Plug-ins registered on the update of the Person of interest field must send an email notification when the candidate named in the email is a person of interest. Recruiters must receive the message when the field is
updated on the Contact record.
• Interviewers must get an email notification when the Person of Interest field on the interview record is successfully updated.
• Schema changes must be made using the method requiring the least amount of storage to meet the requirement.
• Out-of-the-box functionality must be used when possible.
• Any code required to calculate scores must be able to be run from a single point.
• Email notifications need to be kept to a minimum.
Issues
-
• Recruiters report that the command button to score a candidate is not working. You debug the code and observe that the context input parameter is null.
• The system does not support associating designations and certifications with candidates.
• The value for the field used by the PCF control to display local time is saved to Microsoft Dataverse each time an active application record is opened.
• Interviewers report that they do not receive email notifications when interview records are created for an existing person of interest.
You develop the following code for the plug-in that sends email notifications to recruiters.
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
Answer :
Case Study
-
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background
-
Proseware, Inc. is an industry leading software company with several thousand employees. The company has had some trouble recruiting talented employees. Top-level candidates interview with the company but go
on to work for competitors.
Feedback from candidates show that some offers were not accepted because the interview scheduling process was unpleasant. The company does not have a system to keep track of the candidates that were not
selected.
Current Environment
-
The recruiting process starts when an individual applies for a position on the company website. The individual may have found the position on their own, they may have been officially referred by an employee, or in
some cases were contacted directly by a hiring manager and encouraged to apply.
Recruiters schedule an interview with a hiring manager and interviews with two senior team members. Each interview results in feedback about the candidate and a recommendation whether to hire or not.
The company has the following Microsoft Dataverse tables and columns:
• JobPosting
- Hiring Manager - lookup to SystemUser
- Recruiter Assigned - lookup to SystemUser
• Contact (Job Applicant)
- Contact identifier
- First name
- Last name
- Time-Zone Offset
- Person of Interest - Yes/No (default)
• Application proapplication
- Contact identifier, Contact - lookup to Contact
- Job Posting - lookup to JobPosting
- pro_recruiterassignedid
• Interview
- Application - lookup to Application
- Job Posting - lookup to JobPosting
- Recommend - Choice (Yes (0), No (1), and null (default) are the available values)
- Person of Interest - Yes/No, No is the default value
• Referral
- Contact - lookup to Contact
- Referrer - lookup to SystemUser
- Job Posting - lookup to JobPosting
• SystemUser
- Manager - lookup to SystemUser
- Time-Zone Offset
• Recruiter
- Recruiter identifier
- Recruiter name
Applications
-
There may be multiple applications associated with each job posting. Applications are linked to an employee record if an employee referred the applicant for a position. The same individual can be an applicant for
multiple job postings.
Interviews
-
Each interview is performed by an employee and is related to a single application.
The interview scheduling process may force potential candidates to accept interviews at unusual times with the senior team members due to time-zone differences.
The system must provide recruiters with a list of team members and their time-zone information. You must create a Microsoft Power Apps Component Framework (PCF) control for the Job Application form to display
a list of senior team members who report directly to a hiring manager.
• The control must display the current time in each team member's local time.
• The control must be bound so that it minimizes the amount of code that must be written.
• You must display the list of team members and sort the list to show team members who reside in time zones closest to the applicant's time zone first.
You must develop a second PCF control that displays the time-zone name and current time on the Job Application form. You must display the data in the candidate’s local time.
You must create a process to identify individuals as a person of interest that the company should consider hiring. You must assign each individual a score based on their past interactions.
The automated process must run weekly to assess all candidates. The process must also run automatically when historical information is updated. You must be able to perform scoring by selecting a command button
on the contact form.
• This new command button must only be visible to employees who belong to a security role assigned named Recruiter. The command button must not be visible to anyone unless the contact form is in Update mode.
• A person of interest is defined as having a score of 15 or more based on the following historical information criteria:
- Each interview with a recommendation adds two to the score.
- Each interview without a recommendation subtracts two from the score.
- Each employee or manager referral adds one to the score.
- Each designation or certification adds one to the score.
• All scoring elements must be recalculated when changes occur. You must assign the score to the Person of interest field.
• Values representing totals or scores must be stored in their own numeric fields.
• Plug-ins must be used to keep the Person of Interest field on active interview records associated with the Contact.
• Plug-ins registered on the update of the Person of interest field must send an email notification when the candidate named in the email is a person of interest. Recruiters must receive the message when the field is
updated on the Contact record.
• Interviewers must get an email notification when the Person of Interest field on the interview record is successfully updated.
• Schema changes must be made using the method requiring the least amount of storage to meet the requirement.
• Out-of-the-box functionality must be used when possible.
• Any code required to calculate scores must be able to be run from a single point.
• Email notifications need to be kept to a minimum.
Issues
-
• Recruiters report that the command button to score a candidate is not working. You debug the code and observe that the context input parameter is null.
• The system does not support associating designations and certifications with candidates.
• The value for the field used by the PCF control to display local time is saved to Microsoft Dataverse each time an active application record is opened.
• Interviewers report that they do not receive email notifications when interview records are created for an existing person of interest.
Which methods should you use? To answer, drag the appropriate methods to the correct actions. Each method 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.
Answer :
Case study
-
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background
-
Northwind Traders uses Microsoft Dynamics 365 Sales to manage its sales process. To better understand its customers, Northwind Traders invests in a team of researchers who gather data from multiple sources. The
company stores the data it collects in a Microsoft Azure SQL Database. The company plans to use the data to enrich account records and make the sales team more effective.
Current environment
-
Environment
-
• The company has three Microsoft Power Platform environments with Dynamics 365 Sales installed. The environments are named development, test, and production.
• Each environment has an application user that can be used for integrations.
• The company must use solutions to perform all customization and configuration deployment.
Data
-
Web API
-
• The company creates an Azure Function to run a RESTful .NET Web API.
• Data can be retrieved by placing a GET request to the URL https://dataservice-[ENVIRONMENTNAME].azurewebsites.net/enrich/[DATAID].
• [ENVIRONMENTNAME] is the name of the Microsoft Power Platform environment that requests the data.
• [DATAID] is the new_dataid column in the Account table.
• The Web API response will return a 200 response plus data if the DataId is found. Otherwise, a 404 response is returned.
• Developers plan to create a custom connector from the Web API to make it accessible from Microsoft Power Platform.
Requirements
-
Custom connector
-
• The Web API definition used to create the custom connector must be generated based on a low-code technology.
• The URL used by the custom connector must incorporate the current environment name without hardcoding values.
• Errors generated by the custom connector must not cause downstream processes to fail.
• Text descriptions and field placeholder text that describe the use of the custom connector must appear for non-developers.
Process
-
• All account records must be updated with data from the Web API once automatically.
• Only account records that contain a DataId should be updated by the Web API.
• Researchers must create Power Automate flows to specify data analysis priority.
• The researchers require a process that repurposes a set of identical steps of parameterized Microsoft Dataverse queries from a Power Automate flow for use in other flows that have different parameters. The
researchers want to avoid recreating the steps manually each time they create a flow to save time and avoid errors.
Issues
-
• A tester attempts to connect to the production instance of the Web API with a DataId that should return data. The tester receives an error stating that the remote name could not be resolved.
• A missing component causes an error to occur when importing the solution that contains the Power Automate flow to update account records in a test environment.
You need to configure security for the Azure Function and custom connector.
Which security tool should you configure for each item? To answer, select the appropriate options in the answer area.
Case study
-
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background
-
Northwind Traders uses Microsoft Dynamics 365 Sales to manage its sales process. To better understand its customers, Northwind Traders invests in a team of researchers who gather data from multiple sources. The
company stores the data it collects in a Microsoft Azure SQL Database. The company plans to use the data to enrich account records and make the sales team more effective.
Current environment
-
Environment
-
• The company has three Microsoft Power Platform environments with Dynamics 365 Sales installed. The environments are named development, test, and production.
• Each environment has an application user that can be used for integrations.
• The company must use solutions to perform all customization and configuration deployment.
Data
-
Web API
-
• The company creates an Azure Function to run a RESTful .NET Web API.
• Data can be retrieved by placing a GET request to the URL https://dataservice-[ENVIRONMENTNAME].azurewebsites.net/enrich/[DATAID].
• [ENVIRONMENTNAME] is the name of the Microsoft Power Platform environment that requests the data.
• [DATAID] is the new_dataid column in the Account table.
• The Web API response will return a 200 response plus data if the DataId is found. Otherwise, a 404 response is returned.
• Developers plan to create a custom connector from the Web API to make it accessible from Microsoft Power Platform.
Requirements
-
Custom connector
-
• The Web API definition used to create the custom connector must be generated based on a low-code technology.
• The URL used by the custom connector must incorporate the current environment name without hardcoding values.
• Errors generated by the custom connector must not cause downstream processes to fail.
• Text descriptions and field placeholder text that describe the use of the custom connector must appear for non-developers.
Process
-
• All account records must be updated with data from the Web API once automatically.
• Only account records that contain a DataId should be updated by the Web API.
• Researchers must create Power Automate flows to specify data analysis priority.
• The researchers require a process that repurposes a set of identical steps of parameterized Microsoft Dataverse queries from a Power Automate flow for use in other flows that have different parameters. The
researchers want to avoid recreating the steps manually each time they create a flow to save time and avoid errors.
Issues
-
• A tester attempts to connect to the production instance of the Web API with a DataId that should return data. The tester receives an error stating that the remote name could not be resolved.
• A missing component causes an error to occur when importing the solution that contains the Power Automate flow to update account records in a test environment.
You need to configure the Web API and create the custom connector.
Which action should you perform for each step? To answer, select the appropriate options in the answer area.
Answer :
You are developing a Power Apps app for a company. The app will interact with the company's enterprise resource planning (ERP) system. The app allows users to create quotes for customers. You are creating a plug-
in for the app.
• Display an error message if there is no account associated with a quote and prevent changes to the quote.
• Synchronize quotes with the external ERP system.
Which pipeline stages should you use? To answer, drag the appropriate pipeline stages to the correct requirements. Each pipeline stage 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.
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background -
Northwind Traders uses Microsoft Dynamics 365 Sales to manage its sales process. To better understand its customers, Northwind Traders invests in a team of researchers who gather data from multiple sources. The
company stores the data it collects in a Microsoft Azure SQL Database. The company plans to use the data to enrich account records and make the sales team more effective.
Current environment -
Environment -
• The company has three Microsoft Power Platform environments with Dynamics 365 Sales installed. The environments are named development, test, and production.
• Each environment has an application user that can be used for integrations.
• The company must use solutions to perform all customization and configuration deployment.
Data -
Web API -
• The company creates an Azure Function to run a RESTful .NET Web API.
• Data can be retrieved by placing a GET request to the URL https://dataservice-[ENVIRONMENTNAME].azurewebsites.net/enrich/[DATAID].
• [ENVIRONMENTNAME] is the name of the Microsoft Power Platform environment that requests the data.
• [DATAID] is the new_dataid column in the Account table.
• The Web API response will return a 200 response plus data if the DataId is found. Otherwise, a 404 response is returned.
• Developers plan to create a custom connector from the Web API to make it accessible from Microsoft Power Platform.
Requirements -
Custom connector -
• The Web API definition used to create the custom connector must be generated based on a low-code technology.
• The URL used by the custom connector must incorporate the current environment name without hardcoding values.
• Errors generated by the custom connector must not cause downstream processes to fail.
• Text descriptions and field placeholder text that describe the use of the custom connector must appear for non-developers.
Process -
• All account records must be updated with data from the Web API once automatically.
• Only account records that contain a DataId should be updated by the Web API.
• Researchers must create Power Automate flows to specify data analysis priority.
• The researchers require a process that repurposes a set of identical steps of parameterized Microsoft Dataverse queries from a Power Automate flow for use in other flows that have different parameters. The
researchers want to avoid recreating the steps manually each time they create a flow to save time and avoid errors.
Issues -
• A tester attempts to connect to the production instance of the Web API with a DataId that should return data. The tester receives an error stating that the remote name could not be resolved.
• A missing component causes an error to occur when importing the solution that contains the Power Automate flow to update account records in a test environment.
You need to determine the cause of the 404 error when connecting to the production instance of the Web API.
Answer : A
Question 257 ( Question Set 6 )
You manage a Microsoft Power Automate cloud flow. The cloud flow queries Microsoft Dataverse data by using the List rows action.
You need to configure the cloud flow to process 10,000 records in a single run.
What should you do? Each correct answer presents a complete solution.
Answer : BD
Answer : D
Field technicians use a canvas app to update Microsoft Dataverse data. The app is designed to work when it is not connected to the internet.
The app requires a plug-in to apply business logic after records are updated. Unhandled exceptions must not prevent records from saving or syncing.
You need to register the plug-in step to apply the business logic.
Which values should you use for each plug-in step setting? To answer, select the appropriate options in the answer area.
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
NOTE: Each correct selection is worth one point.
Hot Area:
Answer :
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/common-data-service/use-alternate-key-create-record
Answer :
Box 1: Webhook -
With Dataverse, you can send data about events that occur on the service to a web app by using webhooks. A webhook is a lightweight HTTP pattern for connecting web APIs and services with a publish-and-subscribe
model. Webhook senders notify receivers about events by making requests to receiver endpoints with some information about the events.
Webhooks enable developers and ISVs to integrate Dataverse data with their own custom code hosted on external services.
A. Yes
B. No
Answer : B
A. Yes
B. No
Answer : B
A. Yes
B. No
Answer : B
Instead use Azure Service Bus queue solution with asynchronous communication.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/common-data-service/azure-integration
Answer :
Answer :
Answer :
A. Yes
B. No
Answer : A
Plug-ins are one of two methods used to initiate posting the message containing the data context to the Azure Service Bus, the other method being a custom workflow activity.
Note: Microsoft Dataverse supports integration with Azure.
For the Dataverse and Azure connection to work, there must be at least one solution in an Azure Service Bus solution account, where the solution contains one or more service endpoints.
For a queue endpoint contract, a listener doesnג€™t have to be actively listening.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/common-data-service/azure-integration
Question 269 ( Question Set 7 )
HOTSPOT -
You create an alternate key named AlternateKey1 on the Account entity. The definition for AlternateKey1 is shown in the following exhibit:
Use the drop-down menus to select the answer choice that answers each question based on the information presented in the graphic.
NOTE: Each correct selection is worth one point.
Hot Area:
Answer :
Box 1: The combination of Account Number and Account Name must be unique
With alternate keys you can now define a column in a Dataverse table to correspond to a unique identifier or unique combination of columns.
Box 2: Delete AlternateKey1 and re-create it with all three fields
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/data-platform/define-alternate-keys-entity
The app includes the following code to save all required information. (Line numbers are included for reference only.)
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
NOTE: Each correct selection is worth one point.
Hot Area:
Answer :
Box 1: Yes -
The Patch function in Power Apps modifies or creates one or more records in a data source, or merges records outside of a data source.
Use Patch with the Defaults function to create records.
Box 2: No -
The return value of Patch is the record that you modified or created. If you created a record, the return value may include properties that the data source generated automatically. However, the return value doesn't
provide a value for fields of a related table.
For example, you use Set(MyAccount, Patch(Accounts, First(Account), 'Account Name': "Example name"); and then MyAccount.'Primary Contact'.'Full Name'. You can't yield a full name in this case. Instead, to access
the fields of a related table, use a separate lookup such as:
LookUp(Accounts, Account = MyAccount.Account).'Primary Contact'.'Full Name
Box 3: Yes -
Box 4: Yes -
Merge records outside of a data source.
Specify two or more records that you want to merge. Records are processed in the order from the beginning of the argument list to the end, with later property values overriding earlier ones.
Patch returns the merged record and doesn't modify its arguments or records in any data sources.
Reference:
https://docs.microsoft.com/en-us/powerapps/maker/canvas-apps/functions/function-clear-collect-clearcollect
Question 271 ( Question Set 7 )
A company plans to replicate a Dynamics 365 Sales database into an Azure SQL Database instance for reporting purposes. The Data Export Service solution has been installed.
You need to configure the Data Export service.
Which three actions should you perform? Each correct answer presents part of the solution.
NOTE: Each correct selection is worth one point.
A. Enable auditing for all entities that must be replicated to Azure SQL Database.
B. Create an export profile that specifies all the entities that must be replicated.
C. Set up server-based integration.
D. Enable change tracking for all entities that must be replicated to Azure SQL Database.
E. Create an Azure SQL Database service in the same tenant as the Dynamics 365 Sales environment.
Answer : ABD
B: The Export Profile is the core concept of the Data Export Service. The Export Profile gathers set up and configuration information to synchronize data with the destination database. As part of the Export Profile, the
administrator provides a list of entities to be exported to the destination database.
D: Only entities that have change tracking enabled can be added to the Export Profile.
Incorrect Answers:
E: To use the Data Export Service the customer engagement apps (i.e., Dynamics 365 Sales, Dynamics 365 Customer Service, Dynamics 365 Field Service,
Dynamics 365 Marketing, and Dynamics 365 Project Service Automation) and Azure Key Vault services must operate under the same tenant and within the same
Azure Active Directory. However, the Azure SQL Database service can be in the same or a different tenant.
Reference:
https://docs.microsoft.com/en-us/power-platform/admin/replicate-data-microsoft-azure-sql-database
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
NOTE: Each correct selection is worth one point.
Hot Area:
Answer :
Box 3: No -
Either new/updated or removed/deleted.
A. ReceiveMode
B. BrokeredMessage
C. EventHubReceiver
D. EventHubSender
Answer : A
ReceiveMode enumerates the values for the receive mode. The default is PeekLock.
Fields:
PeekLock: Specifies the PeekLock receive mode. This is the default value for ReceiveMode.
ReceiveAndDelete: Specifies the ReceiveAndDelete receive mode.
Note: You can specify two different modes in which Service Bus receives messages.
✑ Receive and delete. In this mode, when Service Bus receives the request from the consumer, it marks the message as being consumed and returns it to the consumer application.
✑ Peek lock.
Reference:
https://docs.microsoft.com/en-us/azure/service-bus-messaging/service-bus-queues-topics-subscriptions https://docs.microsoft.com/en-us/dotnet/api/microsoft.servicebus.messaging.receivemode
A. Use change tracking on the orders and run the integration to retrieve new orders and the orders that have the total amount changed in the last month.
B. Create a system view with the orders that have the Modified On field in the last month and run the integration on this subset.
C. Use change tracking on the order lines and run the integration every week and retrieve only the order lines that have been created or deleted in the last month.
D. Create a system view with the order lines that have the Modified On field in the last month and run the integration on this subset.
Answer : CD
C: The change tracking feature in Microsoft Dataverse provides a way to keep the data synchronized in an efficient manner by detecting what data has changed since the data was initially extracted or last
synchronized. Deletions and creations are tracked.
D: On modified Order Lines, not on Modified Orders.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/data-platform/use-change-tracking-synchronize-data-external-systems https://docs.microsoft.com/en-us/powerapps/developer/data-platform/behavior-
format-date-time-attribute
Answer : B
The body will contain string that represents the JSON value of an instance of the RemoteExecutionContext class.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/data-platform/use-webhooks
Box 1: IsOptimisticConcurrencyEnabled
On a multi-threaded and multi-user system like Power Apps, operations and data changes often happen in parallel. A problem arises when two or more update or delete operations on the same piece of data happen at
the same time. This situation could potentially result in data loss. The optimistic concurrency feature provides the ability for your applications to detect whether a table record has changed on the server in the time
between when your application retrieved the record and when it tries to update or delete that record.
Parameter init -
Initializes the solution project. It has the following parameters: publisher-name: Publisher name of the organization. publisher-prefix: Publisher prefix of the organization.
Reference:
https://docs.microsoft.com/en-us/power-apps/developer/component-framework/import-custom-controls
Messages from Dataverse must be sent to Microsoft Azure Service Bus. An Azure Function will process the messages. Events must be published directly to the ServiceEndpoint for Azure Service Bus.
A. RemoteExecutionContext
B. IWorkflowContext
C. IPluginExecutionContext
D. IExecutionContext
Answer : A
You have the following code: (Line numbers are included for reference only.)
You need to ensure that the code only synchronizes data that was not previously synchronized.
Answer : A
The public website is outside of the corporate domain. The website uses POST requests to save data.
What should you use? To answer, select the appropriate options in the answer area.
Answer :
You must add the new survey page to the company’s public website and capture data from the page to a Microsoft Dataverse environment.
Explicit user credentials must not be required to write survey data to Dataverse.
A. Claims based
B. Microsoft 365
C. Azure guest account
D. Client secret
Answer : C
The company requires a web application that retrieves information from the model-driven app. The requirements for the web application include:
A. NTLM authentication
B. Kerberos Authentication
C. Microsoft Azure Active Directory Authentication Libraries (ADAL)
D. Microsoft Authentication Library (MSAL)
E. multifactor authentication
Answer : CD
Case study
-
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must
manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about
the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot
return to this section.
Background
-
Northwind Traders uses Microsoft Dynamics 365 Sales to manage its sales process. To better understand its customers, Northwind Traders invests in a team of researchers who gather data from multiple sources. The
company stores the data it collects in a Microsoft Azure SQL Database. The company plans to use the data to enrich account records and make the sales team more effective.
Current environment
-
Environment
-
• The company has three Microsoft Power Platform environments with Dynamics 365 Sales installed. The environments are named development, test, and production.
• Each environment has an application user that can be used for integrations.
• The company must use solutions to perform all customization and configuration deployment.
Data
-
Web API
-
• The company creates an Azure Function to run a RESTful .NET Web API.
• Data can be retrieved by placing a GET request to the URL https://dataservice-[ENVIRONMENTNAME].azurewebsites.net/enrich/[DATAID].
• [ENVIRONMENTNAME] is the name of the Microsoft Power Platform environment that requests the data.
• [DATAID] is the new_dataid column in the Account table.
• The Web API response will return a 200 response plus data if the DataId is found. Otherwise, a 404 response is returned.
• Developers plan to create a custom connector from the Web API to make it accessible from Microsoft Power Platform.
Requirements
-
Custom connector
-
• The Web API definition used to create the custom connector must be generated based on a low-code technology.
• The URL used by the custom connector must incorporate the current environment name without hardcoding values.
• Errors generated by the custom connector must not cause downstream processes to fail.
• Text descriptions and field placeholder text that describe the use of the custom connector must appear for non-developers.
Process
-
• All account records must be updated with data from the Web API once automatically.
• Only account records that contain a DataId should be updated by the Web API.
• Researchers must create Power Automate flows to specify data analysis priority.
• The researchers require a process that repurposes a set of identical steps of parameterized Microsoft Dataverse queries from a Power Automate flow for use in other flows that have different parameters. The
researchers want to avoid recreating the steps manually each time they create a flow to save time and avoid errors.
Issues
-
• A tester attempts to connect to the production instance of the Web API with a DataId that should return data. The tester receives an error stating that the remote name could not be resolved.
• A missing component causes an error to occur when importing the solution that contains the Power Automate flow to update account records in a test environment.
You need to configure a Power Automate flow to update account records by using the response from the Web API.
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.
Answer :
You must add the new survey page to the company’s public website and capture data from the page to a Microsoft Dataverse environment.
Explicit user credentials must not be required to write survey data to Dataverse.
Answer : B
You develop the following code as part of a plug-in that handles the Create message of the Account table.
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
Answer :
After you answer a question in this section, you will NOT be able to return to it. As a result, these questions will not appear in the review screen.
A company requires custom validation when users save form records that use a synchronous plug-in.
If validation fails, a message that explains how to resolve the issue must be displayed on the form to the user.
A. Yes
B. No
Answer : B
Question 287 ( Question Set 7 )
Note: This question is part of a series of questions that present the same scenario. Each question in the series contains a unique solution that might meet the stated goals. Some question sets might have more than one
correct solution, while others might not have a correct solution.
After you answer a question in this section, you will NOT be able to return to it. As a result, these questions will not appear in the review screen.
A company requires custom validation when users save form records that use a synchronous plug-in.
If validation fails, a message that explains how to resolve the issue must be displayed on the form to the user.
A. Yes
B. No
Answer : A
After you answer a question in this section, you will NOT be able to return to it. As a result, these questions will not appear in the review screen.
A company requires custom validation when users save form records that use a synchronous plug-in.
If validation fails, a message that explains how to resolve the issue must be displayed on the form to the user.
A. Yes
B. No
Answer : B
After you answer a question in this section, you will NOT be able to return to it. As a result, these questions will not appear in the review screen.
A company requires custom validation when users save form records that use a synchronous plug-in.
If validation fails, a message that explains how to resolve the issue must be displayed on the form to the user.
A. Yes
B. No
Answer : B
The update must occur based on the alternate key configured for the table.
Which two requests should you use? Each correct answer presents a complete solution.
A. UpdateRequest
B. UpsertRequest
C. CreateRequest
D. RetrieveRequest
Answer : AB
A. Yes
B. No
Answer : B
Instead: Use position hierarchy security and define the two departments as positions.
Two security models can be used for hierarchies, the Manager hierarchy and the Position hierarchy. The Position hierarchy allows data access across business units. If you are a financial organization, you may prefer
the Manager hierarchy model, to prevent managersג€™ accessing data outside of their business units.
However, if you are a part of a customer service organization and want the managers to access service cases handled in different business units, the Position hierarchy may work better for you.
Note: The hierarchy security model is an extension to the existing security models that use business units, security roles, sharing, and teams. It can be used in conjunction with all other existing security models. The
hierarchy security offers a more granular access to records for an organization and helps to bring the maintenance costs down.
Reference:
https://docs.microsoft.com/en-us/power-platform/admin/hierarchy-security
Answer :
Answer : D
Column dependencies -
Starting with model-driven apps, if your JavaScript web resource depends on a table column value that you donג€™t want to display in the form, you can set the column as a dependency for the JavaScript web
resource. This means that the column will be available within the client API columns collection so you can get or set the value in your code. When you add a dependency this way, the controls collection of the column
will be empty because there will be no control on the form.
Before this feature you would need to manually add the column to the form and then configure the control to be hidden. Now you can establish this dependency more directly and eliminate the possibility that
someone will remove the hidden column from the form.
Incorrect:
Not A: Hiding form elements is not a recommended way to enforce security. There are several ways people can view all the elements and data in the form when elements are hidden.
Reference:
https://docs.microsoft.com/en-us/power-apps/maker/model-driven-apps/visibility-options-legacy
Answer : D
Next, each command bar contains a new ג€Command checkerג€ button. Note that this shows up at the end of the ribbon, so you may have to click the overflow
flyout.
Reference:
https://powerapps.microsoft.com/en-us/blog/introducing-command-checker-for-model-app-ribbons/
A. Create new calculated fields on the customer entity for insurance exposure and risk. Create a formula to calculate the sum of values from policy records.
B. Change the frequency of the Calculate Rollup Field recurring job from every hour to every five minutes.
C. Create a plug-in that uses the update method for the rollup fields. Configure a step on the Create event for the policy entity for this plug-in.
D. Create a plug-in that uses the CalculateRollupFieldRequest method for the rollup field. Configure a step on the Create event for the policy entity for this plug-in.
Answer : D
This message is a synchronous operation for just the column identified in the request. If the value of that record is included as part of other rollup columns, the
values of those columns won't take the possible value change caused by calling this method into consideration until the regularly scheduled asynchronous jobs
that perform those calculations occur.
Answer : BD
The messaging entity must have the Send policy permission at a minimum. For a two-way relay, the policy must also have the Listen permission.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/data-platform/walkthrough-configure-azure-sas-integration
Answer :
Answer :
Box 2: apiProperties.json -
The publisher and stackOwner properties exist as top-level properties within the apiProperties.json file.
Reference:
https://docs.microsoft.com/en-us/connectors/custom-connectors/certification-submission
A. Add the Microsoft Azure Application Insights data source to the canvas app
B. After each event, implement the trace function within the canvas app
C. Turn on the Debug published app setting in the canvas app
D. Validate the Application Insights instrumentation key has been populated in the app objectג€™s properties within the canvas app
Answer : C
Setting: Debug published app -
If you want to view the source expressions in Monitor for the published app, you need to turn on the setting to publish the expressions with the app. This setting is similar to generating a debug file in traditional
development. Publishing source expressions with your app is optional. Even when this setting is off, you'll be able to see the events happening in your app, but you won't be able to map these events to specific
expressions or formulas.
To enable this setting, go to File > Settings, and then turn on Debug published app.
Reference:
https://docs.microsoft.com/en-us/power-apps/maker/monitor-canvasapps
Answer :
System Administrator -
Create, Read, Write, Delete, Customizations, Security Roles
Has full permission to customize or administer the environment, including creating, modifying, and assigning security roles. Can view all data in the environment.
Box 3: System Administrator only
Reference:
https://docs.microsoft.com/en-us/power-apps/maker/model-driven-apps/share-model-driven-app
Box 1: PreValidation -
Applications must not be marked as complete if the employee has not completed mandatory drug screening.
If you want to change any values for an entity included in the message, you should do it here.
Pre-validation stage executes outside Database Transaction which will not rollback the entire operations written in the plugin if there is any runtime error occurs in one operation. This provides an opportunity to
include logic to cancel the operation before the database transaction.
Box 2: PreOperation -
Add logic that stores the name of the human resources team member that approves an application. This step must be completed before an ID card is created for the applicant.
Pre-Operation stage executes inside database transaction due to which any runtime error occurs in a single operation in the plugin will rollback entire operations which are part of the plugin.
Box 3: PostOperation -
Successful validation and ID card printing.
Post Operation - Plug-ins registered in this stage are executed within the database transaction. Plugin will run after the values have been inserted/changed on the database
Reference:
https://softchief.com/2021/03/23/prevalidation-v-s-preopration-in-dynamics-365/ http://mscrmtechie.blogspot.com/2016/02/plugin-stages-pre-validation-pre.html
Answer : D
Scenario: CustomerC requested additional information from the parts department through the customer survey and has not received a response one week later.
Timeout in Power Automate Approval
Timeout in Power Automate Approval is setting which is allowing control what will happen when Approver will not act on time.
Default value is empty and it equals time of how long Flow can run so 30 days.
Reference:
https://docs.microsoft.com/en-us/power-automate/sequential-modern-approvals
Answer :
A. Workflow
B. Subgrid
C. Business rule
D. Flow
E. Chart
Answer : C
When the account is entered into the system, extra fields must appear if the referral customer box is selected. If the box is not selected, the extra fields must not appear.
Note: By combining conditions and actions, you can do any of the following with business rules:
✑ Set column values
✑ Clear column values
✑ Set column requirement levels
✑ Show or hide columns
✑ Enable or disable columns
✑ Validate data and show error messages
✑ Create business recommendations based on business intelligence.
Reference:
https://docs.microsoft.com/en-us/powerapps/maker/data-platform/data-platform-create-business-rule
Answer : A
Answer : CD
C: You can use the File watcher function in Azure function app to process coping of files from source to destination.
Note: The FileSystemWatcher class listens to the file system change notifications and raises events when a directory, or file in a directory, changes.
Use FileSystemWatcher to watch for changes in a specified directory. You can watch for changes in files and subdirectories of the specified directory. You can create a component to watch files on a local computer, a
network drive, or a remote computer.
D: Power Automate is a service that helps you create automated workflows between your favorite apps and services to synchronize files, get notifications, collect data, and more.
Note: The company relies on referrals from athletes for new business. Bellows uses a third-party marketing company to gather feedback and referrals from athletes. The third-party marketing company uploads a
Microsoft Excel file containing lists of potential customers and players to the FTP site that Bellows Sports maintains.
Referrals must be imported into the system as soon as they are available.
Reference:
https://docs.microsoft.com/en-us/dotnet/api/system.io.filesystemwatcher https://docs.microsoft.com/en-us/power-automate/
Answer :
Scenario:
A. JavaScript
B. Flow with a custom connector
C. Azure Function
D. Plug-in
Answer : B
While Azure Logic Apps, Microsoft Power Automate, and Microsoft Power Apps offer over 325+ connectors to connect to Microsoft and verified services, you may want to communicate with services that aren't
available as prebuilt connectors. Custom connectors address this scenario by allowing you to create (and even share) a connector with its own triggers and actions.
Note:
Each of the third-party services charge per result. Northwind wants to perform the background check processes only when necessary to minimize costs.
Reference:
https://docs.microsoft.com/en-us/connectors/custom-connectors/
Answer :
A. formContext.data.entity.addOnSave(myFunction)
B. formContext.data.addOnLoad(myFunction)
C. formContext.data.removeOnLoad(myFunction)
D. addOnPreProcessStatusChange
E. formContext.data.isValid()
Answer : B
Scenario: Information about upcoming tournaments must be pre-located into the registration form when the registration form loads. addOnLoad adds event handlers to the Subgrid OnLoad event event.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/model-driven-apps/clientapi/reference/grids/gridcontrol/addonload
A. formContext.data.addOnLoad(myFunction)
B. formContext.data.removeOnLoad(myFunction)
C. formContext.data.entity.addOnSave(myFunction)
D. addOnPreProcessStatusChange
E. formContext.data.isValid()
Answer : A
Syntax: Syntax -
formContext.data.process.addOnPreProcessStatusChange(myFunction);
The function to be executed when the business process flow status changes. The function will be added to the start of the event handler pipeline.
Not E: IsValid() gets a boolean value indicating whether all of the form data is valid. This includes the main table and any unbound columns. If the form has empty, required columns on it, control-level error
notifications is shown.
Description: true if all of the form data is valid; false otherwise.
Reference:
https://docs.microsoft.com/en-us/power-apps/developer/model-driven-apps/clientapi/reference/formcontext-data/addonload https://docs.microsoft.com/en-us/power-apps/developer/model-driven-
apps/clientapi/reference/formcontext-data-process/eventhandlers/ addonpreprocessstatuschange https://docs.microsoft.com/en-us/powerapps/developer/model-driven-apps/clientapi/reference/formcontext-
data/isvalid
A. IsBlank
B. IsType
C. PlainText
D. IsNumeric
Answer : D
When a pharmacy is added by using the mobile app, the phone number must be validated to be all digits.
Note: The IsNumeric function tests whether a value is numeric. Other kinds of values include Boolean, string, table, and record.
The return value is a Boolean true or false.
Reference:
https://docs.microsoft.com/en-us/powerapps/maker/canvas-apps/functions/function-isnumeric
Scenario: The query for all registered users must return the data categorized by division. Queries must return only the Name and Sport fields. Queries return all fields. The query is as follows:
A. a Power Automate flow that connects with the bike fair Power Apps app to create a lead in Dynamics 365 Sales
B. a Power Automate flow that generates a new customer record in SharePoint.
C. a Power Automate flow to capture customer data from the bike fair Power Apps app in SharePoint and create a lead in Microsoft Teams.
D. a business process flow in Dynamics 365 Sales for capturing leads.
Answer : A
Scenario:
✑ Qualified leads must be collected from local bike fairs.
✑ Adventure Works Cycles uses a Power Apps app for local bike fairs to attract new customers.
By using a Dynamics 365 connector, you can create flows that initiate when an event occurs in Dynamics 365, or some other service, which then performs an action in Dynamics 365, or some other service.
In Power Automate, you can set up automated workflows between your favorite apps and services to synchronize files, get notifications, collect data, and more.
Reference:
https://docs.microsoft.com/en-us/power-automate/connection-dynamics365
B.
C.
D.
Answer : C
Scenario: User2 reports that Azure consumption for API calls has increased significantly to 100 calls per minute in the last month.
Example:
In the following example, the rate limit of 10 calls per 60 seconds is keyed by the caller IP address. After each policy execution, the remaining calls allowed in the time period are stored in the variable
remainingCallsPerIP.
<policies>
<inbound>
<base />
<rate-limit-by-key calls="10"
renewal-period="60"
increment-condition="@(context.Response.StatusCode == 200)"
counter-key="@(context.Request.IpAddress)"
remaining-calls-variable-name="remainingCallsPerIP"/>
</inbound>
<outbound>
<base />
</outbound>
</policies>
Note: The rate-limit-by-key policy prevents API usage spikes on a per key basis by limiting the call rate to a specified number per a specified time period. The key can have an arbitrary string value and is typically
provided using a policy expression. Optional increment condition can be added to specify which requests should be counted towards the limit. When this call rate is exceeded, the caller receives a 429 Too Many
Requests response status code.
Incorrect Answers:
A: With renewal-period="30" 200 calls/minute would be allowed.
B: This would increase the calls/minute limit to 1000.
Reference:
https://docs.microsoft.com/en-us/azure/api-management/api-management-access-restriction-policies
A. Filter
B. Find
C. LookUp
Answer : C
The LookUp function finds the first record in a table that satisfies a formula. Use LookUp to find a single record that matches one or more criteria.
A. asynchronous
B. atomicity
C. transfer
D. synchronous
Answer : D
User5 receives the error message: ג€˜Endpoint unavailableג€™ during a test of the technician dispatch ISV solution.
When you choose to use a synchronous execution mode any failure will be reported back to the user of the application with an Endpoint unavailable error dialog informing the user that the webhook service endpoint
may be configured incorrectly or is not available.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/common-data-service/use-webhooks
A. a flow that updates the warehouse counts as the worker performs the count
B. a model-driven app that allows the user to key in inventory counts
C. A Power BI dashboard that shows the inventory counting variances
D. a canvas app that scans barcodes to allow a warehouse worker to select inventory counts
Answer : D
Scenario: Warehouse counting is performed manually by using a counting journal. All warehouse boxes and items are barcoded.
Answer : AD
Scenario: The Adventure Works Cycles retail location performs bicycle inspections and performance tune-ups.
Technicians use paper forms to document the bicycle inspection performed before a tune-up and any additional work performed on the bicycle.
A: The Dynamics 365 Field Service business application helps organizations deliver onsite service to customer locations. The application combines workflow automation, scheduling algorithms, and mobility to set
mobile workers up for success when they're onsite with customers fixing issues.
D: Compared to canvas apps, model-driven apps in PowerApps are based on underlying data ג€" specifically, the data stored in Common Data Service (CDS). All model-driven apps are integrated into CDS. In fact,
most Microsoft apps are integrated into CDS because most Microsoft apps, including the entire Dynamics 365
(D365) platform, are model-driven apps.
Incorrect Answers:
B: An Azure Logic App would not be fit for scale. Azure Logic Apps is a cloud service that helps you schedule, automate, and orchestrate tasks, business processes, and workflows when you need to integrate apps, data,
systems, and services across enterprises or organizations.
Reference:
https://docs.microsoft.com/en-us/dynamics365/field-service/overview https://global.hitachi-solutions.com/blog/canvas-vs-model-driven-apps
✑ Record is deleted
Reference:
https://docs.microsoft.com/en-us/power-platform/admin/data-integrator
A. Make the address fields read-only after they have been verified.
B. Open a confirmation dialog when the command bar button is selected.
C. Enable the command bar button only when the address shows as not verified.
D. Clear the field indicating the address is valid when an address field changes.
Answer : AC
Answer : BC
Answer :
Verification process -
Answer :
Box 1: Execute -
You need to configure the address verification API.
Action: A user enters the candidate address into a third-party website to verify that the address entered is valid.
Box 2: Synchronous -
The address verification process provides a response almost immediately on screen.
Answer :
Box 1: Pull -
After submitting candidate information, users must periodically check the website to see if a response has been posted.
Box 2:
The background check process goes through a number of stages before reaching the final result.
Need just to update the state changes, not to insert.
Note:
Reference:
https://docs.microsoft.com/en-us/power-apps/developer/data-platform/use-upsert-insert-update-record
Answer : C
Answer :
Answer :
1. The Developer Portal requests a token from Azure AD using app registration client id and client secret.
2. In the second step, the user is challenged to prove their identity by supplying User Credentials.
3. After successful validation, Azure AD issues the access/refresh token.
4. User makes an API call with the authorization header and the token gets validated by using validate-jwt policy in APIM by Azure AD.
5. Based on the validation result, the user will receive the response in the developer portal.
Reference:
https://zapier.com/engineering/apikey-oauth-jwt/
https://techcommunity.microsoft.com/t5/azure-paas-blog/protect-api-s-using-oauth-2-0-in-apim/ba-p/2309538
A. Choice
B. Status
C. Choices
D. Lookup
Answer : B
The solution must include fields for the candidateג€™s record to represent each stage.
Answer :
Box 1: Lookup -
Fields for the doctorג€™s name and phone number must be displayed in the customer record.
Lookup: A field that allows setting a reference to a single record of a specific type of entity.
Box 2: Calculated -
Refill dates for customer prescriptions should be automatically determined and a notification should be sent to the customer.
Calculated field: Contains calculations that use fields from the current entity or related parent entities.
Box 3: Text -
Field data type: Single Line of Text:
This field can contain up to 4,000 text characters. You can set the maximum length to be less than this. This field has several format options that will change the presentation of the text. These options are Email, Text,
Text Area, URL, Ticker Symbol, and Phone.
Reference:
https://docs.microsoft.com/en-us/dynamics365/customerengagement/on-premises/customize/types-of-fields
Question 337 ( Testlet 4 )
DRAG DROP -
You need to assign the minimum environmental security role to the appropriate users.
Which security roles should you use? To answer, drag the appropriate security roles to the correct users. Each security role 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.
Select and Place:
Answer :
When you export a managed solution, it contains all the changes that have been applied for that solution into a file that you can then import into a different
Dataverse environment.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/data-platform/introduction-solutions
Answer :
A. Interns have the System Customizer security role but need the Environment Maker security role.
B. Interns have the Common Data Service User security role but need the Environment Maker security role.
C. Interns have the Environment Maker security role but need the Common Data Service User security role.
D. Interns have the Environment Maker security role but need the System Customizer security role.
E. Interns have the Environment Maker security role but need the Delegate security role.
Answer : D
Scenario: Interns can create apps but cannot interact with their own data.
Environment Maker role: Can create new resources associated with an environment, including apps, connections, custom APIs, gateways, and flows using
Microsoft Power Automate. However, this role doesn't have any privileges to access data within an environment.
System Customizer role: full permission to customize the environment. However, users with this role can only view records for environment entities that they create.
Reference:
https://docs.microsoft.com/en-us/power-platform/admin/database-security
Answer :
You must grant users the minimum permissions required to perform their job tasks.
Answer :
Box 1: Text -
The company is organized into the following divisions:
Baseball -
✑ Hockey
✑ Soccer
Box 3: Lookup -
Customer information is stored in the Accounts entity. Each tournament record must list the associated sales representative as the tournament owner.
Note: When you create a new lookup column you are creating a new Many-to-One (N:1) table relationship between the table youג€™re working with and the
Target
Row Type defined for the lookup. There are additional configuration options for this relationship that are described in Create and edit relationships between
tables.
But all custom lookups can only allow for a reference to a single row for a single target row type.
Reference:
https://docs.microsoft.com/en-us/powerapps/maker/data-platform/types-of-fields
Answer : B
Scenario:
✑ Customers report that the response time from the information email listed on the Adventure Works Cycles website is greater than five days.
✑ Microsoft Teams is used for all collaboration.
Microsoft teams support email notifications.
Reference:
https://support.microsoft.com/en-us/office/manage-notifications-in-teams-1cc31834-5fe5-412b-8edb-43fecc78413d
Answer :
Symptoms -
Retrieving all columns can cause:
✑ Performance issues due to the amount of data being retrieved
✑ Unintended plug-in/process execution
Guidance -
For optimal performance, you should only select the minimum amount of data needed by your application when querying Microsoft Dataverse data.
ColumnSet Parameter -
When you use the IOrganizationService.Retrieve method set the columnSet parameter to a ColumnSet instance with specified columns. When you use
QueryExpression set the ColumnSet property with the required attributes.
Box 2: Add the following code at line CS203: request.KeepAlive =false;
Scenario: Error message: Il-turn-off-keepalive
Symptoms -
If a plug-in makes external web requests and is trying to use KeepAlive on a closed connection, the plug-in will ultimately fail to execute the web request. If the plug-in is registered:
Synchronously, users may experience:
✑ Unresponsive model-driven apps
✑ Slow client interactions
✑ The browser stops responding
Asynchronously, plug-in executions may take an extended period of time before failing.
Guidance -
In HTTP 1.1, all connections are considered persistent (KeepAlive is true) unless declared otherwise. Due to the fact that plug-ins run in isolation, the Sandbox service translates into them being short-lived executions
that generally would not benefit from KeepAlive. To avoid problems with connecting to external services we recommend disabling KeepAlive within plug-ins. This is done by setting KeepAlive to false.
Reference:
https://docs.microsoft.com/en-us/powerapps/developer/data-platform/best-practices/business-logic/set-keepalive-false-interacting-external-hosts-plugin https://docs.microsoft.com/en-
us/powerapps/developer/data-platform/best-practices/work-with-metadata/retrieve-specific-columns-entity-via-query-apis
Answer : BC
A. DIFFINWEEKS(now,1)
B. SUBTRACTDAYS(10, Now())
C. ADDWEEKS(1, CreatedOn)
D. DIFFINDAYS(Createdon, now())
E. ADDDAYS(10, CreatedOn)
Answer : C
A trigger must be created that changes the Priority field to 1 in the Account record 10 days after an Account record is created.
Note:
Date.AddWeeks returns the date, datetime, or datetimezone result from adding numberOfWeeks weeks to the datetime value dateTime.
CreatedOn gets the value to store in the history table indicating when this entry was created.
Reference:
https://docs.microsoft.com/en-us/powerquery-m/date-addweeks
https://docs.microsoft.com/en-us/dotnet/api/system.data.entity.migrations.model.inserthistoryoperation.createdon?view=entity-framework-4.3.1
Answer : AD
CustomerB reports that the check-in app returned only one search result for their last name, which is not the correct name.
A: The Filter function finds records in a table that satisfy a formula. Use Filter to find a set of records that match one or more criteria and to discard those that don't.
D: The Search function finds records in a table that contain a string in one of their columns.
Incorrect:
Not B, not C: The LookUp function finds the first record in a table that satisfies a formula. Use LookUp to find a single record that matches one or more criteria.
Reference:
https://docs.microsoft.com/en-us/powerapps/maker/canvas-apps/functions/function-filter-lookup
Answer :
Scenario: A text alert must be sent to employees scheduled to assist in the repair area of the retail store if the number of repair check-ins exceeds eight.
Answer : D
Scenario: Warehouse counting is performed manually by using a counting journal. All warehouse boxes and items are barcoded.
Barcode scanner control for canvas apps: Scans barcodes, QR codes, and data-matrix codes on an Android or iOS device.
Description -
The control opens a native scanner on an Android or iOS device. The scanner automatically detects a barcode, a QR code, or a data-matrix code when in view.
Reference:
https://docs.microsoft.com/en-us/powerapps/maker/canvas-apps/controls/control-new-barcode-scanner
Answer :
Scenario: Customer satisfaction surveys are recorded with Microsoft Forms Pro.