Preview real exam questions, verified answers and available explanations before choosing a study plan.
Question 1
Hotspot
HOTSPOT
You are developing a business process flow.
JavaScript must be used to implement additional business logic in the business process flow.
You need to evaluate the JavaScript code.
What is the result of running each code segment? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Reveal answer detailsClose answer details
Explanation
Box 1: Hides the control in the body of the form. The Client API form context (formContext) provides a reference to the form or to an item on the form, such as, a quick view control or a row in an editable grid, against which the current code is executed.
setVisible sets a value that indicates whether the control is visible.
Box 2: Add an event handler to enable a function named TestFunction to run when the business process flow stage changes.
addOnStageChange adds a function as an event handler for the OnStageChange event so that it will be called when the business process flow stage changes.
Case study
Case Study 5
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.
Requirements. Interview Scheduling
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.
1. The control must display the current time in each team member's local time. 2. The control must be bound so that it minimizes the amount of code that must be written. 3. 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.
Requirements. Historical Information Tracking
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.
You must be able to determine the following information about a candidate: - The number of interviews in the past two years and whether team members provided recommendations - The number of hiring manager referrals and employee referrals in the past two years - Whether the individual has any of the 12 designations or certifications that the company considers significant Only a single referral can be made per job application. The system must be able to support multiple referrals for a candidate. The system must track referrals even if an application is not completed.
Requirements. Historical Information Scoring
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.
Requirements. Design Guidelines
The following design guidelines must be followed:
1. Schema changes must be made using the method requiring the least amount of storage to meet the requirement. 2. Out-of-the-box functionality must be used when possible. 3. Any code required to calculate scores must be able to be run from a single point. 4. Email notifications need to be kept to a minimum.
Issues
1. 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. 2. The system does not support associating designations and certifications with candidates. 3. 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. 4. Interviewers report that they do not receive email notifications when interview records are created for an existing person of interest.
Question 2
Testlet 5Single choice
You need to resolve the issue with the new command button.
What should you do?
A
Pass ExecutionContext to the function in the action definition.
B
Pass the value SelectedControl to the function in the action definition.
C
Select the Pass execution context as first parameter option on the event registration form.
D
Pass the value PrimaryControl to the function in the action definition.
Reveal answer detailsClose answer details
Correct answerC
Explanation
Requirements. Historical Information Scoring 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.
The execution context defines the event context in which your code executes.
The execution context defines the event context in which your code executes. The execution context is passed when an event occurs on a form or grid, which you can use it in your event handler to perform various tasks such as determine formContext or gridContext, or manage the save event.
The execution context is passed in one of the following ways:
1. Defining event handlers using UI: The execution context is an optional parameter that can be passed to a JavaScript library function through an event handler. Use the Pass execution context as first parameter option in the Handler Properties dialog while specify the name of the function to pass the event execution context. The execution context is the first parameter passed to a function. 2. Defining event handlers using code: The execution context is automatically passed as the first parameter to functions set using code.
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
1. Contoso maintains a Microsoft Excel workbook that lists all drugs they supply. 2. Pharmacies submit order requests through email. 3. All information at customer locations is handwritten by customer representatives. 4. Contoso uses Cerner, which is a medical industry application that uses a proprietary database. 5. Some accounts are referrals from other pharmacies. 6. Every pharmacy has its own Dynamics 365 Sales instance.
Requirements
General
Contoso wants to ensure that there is minimal custom code and custom connectors in the system.
Accounts
1. Ensure that the names of the pharmacies are synced between the accounting and the customer management systems. 2. Account numbers should be entered automatically into the pharmaceutical system that is in a Cerner database and kept in sync. 3. 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. 4. A trigger must be created that changes the Priority field to 1 in the Account record 10 days after an Account record is created. 5. A field named Priority_Trigger must be created to trigger the Priority field. 6. 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
1. UserA must be able to create and publish Power Apps apps. 2. UserB must be the owner of all the systems and be able to provide permissions and create all new environments. 3. UserC must be able to create apps connected to the systems and update the security roles and entities. 4. Pharmacy representatives must only be able to run the apps and access their own records. 5. Access to the accounting Power Apps app must be restricted to accounting team members. 6. End users must have minimum access to the required systems. 7. Only supervisors must be able to view phone numbers in the Accounts form. 8. Developers must be able to create new apps for all users. 9. Sales users must only have access to their own records.
Reporting
Pharmacy orders must be displayed in four graphs as follows:
1. Annual revenue over $100,000 2. Annual revenues under $100,000 3. Research facilities 4. Hospitals
The graphs must be interactive, and users must be able to drill down on any dimension.
Customizations
1. Ensure that notifications are sent to the sales team when a lead is added by using Slack. 2. Ensure that leads have a review stage added to the sales process. 3. Doctors must be manually added to a custom entity named Doctor if the doctor is not listed. 4. Refill dates for customer prescriptions should be automatically determined and a notification should be sent to the customer. 5. Fields for the doctor's name and phone number must be displayed in the customer record. 6. The doctor entered on the customer's record must be validated against doctors that exist in the system. 7. The new solution will be sold to other pharmacies for use. The application must not allow changes to be made. 8. The solution must be error free so that when it is installed in other environments it does not cause issues.
Mobile app
1. A custom mobile app must be created to allow salespeople to add or search by pharmacy name. 2. Pharmacy records must be uniquely identified by pharmacy name, address, contact name, and phone number. 3. When a pharmacy is added by using the mobile app, the phone number must be validated to be all digits.
Question 3
Testlet 3Drag & drop
DRAG DROP
You need to select a process to create each function.
Which process should you use? To answer, drag the appropriate processes to the correct functions. Each process 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.
Reveal answer detailsClose answer details
Explanation
Box 1: Microsoft flow Using Microsoft Flow, you can automatically post to Slack when an event happens in Dynamics 365, enabling similar functionality that is available with the Microsoft Yammer integration with third-party collaboration tools.
Box 2: Workflow Box 3: Business process flow A business process flow is composed of Stages, and within each stage there are Steps to complete which are fields. In the business process flow heading, a user can see which stage they are at in the process, and which steps they need to complete before they proceed in the process.
Business process flows enable you to require users to complete certain steps before completing the process and if needed you can also allow users to jump stages.
Question 4
Hotspot
HOTSPOT
You are configuring two command buttons on a form.
The form must display the buttons only if conditions meet a pre-defined criteria.
You need to create rules for the form.
Which rule types should you use?
To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Reveal answer detailsClose answer details
Explanation
Box 1: PageRule Website link to the current form
Page Rule Uses the <PageRule> element. This type of rule checks the URL of the page being displayed. It returns true if the Address matches
Incorrect: * Value Rule Uses the <ValueRule> element. Use this rule to check the value of a specific column in the record being displayed in the form. You must specify the Field and the Value to check.
* Entity Rule Uses the <EntityRule> element. EntityRule allow for evaluation of the current table. This is useful when you define custom actions that apply to the table template instead of for specific tables. For example, you may want to add a ribbon element to all tables except for several specific tables. It is easier to define the custom action for the table template that applies to all tables and then use an EntityRule to filter out those that should be excluded.
The EntityRule also includes an optional context parameter to specify whether the table is being displayed in the form or a list (HomePageGrid).
Box 2: ValueRule Sum of two form fields
Value Rule Uses the <ValueRule> element. Use this rule to check the value of a specific column in the record being displayed in the form. You must specify the Field and the Value to check.
Incorrect: * Selection Count Rule Uses the <SelectionCountRule> element. Use this kind of rule with a ribbon displayed for a list to enable a button when specific maximum and minimum numbers of records in the grid are selected. For example, if your button merges records, you should make sure at least two records are selected before enabling the ribbon control.
* Custom Rule
Uses the <CustomRule> element. Use this kind of rule to call a function in a JavaScript web resource that returns a Promise (Unified Interface) or boolean (Unified Interface and web client).
You are developing a Power Platform solution for a medical practice. You create a custom table named Doctors to record details about the doctors who work at the medical practice.
You must be able to attach a PDF copy of a doctor's medical license to the row for each doctor.
You need to configure the table.
What should you do?
A
Create a Power Automate flow to add attachments.
B
Navigate to Table options and enable attachments.
C
Navigate to Column options and enable attachments.
D
Create relationships between the Doctor table and the Notes table.
Reveal answer detailsClose answer details
Correct answerC
Explanation
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.
A company delivers packages to businesses and consumers. A custom entity named Package captures the package details.
You need to add the following sets of fields to the entity and leverage the built-in operations of the platform:
A set of fields to represent the package length, width, depth, and weight. The maximum value for any dimension is 100 centimeters. A set of fields for time-sensitive attributes to calculate the efficiency of a delivery based on when the delivery is entered in the system and the existing custom fields: Pickup time and Delivery time.
Which constructs should you use? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Reveal answer detailsClose answer details
Explanation
Box 1: DIFFINMINUTES(Created on, Delivery Time) DIFFINMINUTES (date and time, date and time) returns the difference in minutes between two Date and Time columns.
Note: This question is part of a series of questions that present the same scenario. Each question in the series contains a unique solution. Determine whether the solution meets 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 university has implemented Dynamics 365 Customer Engagement. Several departments use opportunity records to bid for funding for projects within their own departments.
Each department's opportunities are not visible to other departments. However, there are times when two departments need to work together on an opportunity.
You need to configure the security to meet the business requirements.
Solution: Share the individual opportunity that member of one department are working on with all members of the second department, and give those members the appropriate permissions.
Does the solution meet the goal?
A
Yes
B
No
Reveal answer detailsClose answer details
Correct answerB
Question 8
Single choice
You are developing a Power Apps app to manage records in the Account table in Microsoft Dataverse.
You must configure a Web API request to retrieve changes from the table.
You need to configure the preference header for the API request.
What should you include in the request header?
A
odata.context
B
odata.deltaLink
C
odata.track-changes
D
odata.nextLink
Reveal answer detailsClose answer details
Correct answerB
Explanation
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.
Adventure Works Cycles wants to replace their paper-based bicycle manufacturing business with an efficient paperless solution. The company has one manufacturing plant in Seattle that produces bicycle parts, assembles bicycles, and distributes finished bicycles to the Pacific Northwest.
Adventure Works Cycles has a retail location that performs bicycle repair and warranty repair work. The company has six maintenance vans that repair bicycles at various events and residences.
Adventure Works Cycles recently deployed Dynamics 365 Finance and Dynamics 365 Manufacturing in a Microsoft-hosted environment for financials and manufacturing. The company plans to leverage the Microsoft Power Platform to migrate all of their distribution and retail workloads to Dynamics 365 Unified Operations.
The customer uses Dynamics 365 Sales. Dynamics 365 Customer Service and Dynamics 365 Field Service.
Retail store information
1. Adventure Works Cycle has one legal entity, four warehouses, and six field service technicians. 2. Warehouse counting is performed manually by using a counting journal. All warehouse boxes and items are barcoded. 3. The Adventure Works Cycles retail location performs bicycle inspections and performance tune-ups. 4. Technicians use paper forms to document the bicycle inspection performed before a tune-up and any additional work performed on the bicycle. 5. Adventure Works Cycles uses a Power Apps app for local bike fairs to attract new customers. 6. A canvas app is being developed to capture customer information when customers check in at the retail location. The app has the following features: - Customer selects yes or no if they are on the mailing list. - Customer selects the amount of times they have visited the store. - Customer selects the type of service needed. - The search result returns all last name records that match the search term.
Technology
Requirements
1. A plug-in for Dynamics 365 Sales automatically calculated the total billed time from all activities on a particular customer account, including sales representative visits, phone calls, email correspondence, and repair time compared with hours spent. 2. A shipping API displays shipping rates and tracking information on sales orders. The contract allows for 3,000 calls per month. 3. Ecommerce orders are processed in batch daily by using a manual import of sales orders in Dynamics 365 Finance. 4. Microsoft Teams is used for all collaboration. 5. All testing and problem diagnostics are performed in a copy of the production environment. 6. Customer satisfaction surveys are recorded with Microsoft Forms Pro. Survey replies from customers are sent to a generic mailbox.
Automation
1. A text message must be automatically sent to a customer to confirm an appointment and to notify when a technician is on route that includes their location. 2. Ecommerce sales orders must be integrated into Dynamics 365 Finance and then exported to Azure every night. 3. 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. 4. Submitted customer surveys must generate an email to the correct department. Approval and follow-up must occur within a week.
Reporting
1. The warehouse manager's dashboard must contain warehouse counting variance information. 2. A warehouse manager needs to quickly view warehouse KPIs by using a mobile device. 3. Power BI must be used for reporting across the organization.
User experience
1. Warehouse counting must be performed by using a mobile app that scans barcodes on boxes. 2. All customer repairs must be tracked in the system no matter where they occur. 3. Qualified leads must be collected from local bike fairs.
Issues
1. Warehouse counting must be performed by using a mobile app that scans barcodes on boxes. 2. All customer repairs must be tracked in the system no matter where they occur. 3. Qualified leads must be collected from local bike fairs.
Internal
1. User1 reports receives an intermittent plug-in error when viewing the total bill customer time. 2. User2 reports that Azure consumption for API calls has increased significantly to 100 calls per minute in the last month. 3. User2 reports that sales orders have increased. 4. User5 receives the error message: 'Endpoint unavailable' during a test of the technician dispatch ISV solution. 5. The parts department manager who is the approver for the department is currently on sabbatical.
External
1. CustomerB reports that the check-in app returned only one search result for their last name, which is not the correct name. 2. Nine customers arrive in the repair area of the retail store, but no texts were sent to scheduled employees. 3. Customers report that the response time from the information email listed on the Adventure Works Cycles website is greater than five days.
4. CustomerC requested additional information from the parts department through the customer survey and has not received a response one week later.
Question 9
Testlet 2Single choice
You need to reduce response time for the information email on the website.
What should you create?
A
a flow that creates a SharePoint item for each email response
B
a flow that creates a notification in Microsoft Teams
C
a Power Apps app that displays the number of email received in a dashboard
D
a logic app that moves all emails received to Azure Blob storage
Reveal answer detailsClose answer details
Correct answerB
Explanation
Scenario: 1. Customers report that the response time from the information email listed on the Adventure Works Cycles website is greater than five days. 2. Microsoft Teams is used for all collaboration.
You have the following JavaScript function: (Line numbers are included for reference only.)
The Annual Revenue view column is configured to call the function as shown in the Column Properties exhibit. (Click the Change Column Properties tab.)
Microsoft PL-400
Users report that the icons that appear in the Active Account 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.
Reveal answer detailsClose answer details
Question 11
Multiple choice
You have the following code:
You have a contact record that uses the GUID 991bf2fd-d40c-4752-9984-26b7c0455b69.
You need to assign the contact record as the primary contact for an account when you create the account.
Which two code segments can you use? Each correct answer presents a complete solution.
NOTE: Each correct selection is worth one point.
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)" };
Reveal answer detailsClose answer details
Correct answersA, B
Explanation
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" } }
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.
Note: This question is part of a series of questions that present the same scenario. Each question in the series contains a unique solution. Determine whether the solution meets the stated goals. Some question sets might have more than once 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 university implements Dynamics 365 Sales. Several departments use opportunity records to bid for funding for projects within their own departments. You configure the system to ensure that each department can only work on their own records.
Employees in multiple departments often need to work together on an opportunity. Employees report that they are not able to see opportunities from other departments.
You need to ensure that employees from more than one department can work on the same opportunities when necessary.
Solution: Use access team templates and give access to members in the two departments.
Does the solution meet the goal?
A
Yes
B
No
Reveal answer detailsClose answer details
Correct answerB
Explanation
Instead use position hierarchy security and define the two departments as positions.
A company has a model-driven app that uses Microsoft Dataverse.
The company requires a web application that retrieves information from the model-driven app. The requirements for the web application include:
1. Must be a single-page web application that uses the Web API. 2. Must display the correct company information. 3. Must authenticate using OAuth without additional verification.
You need to configure the web application.
Which two methods should you use?
Each correct answer presents a complete solution.
NOTE: Each correct selection is worth one point.
A
NTLM authentication
B
Kerberos Authentication
C
Microsoft Azure Active Directory Authentication Libraries (ADAL)
D
Microsoft Authentication Library (MSAL)
E
multifactor authentication
Reveal answer detailsClose answer details
Correct answersC, D
Explanation
D: Use OAuth authentication with Microsoft Dataverse 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.
Client applications must support the use of OAuth to access data using the Web API. OAuth enables two-factor authentication (2FA) or certificate-based authentication for server-to-server application scenarios.
OAuth requires an identity provider for authentication. For Dataverse, the identity provider is Azure Active Directory (AAD). To authenticate with AAD using a Microsoft work or school account, use the Microsoft Authentication Library (MSAL).
Note: Since Dataverse users are authenticated using Azure Active Directory, MSAL.js is the supported way to authenticate SPA users.
C: Microsoft Azure Active Directory Authentication Library (ADAL) is a tool in the . NET framework that lets client applications developers authenticate users to an on-premises Active Directory deployment or to the cloud. ADAL will then secure API calls by locating tokens for access.
Note: Azure Active Directory Authentication Library (ADAL) is no longer actively receiving updates and is scheduled to be supported only until June, 2022. MSAL is the recommended authentication library to use for projects.
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
1. Contoso maintains a Microsoft Excel workbook that lists all drugs they supply. 2. Pharmacies submit order requests through email. 3. All information at customer locations is handwritten by customer representatives. 4. Contoso uses Cerner, which is a medical industry application that uses a proprietary database. 5. Some accounts are referrals from other pharmacies. 6. Every pharmacy has its own Dynamics 365 Sales instance.
Requirements
General
Contoso wants to ensure that there is minimal custom code and custom connectors in the system.
Accounts
1. Ensure that the names of the pharmacies are synced between the accounting and the customer management systems. 2. Account numbers should be entered automatically into the pharmaceutical system that is in a Cerner database and kept in sync. 3. 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. 4. A trigger must be created that changes the Priority field to 1 in the Account record 10 days after an Account record is created. 5. A field named Priority_Trigger must be created to trigger the Priority field. 6. 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
1. UserA must be able to create and publish Power Apps apps. 2. UserB must be the owner of all the systems and be able to provide permissions and create all new environments. 3. UserC must be able to create apps connected to the systems and update the security roles and entities. 4. Pharmacy representatives must only be able to run the apps and access their own records. 5. Access to the accounting Power Apps app must be restricted to accounting team members. 6. End users must have minimum access to the required systems. 7. Only supervisors must be able to view phone numbers in the Accounts form. 8. Developers must be able to create new apps for all users. 9. Sales users must only have access to their own records.
Reporting
Pharmacy orders must be displayed in four graphs as follows:
1. Annual revenue over $100,000 2. Annual revenues under $100,000 3. Research facilities 4. Hospitals
The graphs must be interactive, and users must be able to drill down on any dimension.
Customizations
1. Ensure that notifications are sent to the sales team when a lead is added by using Slack. 2. Ensure that leads have a review stage added to the sales process. 3. Doctors must be manually added to a custom entity named Doctor if the doctor is not listed. 4. Refill dates for customer prescriptions should be automatically determined and a notification should be sent to the customer. 5. Fields for the doctor's name and phone number must be displayed in the customer record. 6. The doctor entered on the customer's record must be validated against doctors that exist in the system. 7. The new solution will be sold to other pharmacies for use. The application must not allow changes to be made. 8. The solution must be error free so that when it is installed in other environments it does not cause issues.
Mobile app
1. A custom mobile app must be created to allow salespeople to add or search by pharmacy name. 2. Pharmacy records must be uniquely identified by pharmacy name, address, contact name, and phone number. 3. When a pharmacy is added by using the mobile app, the phone number must be validated to be all digits.
Question 14
Testlet 3Single choice
You need to create an application to deploy to other pharmacies.
What should you do?
A
Recreate customizations in a new environment.
B
Create a customer connector to connect the pharmacies' systems to the company's systems.
C
Export the solution as a managed solution.
D
Write a Web API to move customizations.
Reveal answer detailsClose answer details
Correct answerC
Explanation
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.
The following code updates the customersizecode choice column on the Account table if the numberofemployees column value is greater than 100.
Line numbering is provided for information 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.
Reveal answer detailsClose answer details
Explanation
Box 1: Yes The CrmServiceClient.Retrieve(String, Guid, ColumnSet) method issues a retrieve request to CRM
Parameters EntityName String Entity name to request
Id Guid ID of the entity to request
ColumnSet ColumnSet ColumnSet to request
Box 2: No The numberofemployees column is not updated. The customersizecode is updated.
Box 3: No The code is in C#.
In C#: When you perform comparisons with nullable types, if the value of one of the nullable types is null and the other is not, all comparisons evaluate to false except for != (not equal).
You are creating an integration that uses an Azure function to create records in the Common Data Service when leads are submitted from your company website.
You create and configure a Common Data Service application user.
You do not have administrator access to the Common Data Service environment you are using for access to Azure Active Directory. Company policy dictates that service accounts must be used for integrations, and integrations must not be granted privileges beyond what is needed.
You need to recommend actions that an administrator should perform to configure access for the Azure Function.
Which three actions should you perform? Each correct selection presents part of the solution.
NOTE: Each correct selection is worth one point.
A
Create an application registration in Azure Active Directory.
B
Assign the system administrator security role to the application user.
C
Assign the Power Platform administrator role to the application user in Azure Active Directory.
D
Create a new security role with the minimum required permissions and assign to the application user.
E
Grant the application delegated permissions to the Dynamics CRM API in Azure Active Directory.
F
Deploy Azure B2B guest permissions to the application user.
You need to implement the appropriate operations to meet the company's requirements.
What should you implement? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Reveal answer detailsClose answer details
Explanation
Box 1: Functions
Box 2: Actions
Box 3: Complex types Complex types are keyless named structured types consisting of a set of properties. Complex types are commonly used as property values in model entities, or as parameters or return values for operations.
Question 18
Multiple choice
You are configuring a Microsoft Power Virtual Agents chatbot to use the authenticate option for Microsoft Teams only.
You need to select the variables that will return information about the logged in user.
Which two variables should you use?
Each correct answer presents a complete solution.
NOTE: Each correct selection is worth one point.
A
AuthToken
B
UserDisplayName
C
UserlD
D
IsLoggedln
Reveal answer detailsClose answer details
Correct answersB, C
Explanation
Getting User Details To Use In Power Virtual Agents In Teams After enabling the Authentication, you will now have access to Two variables, bot.UserDisplayName bot.UserId
You are synchronizing company data from a SQL Server-based .NET application into a Common Data Service (CDS) environment.
The data is entered in both the SQL Server and CDS systems.
You have a program that includes the following code:
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
NOTE: Each correct selection is worth one point.
Reveal answer detailsClose answer details
Explanation
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.
A form that validates the date entered requires a custom button. The button must be available only under certain conditions.
You need to define the CommandDefinition in the RibbonDiffXML to meet the conditions for the button.
Which elements should you use? To answer, drag the appropriate elements to the correct conditions. Each element 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.
Reveal answer detailsClose answer details
Explanation
Box 1: Display Rule When configuring ribbon elements, you can define specific rules to control when the ribbon elements will display.
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.
Box 3: Enable Rule When configuring ribbon elements, you can define specific rules to control when the ribbon elements are enabled.
Question 21
Hotspot
HOTSPOT
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.
NOTE: Each correct selection is worth one point.
Reveal answer detailsClose answer details
Explanation
Box 1: Decimal Latitudes range from -90 to +90 (degrees), so DECIMAL is ok.
Decimal - Up to 10 decimal points of precision can be used for values between -100,000,000,000 and - 100,000,000,000 can be in this column. You can specify the level of precision and the maximum and minimum values.
Note: of-type-group - In some cases, we will need to configure a property that may be of different types (Eg: You need to configure a property with a Decimal or whole number CRM field in such cases you can use type-group).
of-type-group - Name of the type-group as defined in manifest.
The list of property types that can be created are Whole.None, TwoOptions, DateAndTime.DateOnly, DateAndTime.DateAndTime, Decimal, Enum, FP, Multiple, Currency, OptionSet, SingleLine.Email, SingleLine.Text, SingleLine.TextArea, SingleLine.URL, SingleLine.Ticker, SingleLine.Phone
Incorrect: * Whole.None - This option simply displays a number.
* Floating point No such option. There is FP - Up to 5 decimal points of precision can be used for values between - 100,000,000,000 and -100,000,000,000 can be in this column. You can specify the level of precision and the maximum and minimum values.
Box 2: Web API uses-feature indicates which feature the code components want to use.
Web API provides properties and methods to use Web API to create and manage records. Available for Model-driven apps, canvas apps, & portals. Available for Model-driven apps, canvas apps, & portals.
Incorrect: * Client is not an option. * Utility provides a container for useful methods. It is available for Model-driven apps.
The app must integrate with a number of on-premises and cloud solutions. No VPNs are in place.
You need to determine the method for each integration.
Which methods should you use? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Reveal answer detailsClose answer details
Explanation
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.
Box 2: Azure Service Bus Service Bus provides a secure and reliable communication channel between Dataverse runtime data and external, cloud-based line-of-business apps. This capability is especially useful in keeping disparate Dataverse systems or other Dataverse servers synchronized with business data changes.
Box 3: Azure Event hub Azure Event Hubs is a big data streaming platform and event ingestion service. It can receive and process millions of events per second. Data sent to an event hub can be transformed and stored by using any real-time analytics provider or batching/storage adapters.
Note: The most popular approaches in Dataverse involve webhooks, Azure messaging (Service Bus, Event Hubs), Azure Logic Apps, or Power Automate.
You are developing a Power Platform solution. You are modifying a business process flow. You have created a new radial knob for the Total amount value and have added the radial knob to the form.
The Total amount value must be entered at initiation before moving to the next step.
You need to configure the business process flow.
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.
Reveal answer detailsClose answer details
Explanation
Step 1: Add another step to the business process flow. Configure custom controls on a related entity form
In this version of the preview, the easiest way to add custom controls to a BPF is to begin by adding them to a form of the entity that the BPF stage is defined on.
In our example, the Budget Amount and Decision Maker steps of the Qualify stage are defined on the Lead entity. We begin by adding these fields to the Lead main form, and then configure the radial knob and flip switch custom controls for them.
Step 2: Open the business process in the Business Process Flow designer and select Activate/Update. Generate and export the BPF form
To generate the form for a business process you want to add custom controls to, open the business process in the BPF designer and click on Activate/Update.
Step 3: Copy custom control configurations to the business process flow FormXML for the related entity form. Copy custom control configurations to the BPF FormXML
To add custom controls to the BPF, we begin by copying the custom control configurations from the Lead entity form that we just exported. To do this, we begin by viewing the FormXML for the Lead entity form, which can be found in the 'customizations' file in the solution zip file.
Step 4: Import the solution into Dataverse. Import customizations into the CDS (aka Dataverse) environment
Now that we're done making our changes, save the customizations.xml document and add it to the managed solution zip file containing the BPF, replacing the file within it. Next, import these changes into your CDS environment by going to the Solutions tab in the PowerApps portal and click 'Import'.
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.
Reveal answer detailsClose answer details
Explanation
Box 1: Yes We see the code: If (!service.IsReady) { Console.WriteLine(service.LastCrmError); Etc.
Box 2: Yes We see ["SupressDuplicationDetection"] = false for account creation, but not for contact creation
Box 3: No
Question 25
Multiple choice
You are developing a new Power Platform app.
The checker fails with an error due to missing security roles.
You need to add security roles to the Power Apps Checker application user.
Which two security roles should you add? Each correct answer presents part of the solution.
NOTE: Each correct selection is worth one point.
A
Global Discover Service Role
B
Export Customizations
C
Environment Maker
D
Solution Checker
E
Resource Manager
Reveal answer detailsClose answer details
Correct answersB, D
Explanation
Before you are able to run it, make sure you have the proper Security Roles in your Microsoft Dataverse environment. Two of the required permissions are Export Customizations and Solution Checker. References: https://learntoinspire.ca/2020/01/18/leveraging-the-power-of-solution-checker/
Question 26
Hotspot
HOTSPOT
Fabrikam, Inc, has two divisions as shown in the Business Unit exhibit. (Click the Business Unit tab.)
Fabrikam Residences rents units short term to clients. Fabrikam Property Management deals with the maintenance of the units and manages the contractors who perform the maintenance. Clients and contractors are both stored in the Contact entity.
The manager of the Property Management business unit is a member of a Fabrikam business unit, which has the root security role as shown in the Security Role exhibit. (Click the Security Role tab.)
The manager cannot see the contact record shown in the Contact exhibit. (Click the Contact tab.)
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.
Reveal answer detailsClose answer details
Question 27
Single choice
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 once 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.
You are designing a one-way integration from the Microsoft Dataverse to another system.
You must use an Azure Function to update the other system. The integration must send only newly created records to the other system. The solution must support scenarios where a component of the integration is unavailable for more than a few seconds to avoid data loss.
You need to design the integration solution.
Solution: Register a webhook in the Dataverse instance that connects to the Azure Function. Register a step on the webhook which runs synchronously on the record's Create message and in the post-operation stage.
Does the solution meet the goal?
A
Yes
B
No
Reveal answer detailsClose answer details
Correct answerB
Explanation
Instead use asynchronous communication.
Question 28
Hotspot
HOTSPOT
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.
NOTE: Each correct selection is worth one point.
Reveal answer detailsClose answer details
Explanation
References: https://www.tpein.dk/?page_id=210
Question 29
Single choice
Note: This question is part of a series of questions that present the same scenario. Each question in the series contains a unique solution. Determine whether the solution meets the stated goals. Some question sets might have more than once 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 university implements Dynamics 365 Sales. Several departments use opportunity records to bid for funding for projects within their own departments. You configure the system to ensure that each
department can only work on their own records.
Employees in multiple departments often need to work together on an opportunity. Employees report that they are not able to see opportunities from other departments.
You need to ensure that employees from more than one department can work on the same opportunities when necessary.
Solution: Use position hierarchy security and define the two departments as positions.
Does the solution meet the goal?
A
Yes
B
No
Reveal answer detailsClose answer details
Correct answerA
Explanation
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.
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
1. Contoso maintains a Microsoft Excel workbook that lists all drugs they supply. 2. Pharmacies submit order requests through email. 3. All information at customer locations is handwritten by customer representatives. 4. Contoso uses Cerner, which is a medical industry application that uses a proprietary database. 5. Some accounts are referrals from other pharmacies. 6. Every pharmacy has its own Dynamics 365 Sales instance.
Requirements
General
Contoso wants to ensure that there is minimal custom code and custom connectors in the system.
Accounts
1. Ensure that the names of the pharmacies are synced between the accounting and the customer management systems. 2. Account numbers should be entered automatically into the pharmaceutical system that is in a Cerner database and kept in sync. 3. 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. 4. A trigger must be created that changes the Priority field to 1 in the Account record 10 days after an Account record is created. 5. A field named Priority_Trigger must be created to trigger the Priority field. 6. 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
1. UserA must be able to create and publish Power Apps apps. 2. UserB must be the owner of all the systems and be able to provide permissions and create all new environments. 3. UserC must be able to create apps connected to the systems and update the security roles and entities. 4. Pharmacy representatives must only be able to run the apps and access their own records. 5. Access to the accounting Power Apps app must be restricted to accounting team members. 6. End users must have minimum access to the required systems. 7. Only supervisors must be able to view phone numbers in the Accounts form. 8. Developers must be able to create new apps for all users. 9. Sales users must only have access to their own records.
Reporting
Pharmacy orders must be displayed in four graphs as follows:
1. Annual revenue over $100,000 2. Annual revenues under $100,000 3. Research facilities 4. Hospitals
The graphs must be interactive, and users must be able to drill down on any dimension.
Customizations
1. Ensure that notifications are sent to the sales team when a lead is added by using Slack. 2. Ensure that leads have a review stage added to the sales process. 3. Doctors must be manually added to a custom entity named Doctor if the doctor is not listed. 4. Refill dates for customer prescriptions should be automatically determined and a notification should be sent to the customer. 5. Fields for the doctor's name and phone number must be displayed in the customer record. 6. The doctor entered on the customer's record must be validated against doctors that exist in the system. 7. The new solution will be sold to other pharmacies for use. The application must not allow changes to be made. 8. The solution must be error free so that when it is installed in other environments it does not cause issues.
Mobile app
1. A custom mobile app must be created to allow salespeople to add or search by pharmacy name. 2. Pharmacy records must be uniquely identified by pharmacy name, address, contact name, and phone number. 3. When a pharmacy is added by using the mobile app, the phone number must be validated to be all digits.
Question 30
Testlet 3Single choice
You need to create an application to deploy to other pharmacies.
What should you do?
A
Navigate to Customize the System and export everything to a managed solution.
You need to implement visual hints in the custom connector.
What should you do? Each correct answer presents a complete solution.
NOTE: Each correct selection is worth one point.
A
Extend the Open API definition of the Web API for the EnvironmentName parameter.
B
In the custom connector, update the description for the Datald parameter.
C
In the custom connector, update the name of the policy template.
D
Extend the Open API definition of the Web API for the Datald parameter
Reveal answer detailsClose answer details
Correct answersA, B
Question 32
Single choice
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 once 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.
You are designing a one-way integration from the Microsoft Dataverse to another system.
You must use an Azure Function to update the other system. The integration must send only newly created records to the other system. The solution must support scenarios where a component of the integration is unavailable for more than a few seconds to avoid data loss.
You need to design the integration solution.
Solution: Register a service endpoint in the Dataverse instance that connects to an Azure Service Bus queue.
Register a step at the endpoint which runs asynchronously on the record's Create message and in the post-operation stage.
Configure the Azure Function to process records as they are added to the queue.
Does the solution meet the goal?
A
Yes
B
No
Reveal answer detailsClose answer details
Correct answerB
Explanation
Need a plug-in or a custom workflow.
Note: 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.
You manage two Microsoft Power Platform solutions.
Solution A contains a custom text column named custom_text. Solution B contains a view that references the custom_text column.
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.
A travel agency has a Dynamics 365 Customer Engagement.
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.
You need to register the plug-in to meet the requirements.
Which value should you apply for each parameter? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Reveal answer detailsClose answer details
Explanation
Box 1: associate
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: country
Box 4: synchronous
Question 35
Hotspot
HOTSPOT
You are creating an application using the Microsoft Dataverse SDK for .NET.
A record must be created by using the column types of lookup and choices.
You need to set the record's column values.
Which attribute type should you use? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Reveal answer detailsClose answer details
Explanation
Box 1: EntityReference Lookup
Associate table rows on create You can associate any new row with an existing row when you create it in the same way you would when updating it. You must use an EntityReference to set the value of a lookup column (attribute).
This lookup assignment is the same for both early and late-bound styles.
//Use Entity class with entity logical name var account = new Entity("account");
// set attribute values //string primary name account["name"] = "Sample Account";
Guid primarycontactid = new Guid("e6fa5509-2582-e811-a95e-000d3af40ae7");
account["primarycontactid"] = new EntityReference("contact", primarycontactid);
//Create the account Guid accountid = svc.Create(account);
Box 2: OptionSetValueCollection Choices
Dataverse, Choices columns Customizers can define a column that allows selection of multiple options. The MultiSelectPicklistAttributeMetadata class defines a column type that inherits from the EnumAttributeMetadata class. Just like the PicklistAttributeMetadata class, this column includes an OptionSetMetadata.Options property that contains the valid options for the column. The difference is that the values you get or set are an *OptionSetValueCollection* type that contains an array of integers representing the selected options. Formatted values for this column are a semi-colon separated string containing the labels of the selected options.
Note: Create choices with code The easiest way to create choices is to use the column editor in the customization tools. More information: How to create and edit columns
But if you need to automate creation of this kind of column you can use C# code like the following with the SDK for .NET that creates choices to allow choices of outdoor activities to the contact table. More information: Create columns private const int_languageCode = 1033; //English
MultiSelectPicklistAttributeMetadata outDoorActivitiesAttribute = new MultiSelectPicklistAttributeMetadata() { SchemaName = "sample_OutdoorActivities", LogicalName = "sample_outdooractivities", DisplayName = new Label("Outdoor activities", _languageCode), RequiredLevel = new AttributeRequiredLevelManagedProperty(AttributeRequiredLevel.None), Description = new Label("Outdoor activities that the contact likes.", _languageCode), OptionSet = new OptionSetMetadata() { IsGlobal = false, OptionSetType = OptionSetType.Picklist, // Picklist Options = { new OptionMetadata(new Label("Swimming",_languageCode),1), new OptionMetadata(new Label("Hiking",_languageCode),2), new OptionMetadata(new Label("Mountain Climbing",_languageCode),3), new OptionMetadata(new Label("Fishing",_languageCode),4), new OptionMetadata(new Label("Hunting",_languageCode),5), new OptionMetadata(new Label("Running",_languageCode),6), new OptionMetadata(new Label("Boating",_languageCode),7), new OptionMetadata(new Label("Skiing",_languageCode),8), new OptionMetadata(new Label("Camping",_languageCode),9)} } };
var response = (CreateAttributeResponse)service.Execute(createAttributeRequest);
Question 36
Drag & drop
DRAG DROP
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
Reveal answer detailsClose answer details
Explanation
Step 1: Create a new component in the department app. First create a new component.
Step 2: Create a connection to the engineering issues list and retrieve the total number of critical issues Retrieve the required data.
Step 3: Create an output parameter and set the value of the parameter to the total number of critical issues.
Custom properties A component can receive input values and emit data if you create one or more custom properties. Output property is used to emit data or component state. For example, the Selected property on a Gallery control is an output property. When you create an output property, you can determine what other controls can refer to the component state.
Step 4: Import the counter component in the other apps from the first department app Use the new component in your apps.
A manufacturing company uses a Common Data Service (CDS) environment to manage their parts inventory across two warehouses modeled as business units and named WH1 and WH2.
Data from the two warehouses is processed separately for each part that has its inventory quantities updates.
The company must automate this process, pushing inventory updates from orders submitted to the warehouses.
You need to build the automation using Power Automate flows against the CDS database. You must achieve this goal by using the least amount of administrative effort.
Which flow or flows should you recommend?
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.
Reveal answer detailsClose answer details
Correct answerH
Explanation
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.
You create a Power Automate flow that retrieves data from a proprietary database.
You need to ensure that the flow works for other users.
Which two actions should you perform? Each correct answer presents part of the solution.
NOTE: Each correct selection is worth one point.
A
Share a view with users.
B
Share the custom connector with users.
C
Share the flow with users.
D
Share the environment by giving permissions to the users.
Reveal answer detailsClose answer details
Correct answersB, C
Explanation
Share the flow and the custom connector with users.
B: Share a custom connector in your organization. If you have a custom connector, you might want to enable other people to use it. People within your organization can use the custom connector just like they use other Microsoft-managed connectors.
A company must copy customer account data changes from a Common Data Service (CDS) instance into an external system.
Azure Storage Queues are used to pass the changes from CDS to the external system.
You have the following code. (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.
Reveal answer detailsClose answer details
Question 40
Multiple choice
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.
User1 and User2 use a form named F1 to enter account data. Both users have the same security role, SR1, in the same business unit.
User1 has a business rule to make the main phone mandatory if the relationship type is Reseller. User2 must occasionally create records of the Reseller type without having the reseller's phone number and is blocked by User1's business rule.
You need to ensure that User2 can enter reseller data into the system.
Which three actions should 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 order you select.
Reveal answer detailsClose answer details
Question 42
Hotspot
HOTSPOT
You are developing a model-driven app for the purchasing department of an organization. You provision a new test environment and a security role. You select users to test the apps and assign the users to a security group named TestSG.
If the tests succeed, a manager will perform additional testing in the production environment and then publish the app for the organization's purchasing department.
You need to ensure that the test and production environments are configured correctly.
What should you do? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Reveal answer detailsClose answer details
Explanation
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.
Box 2: Assign the manager the app security role.
Box 3: Set the production environment security group to TestSG
Box 4: Add all users in the department to the TestSG security group.
You need to complete a Power Apps component framework (PCF) control.
How should you define the order in the manifest? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Reveal answer detailsClose answer details
Explanation
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.
Question 44
Single choice
You are developing an app that uses Common Data Service.
You must integrate Common Data Service with a new web application. You must allow the new web application to display data from Common Data Service.
You build a single-page web application using the Web API.
You need to authenticate your app using OAuth.
What should you use?
A
Windows Communication Foundation (WCF)
B
Cross-Origin Resource Sharing (CORS)
C
Microsoft Authentication Library (MSAL)
D
Kerberos authentication
E
Active Directory Authentication Library (ADAL)
Reveal answer detailsClose answer details
Correct answerB
Explanation
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.
A company creates a custom connector to use in a flow named Search Company.
When this custom connector is used, requests must be redirected to a different endpoint at runtime.
You need to apply a policy to the custom connector to route calls to a different endpoint.
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.
Reveal answer detailsClose answer details
Explanation
Step 1: Select the Search Company custom connector in the Microsoft Flow portal under Custom connectors and select edit. Login to the Microsoft Flow portal, and on right top corner click on the settings icon and then click on custom connectors option.
Step 2: Select the Definition tab Policy template are available only for custom connectors. To use a policy template, open Power Automate portal and either create a new custom connector or edit an existing one.
In the custom connector wizard, select the Definition page. From the Definition page, select New Policy.Etc.
Step 3: Select New Policy
Question 46
Drag & drop
DRAG DROP
You create a new canvas app.
You update a test case and must test the app in a separate browser.
You need to test the app by using Test Studio.
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.
Reveal answer detailsClose answer details
Explanation
Step 1: Select a test suite
Step 2: Select Copy play link
Playing tests in a browser You can copy a link to play a test in separate browser outside Test Studio. It helps integrate your tests in a continuous build and release pipeline such as Azure DevOps.
The play link for the selected test is persisted. It doesn't change for the test suite or test case. You can update your tests without the need to modify build and release processes.
To play tests in your browser:
1. Select a test suite or test case in the right pane. 2. Select Copy play link. 3. You're prompted to publish your tests if there are any unpublished changes. 4. You can select to skip the publish process and copy the play link. New test changes don't play if you skip. 5. Open a browser and paste the URL into the address bar to play the test. 6. View your test playing back.
Step 3: Publish the test
Step 4: Open a browser and paste the URL for the app inte the address bar
A customer wants to design a complex business process flow that includes six custom entities and four stages for each entity. One of the stages will have 15 steps.
You need to explain the flaw in this design to the customer.
What is the flaw in this design?
A
The maximum number of custom entities has been exceeded.
B
The maximum number of steps for a stage has been exceeded.
C
The maximum number of stages for an entity has been exceeded.
D
The minimum number of stages for an entity has not been met.
E
The minimum number of steps for a stage has not been met.
Reveal answer detailsClose answer details
Correct answerA
Explanation
Maximum number of processes, stages, and steps: To ensure acceptable performance and the usability of the user interface, there are some limitations you need to be aware of when you plan to use business process flows: 1. Multi-entity processes can contain no more than five entities. There can be no more than 10 activated business process flow processes per entity. 2. Each process can contain no more than 30 stages.
You develop a model-driven app to include a form containing several columns. Two groups of users. named Group1 and Group2 will access the form.
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.
What should you do?
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.
Reveal answer detailsClose answer details
Correct answerD
Explanation
There are two steps to set up security permissions for a column.
1. Enable column security on one or more columns for a given table. 2. Associate one more existing security profiles, or create one or more new security profiles to grant the appropriate access to specific users or teams.
You are developing an app for a sales team to record contact details in their Common Data Service (CDS) database.
The app must handle loss of network and save the data to CDS when reconnected.
The main screen of the app has a form to collect contact data and a button. The OnSelect property for the button has the following expression:
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
NOTE: Each correct selection is worth one point.
Reveal answer detailsClose answer details
Explanation
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.
Box 2: No
Box 3: No
Box 4: Yes
Question 50
Drag & drop
DRAG DROP
A company is developing a Microsoft Dataverse plug-in.
The plug-in must create a follow-up task for a new account.
You add the code that receives context(IPluginExecutionContext) and service(IOrganizationService).
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.
Reveal answer detailsClose answer details
Explanation
Step 1: Entity followuptask = new Entity("task"); Followuptask["subject"] = "Send e-mail to the new customer"; Followuptask["regardingobjectid"] = account.ToEntityReference();
The Entity.ToEntityReference method gets an entity reference for this entity instance.
Example
RetrieveRequest request = new RetrieveRequest { Target = account.ToEntityReference(), ColumnSet = new ColumnSet(), RelatedEntitiesQuery = new RelationshipQueryCollection() };
Incorrect: * Entity followuptask = new Entity("task"); Followuptask["subject"] = "Send e-mail to the new customer"; Followuptask["regardingobjectid"] = account;
Step 2: Entity account = (Entity)context.InputParameters["Target"]; Setup the input parameters.
Example: The plug-in will create a task activity that will remind the creator of the account to follow up one week later.
// Create a task activity to follow up with the account customer in 7 days. Entity followup = new Entity("task");
followup["subject"] = "Send e-mail to the new customer."; followup["description"] = "Follow up with the customer. Check if there are any new issues that need resolution."; followup["scheduledstart"] = DateTime.Now.AddDays(7); followup["scheduledend"] = DateTime.Now.AddDays(7); followup["category"] = context.PrimaryEntityName;
// Refer to the account in the task activity. if (context.OutputParameters.Contains("id")) { Guid regardingobjectid = new Guid(context.OutputParameters["id"].ToString()); string regardingobjectidType = "account";
followup["regardingobjectid"] = new EntityReference(regardingobjectidType, regardingobjectid); }
// Create the task in Microsoft Dynamics CRM. tracingService.Trace("FollowupPlugin: Creating the task activity."); service.Create(followup);
Step 3: service.Create(followup); Create the task.
A company uses the Data Export Service (DCS) to refresh their Azure SQL Data Warehouse instance. The data warehouse is used for historical trend analysis and forecasting.
The refresh process from the Common Data Service (COS! environment lo the data warehouse has errors. Users report that data is missing.
A CDS lest environment that contains DES is available to troubleshoot the import outside of the production environment. You create a new database for testing.
You need to configure the lest environment to point to the new database.
What should you create first lo access the database?
A
A new secret In Azure Key Vault
B
A new user in the SQL database
C
A new export profile in CDS test
D
A new application registration
Reveal answer detailsClose answer details
Correct answerA
Explanation
Because this service requires access to an external Microsoft Azure SQL Database from Dynamics 365 (online), a number of prerequisites must be satisfied before you can successfully access this service including:
Global / Tenant Admin access, or an Azure Key Vault must be provisioned and the setup user must have permissions on Secrets.
You need to develop a Power Apps Component Framework (PCF) component for a company.
You must follow Microsoft's application lifecycle management (ALM) process for code components.
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.
Reveal answer detailsClose answer details
Question 53
Hotspot
HOTSPOT
The following code updates the customer size code choice column on the Account table if the number of employees column value is greater than 100. Line numbering is provided for information only.
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
Reveal answer detailsClose answer details
Question 54
Single choice
The communication department for a company plans to add a publicly accessible survey page to the company's public website.
You must add the new survey page to the company's public website and capture data from the page to a Common Data Service environment.
Explicit user credentials must not be required to write survey data to Common Data Service.
You need to implement authentication.
Which authentication mechanism should you implement?
A
Microsoft 365
B
X.509 certificate
C
Azure AD Conditional Access
D
Claims-based
Reveal answer detailsClose answer details
Correct answerC
Explanation
With Azure AD Conditional Access the users are authenticated by Azure Active Directory (Azure AD).
What should you use? To answer, drag the appropriate security options to the correct scenarios. Each security option 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.
Reveal answer detailsClose answer details
Explanation
Box 1: Conditional access You can limit access to users with block access by location to reduce unauthorized access. By using Conditional Access policies, you can apply the right access controls when needed to help keep your organization secure and stay out of your user's way when not needed. Conditional Access analyses signals such as user, device, and location to automate decisions and enforce organizational access policies for resources.
Box 2: DLP policy DLP policies enforce rules for which connectors can be used together by classifying connectors as either Business or Non-Business. If you put a connector in the Business group, it can only be used with other connectors from that group in any given app or flow. Sometimes you might want to block the usage of certain connectors altogether by classifying them as Blocked.
Box 3: Exfiltration blocking Email exfiltration controls for connectors Microsoft Exchange enables admins to disable email autoforwards and autoreplies to remote domains for external recipients. Exchange does this by using message-type headers, such as Auto Forward received from Outlook and Outlook on web clients.
Case study
Case Study 3
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
1. Contoso maintains a Microsoft Excel workbook that lists all drugs they supply. 2. Pharmacies submit order requests through email. 3. All information at customer locations is handwritten by customer representatives. 4. Contoso uses Cerner, which is a medical industry application that uses a proprietary database. 5. Some accounts are referrals from other pharmacies. 6. Every pharmacy has its own Dynamics 365 Sales instance.
Requirements
General
Contoso wants to ensure that there is minimal custom code and custom connectors in the system.
Accounts
1. Ensure that the names of the pharmacies are synced between the accounting and the customer management systems. 2. Account numbers should be entered automatically into the pharmaceutical system that is in a Cerner database and kept in sync. 3. 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. 4. A trigger must be created that changes the Priority field to 1 in the Account record 10 days after an Account record is created. 5. A field named Priority_Trigger must be created to trigger the Priority field. 6. 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
1. UserA must be able to create and publish Power Apps apps. 2. UserB must be the owner of all the systems and be able to provide permissions and create all new environments. 3. UserC must be able to create apps connected to the systems and update the security roles and entities. 4. Pharmacy representatives must only be able to run the apps and access their own records. 5. Access to the accounting Power Apps app must be restricted to accounting team members. 6. End users must have minimum access to the required systems. 7. Only supervisors must be able to view phone numbers in the Accounts form. 8. Developers must be able to create new apps for all users. 9. Sales users must only have access to their own records.
Reporting
Pharmacy orders must be displayed in four graphs as follows:
1. Annual revenue over $100,000 2. Annual revenues under $100,000 3. Research facilities 4. Hospitals
The graphs must be interactive, and users must be able to drill down on any dimension.
Customizations
1. Ensure that notifications are sent to the sales team when a lead is added by using Slack. 2. Ensure that leads have a review stage added to the sales process. 3. Doctors must be manually added to a custom entity named Doctor if the doctor is not listed. 4. Refill dates for customer prescriptions should be automatically determined and a notification should be sent to the customer. 5. Fields for the doctor's name and phone number must be displayed in the customer record. 6. The doctor entered on the customer's record must be validated against doctors that exist in the system. 7. The new solution will be sold to other pharmacies for use. The application must not allow changes to be made. 8. The solution must be error free so that when it is installed in other environments it does not cause issues.
Mobile app
1. A custom mobile app must be created to allow salespeople to add or search by pharmacy name. 2. Pharmacy records must be uniquely identified by pharmacy name, address, contact name, and phone number. 3. When a pharmacy is added by using the mobile app, the phone number must be validated to be all digits.
Question 56
Testlet 3Hotspot
HOTSPOT
You need to configure the fields with the appropriate type.
Which type should you use? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Reveal answer detailsClose answer details
Explanation
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.
Technicians for a company use a model-driven app on their phones to record information about service visits. Users do not have permissions to the Power Apps maker portal to create or update apps.
Technicians report issues with the model-driven app. You are unable to reproduce the issues in a development environment.
You need to provide instructions to the technicians to gather more details about the errors.
Which four actions should you recommend be performed in sequence? To answer, move the appropriate actions from the list of actions to the answer area and arrange them in the correct order.
Reveal answer detailsClose answer details
Explanation
Step 1: Open the app in a browser on the phone.
Step 2: Add the following text to end of the URL for the app: "&monitor=true" You can start a Monitor session from a model-driven app. To do this, append &monitor=true to the end of the URL in the browser. This displays the Monitor command on the model-driven app global command bar. Select Monitor to open a monitoring session in a new tab.
Step 3: Perform the steps to generate the errors and download the results from Monitor.
Step 4: Open the application in a browser on a laptop computer when they return to the office
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.
Reveal answer detailsClose answer details
Correct answersA, D
Explanation
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.
A company requires a plug-in that makes multiple requests to an external web service. The plug-in must not time out when the web service has issues or is slow to respond.
You need to create the plug-in.
What should you do?
A
Send requests to use multiple threads.
B
Register the plug-in to run synchronously.
C
Register the plug-in step once for each web service request.
D
Set the HTTP connection timeout value explicitly to limit how long each connection can remain open.
Reveal answer detailsClose answer details
Correct answerD
Explanation
Correct: * Set the HTTP connection KeepAlive property to false.
* Set the HTTP connection timeout value explicitly to limit how long each connection can remain open
Incorrect: * Assign the IOrganizationService object to a member variable. * Register the plug-in step once for each web service request. * Register the plug-in to run synchronously. * Send requests to use multiple threads
Note: * Set the HTTP connection KeepAlive property to false Set KeepAlive to false when interacting with external hosts in a plug-in Category: Performance Impact potential: High
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. If your specific external service would benefit from using persistent sessions for performance reasons, actively send a KeepAlive at an interval of half the idle timeout (30 seconds) to keep the connection from closing.
Problematic patterns In order to override the default value of KeepAlive for the non-WCF interactions, the approach should be taken to leverage HttpWebRequest to perform the interactions with the web server, but first setting the KeepAlive property to false.
* Set the HTTP connection timeout value explicitly to limit how long each connection can remain open
Power Apps Dataverse, Set Timeout when making external calls in a plug-in Category: Performance
Impact potential: High
Symptoms If a plug-in makes external web requests that fail to respond quickly, the plug-in will wait for the full default timeout period before failing. This duration may cause a long transaction that can effect other operations. 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 The default timeout value for .Net Http clients is 100 seconds, just 20 seconds short of the time available for the plug-in to complete. It is best to establish an expected baseline time that a calling service will respond. The longer it exceeds this normal response time, the higher the probability it will ultimately fail. As a performance best practice, it is best to fail quickly rather than allow the default timeout period to expire. You should control the period that your call to the external service will wait.
The timeout value you should set will depend on the service. For example, if you can monitor the performance of the service you may determine a duration where 99.999% of requests succeed and set your timeout period to that duration with a few seconds buffer. This will prevent the occasional outliers from having an inordinate impact on the performance of your plug-in.
If you are using System.Net.Http.HttpClient Class, you can set the Timeout value explicitly, as shown in this example setting the timeout to 15 seconds.
You are testing the deployment of a model-driven app. Microsoft Entra ID groups are used exclusively to manage environment-and team-level permissions.
Users encounter several access-related issues that prevent them from testing the app.
You need to select the component to use to resolve each issue by using the principle of least privilege.
What should you assign to resolve each issue? To answer, move the appropriate resolutions to the correct issues. You may use each resolution 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.
Reveal answer detailsClose answer details
Question 61
Single choice
You are creating a model-driven app. You create JavaScript code to display a message when a record is saved.
You need to configure the associated JavaScript web resource name when adding the event handler to the form.
Which field should you use?
A
Event Type
B
Component
C
Function
D
Library
Reveal answer detailsClose answer details
Correct answerD
Explanation
Configure an event handler The following procedure describes how to configure an event handler for a form.
1. Sign in to Power Apps, open the table that you want, and then open the form in the form designer where you want to configure an event handler. 2. Depending on the library state, choose from the following... 3. On the Events tab, select Event Handler and complete the following information to configure the form event, and then select Done:
* Event Type: On Save: When a record is saved after a form field change. On Load: When the form opens.
You manage two Microsoft Power Platform managed solutions.
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.
Solution A must be imported before Solution B.
You need to determine what state the components are in after importing the solutions.
Which effect does each component exhibit? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Reveal answer detailsClose answer details
Question 63
Drag & drop
DRAG DROP
You are designing new functionality for an existing model-driven app.
A field must display multiple selections to the user, enabling the user to select a value.
You need to determine which column type can support the required scenarios.
Which column type should you use? To answer, drag the appropriate column types to the correct scenarios. Each column 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.
NOTE: Each correct selection is worth one point.
Reveal answer detailsClose answer details
Explanation
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.
Example: Filter(IceCream, OnOrder > 0) - Returns records where OnOrder is greater than zero.
Box 2: Global choice and Lookup
Box 3: Global choice A choice column provides a list of values for users to pick from. They help streamline data entry in turn ensuring clean data. There are two types - local and global. Local choices can are local to the table and column that they are created for. They cannot be reused on other tables. For example, a list of statuses for an application may not apply anywhere else (e.g. Submitted, In Review, Approved, Rejected). On the other hand, global choices are available across all tables and columns allowing them to be reused.
JavaScript must be used to implement additional business logic in the business process flow.
You need to evaluate the JavaScript code.
What is the result of running each code segment? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Correct Answer:
Explanation
Explanation/Reference:
Box 1: Hides the control in the body of the form. The Client API form context (formContext) provides a reference to the form or to an item on the form, such as, a quick view control or a row in an editable grid, against which the current code is executed.
setVisible sets a value that indicates whether the control is visible.
Box 2: Add an event handler to enable a function named TestFunction to run when the business process flow stage changes.
addOnStageChange adds a function as an event handler for the OnStageChange event so that it will be called when the business process flow stage changes.
Case Study 5
Case Study Questions
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.
Requirements. Interview Scheduling
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.
1. The control must display the current time in each team member's local time. 2. The control must be bound so that it minimizes the amount of code that must be written. 3. 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.
Requirements. Historical Information Tracking
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.
You must be able to determine the following information about a candidate: - The number of interviews in the past two years and whether team members provided recommendations - The number of hiring manager referrals and employee referrals in the past two years - Whether the individual has any of the 12 designations or certifications that the company considers significant Only a single referral can be made per job application. The system must be able to support multiple referrals for a candidate. The system must track referrals even if an application is not completed.
Requirements. Historical Information Scoring
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.
Requirements. Design Guidelines
The following design guidelines must be followed:
1. Schema changes must be made using the method requiring the least amount of storage to meet the requirement. 2. Out-of-the-box functionality must be used when possible. 3. Any code required to calculate scores must be able to be run from a single point. 4. Email notifications need to be kept to a minimum.
Issues
1. 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. 2. The system does not support associating designations and certifications with candidates. 3. 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. 4. Interviewers report that they do not receive email notifications when interview records are created for an existing person of interest.
QUESTION 2
You need to resolve the issue with the new command button.
What should you do?
A.
Pass ExecutionContext to the function in the action definition.
B.
Pass the value SelectedControl to the function in the action definition.
C.
Select the Pass execution context as first parameter option on the event registration form.
D.
Pass the value PrimaryControl to the function in the action definition.
Correct Answer: C
Explanation
Explanation/Reference:
Requirements. Historical Information Scoring 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.
The execution context defines the event context in which your code executes.
The execution context defines the event context in which your code executes. The execution context is passed when an event occurs on a form or grid, which you can use it in your event handler to perform various tasks such as determine formContext or gridContext, or manage the save event.
The execution context is passed in one of the following ways:
1. Defining event handlers using UI: The execution context is an optional parameter that can be passed to a JavaScript library function through an event handler. Use the Pass execution context as first parameter option in the Handler Properties dialog while specify the name of the function to pass the event execution context. The execution context is the first parameter passed to a function. 2. Defining event handlers using code: The execution context is automatically passed as the first parameter to functions set using code.
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
1. Contoso maintains a Microsoft Excel workbook that lists all drugs they supply. 2. Pharmacies submit order requests through email. 3. All information at customer locations is handwritten by customer representatives. 4. Contoso uses Cerner, which is a medical industry application that uses a proprietary database. 5. Some accounts are referrals from other pharmacies. 6. Every pharmacy has its own Dynamics 365 Sales instance.
Requirements
General
Contoso wants to ensure that there is minimal custom code and custom connectors in the system.
Accounts
1. Ensure that the names of the pharmacies are synced between the accounting and the customer management systems. 2. Account numbers should be entered automatically into the pharmaceutical system that is in a Cerner database and kept in sync. 3. 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. 4. A trigger must be created that changes the Priority field to 1 in the Account record 10 days after an Account record is created. 5. A field named Priority_Trigger must be created to trigger the Priority field. 6. 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
1. UserA must be able to create and publish Power Apps apps. 2. UserB must be the owner of all the systems and be able to provide permissions and create all new environments. 3. UserC must be able to create apps connected to the systems and update the security roles and entities. 4. Pharmacy representatives must only be able to run the apps and access their own records. 5. Access to the accounting Power Apps app must be restricted to accounting team members. 6. End users must have minimum access to the required systems. 7. Only supervisors must be able to view phone numbers in the Accounts form. 8. Developers must be able to create new apps for all users. 9. Sales users must only have access to their own records.
Reporting
Pharmacy orders must be displayed in four graphs as follows:
1. Annual revenue over $100,000 2. Annual revenues under $100,000 3. Research facilities 4. Hospitals
The graphs must be interactive, and users must be able to drill down on any dimension.
Customizations
1. Ensure that notifications are sent to the sales team when a lead is added by using Slack. 2. Ensure that leads have a review stage added to the sales process. 3. Doctors must be manually added to a custom entity named Doctor if the doctor is not listed. 4. Refill dates for customer prescriptions should be automatically determined and a notification should be sent to the customer. 5. Fields for the doctor's name and phone number must be displayed in the customer record. 6. The doctor entered on the customer's record must be validated against doctors that exist in the system. 7. The new solution will be sold to other pharmacies for use. The application must not allow changes to be made. 8. The solution must be error free so that when it is installed in other environments it does not cause issues.
Mobile app
1. A custom mobile app must be created to allow salespeople to add or search by pharmacy name. 2. Pharmacy records must be uniquely identified by pharmacy name, address, contact name, and phone number. 3. When a pharmacy is added by using the mobile app, the phone number must be validated to be all digits.
QUESTION 3
DRAG DROP
You need to select a process to create each function.
Which process should you use? To answer, drag the appropriate processes to the correct functions. Each process 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.
Correct Answer:
Explanation
Explanation/Reference:
Box 1: Microsoft flow Using Microsoft Flow, you can automatically post to Slack when an event happens in Dynamics 365, enabling similar functionality that is available with the Microsoft Yammer integration with third-party collaboration tools.
Box 2: Workflow Box 3: Business process flow A business process flow is composed of Stages, and within each stage there are Steps to complete which are fields. In the business process flow heading, a user can see which stage they are at in the process, and which steps they need to complete before they proceed in the process.
Business process flows enable you to require users to complete certain steps before completing the process and if needed you can also allow users to jump stages.
QUESTION 4
HOTSPOT
You are configuring two command buttons on a form.
The form must display the buttons only if conditions meet a pre-defined criteria.
You need to create rules for the form.
Which rule types should you use?
To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Correct Answer:
Explanation
Explanation/Reference:
Box 1: PageRule Website link to the current form
Page Rule Uses the <PageRule> element. This type of rule checks the URL of the page being displayed. It returns true if the Address matches
Incorrect: * Value Rule Uses the <ValueRule> element. Use this rule to check the value of a specific column in the record being displayed in the form. You must specify the Field and the Value to check.
* Entity Rule Uses the <EntityRule> element. EntityRule allow for evaluation of the current table. This is useful when you define custom actions that apply to the table template instead of for specific tables. For example, you may want to add a ribbon element to all tables except for several specific tables. It is easier to define the custom action for the table template that applies to all tables and then use an EntityRule to filter out those that should be excluded.
The EntityRule also includes an optional context parameter to specify whether the table is being displayed in the form or a list (HomePageGrid).
Box 2: ValueRule Sum of two form fields
Value Rule Uses the <ValueRule> element. Use this rule to check the value of a specific column in the record being displayed in the form. You must specify the Field and the Value to check.
Incorrect: * Selection Count Rule Uses the <SelectionCountRule> element. Use this kind of rule with a ribbon displayed for a list to enable a button when specific maximum and minimum numbers of records in the grid are selected. For example, if your button merges records, you should make sure at least two records are selected before enabling the ribbon control.
* Custom Rule
Uses the <CustomRule> element. Use this kind of rule to call a function in a JavaScript web resource that returns a Promise (Unified Interface) or boolean (Unified Interface and web client).
You are developing a Power Platform solution for a medical practice. You create a custom table named Doctors to record details about the doctors who work at the medical practice.
You must be able to attach a PDF copy of a doctor's medical license to the row for each doctor.
You need to configure the table.
What should you do?
A.
Create a Power Automate flow to add attachments.
B.
Navigate to Table options and enable attachments.
C.
Navigate to Column options and enable attachments.
D.
Create relationships between the Doctor table and the Notes table.
Correct Answer: C
Explanation
Explanation/Reference:
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.
A company delivers packages to businesses and consumers. A custom entity named Package captures the package details.
You need to add the following sets of fields to the entity and leverage the built-in operations of the platform:
A set of fields to represent the package length, width, depth, and weight. The maximum value for any dimension is 100 centimeters. A set of fields for time-sensitive attributes to calculate the efficiency of a delivery based on when the delivery is entered in the system and the existing custom fields: Pickup time and Delivery time.
Which constructs should you use? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Correct Answer:
Explanation
Explanation/Reference:
Box 1: DIFFINMINUTES(Created on, Delivery Time) DIFFINMINUTES (date and time, date and time) returns the difference in minutes between two Date and Time columns.
Note: This question is part of a series of questions that present the same scenario. Each question in the series contains a unique solution. Determine whether the solution meets 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 university has implemented Dynamics 365 Customer Engagement. Several departments use opportunity records to bid for funding for projects within their own departments.
Each department's opportunities are not visible to other departments. However, there are times when two departments need to work together on an opportunity.
You need to configure the security to meet the business requirements.
Solution: Share the individual opportunity that member of one department are working on with all members of the second department, and give those members the appropriate permissions.
Does the solution meet the goal?
A.
Yes
B.
No
Correct Answer: B
QUESTION 8
You are developing a Power Apps app to manage records in the Account table in Microsoft Dataverse.
You must configure a Web API request to retrieve changes from the table.
You need to configure the preference header for the API request.
What should you include in the request header?
A.
odata.context
B.
odata.deltaLink
C.
odata.track-changes
D.
odata.nextLink
Correct Answer: B
Explanation
Explanation/Reference:
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.
Adventure Works Cycles wants to replace their paper-based bicycle manufacturing business with an efficient paperless solution. The company has one manufacturing plant in Seattle that produces bicycle parts, assembles bicycles, and distributes finished bicycles to the Pacific Northwest.
Adventure Works Cycles has a retail location that performs bicycle repair and warranty repair work. The company has six maintenance vans that repair bicycles at various events and residences.
Adventure Works Cycles recently deployed Dynamics 365 Finance and Dynamics 365 Manufacturing in a Microsoft-hosted environment for financials and manufacturing. The company plans to leverage the Microsoft Power Platform to migrate all of their distribution and retail workloads to Dynamics 365 Unified Operations.
The customer uses Dynamics 365 Sales. Dynamics 365 Customer Service and Dynamics 365 Field Service.
Retail store information
1. Adventure Works Cycle has one legal entity, four warehouses, and six field service technicians. 2. Warehouse counting is performed manually by using a counting journal. All warehouse boxes and items are barcoded. 3. The Adventure Works Cycles retail location performs bicycle inspections and performance tune-ups. 4. Technicians use paper forms to document the bicycle inspection performed before a tune-up and any additional work performed on the bicycle. 5. Adventure Works Cycles uses a Power Apps app for local bike fairs to attract new customers. 6. A canvas app is being developed to capture customer information when customers check in at the retail location. The app has the following features: - Customer selects yes or no if they are on the mailing list. - Customer selects the amount of times they have visited the store. - Customer selects the type of service needed. - The search result returns all last name records that match the search term.
Technology
Requirements
1. A plug-in for Dynamics 365 Sales automatically calculated the total billed time from all activities on a particular customer account, including sales representative visits, phone calls, email correspondence, and repair time compared with hours spent. 2. A shipping API displays shipping rates and tracking information on sales orders. The contract allows for 3,000 calls per month. 3. Ecommerce orders are processed in batch daily by using a manual import of sales orders in Dynamics 365 Finance. 4. Microsoft Teams is used for all collaboration. 5. All testing and problem diagnostics are performed in a copy of the production environment. 6. Customer satisfaction surveys are recorded with Microsoft Forms Pro. Survey replies from customers are sent to a generic mailbox.
Automation
1. A text message must be automatically sent to a customer to confirm an appointment and to notify when a technician is on route that includes their location. 2. Ecommerce sales orders must be integrated into Dynamics 365 Finance and then exported to Azure every night. 3. 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. 4. Submitted customer surveys must generate an email to the correct department. Approval and follow-up must occur within a week.
Reporting
1. The warehouse manager's dashboard must contain warehouse counting variance information. 2. A warehouse manager needs to quickly view warehouse KPIs by using a mobile device. 3. Power BI must be used for reporting across the organization.
User experience
1. Warehouse counting must be performed by using a mobile app that scans barcodes on boxes. 2. All customer repairs must be tracked in the system no matter where they occur. 3. Qualified leads must be collected from local bike fairs.
Issues
1. Warehouse counting must be performed by using a mobile app that scans barcodes on boxes. 2. All customer repairs must be tracked in the system no matter where they occur. 3. Qualified leads must be collected from local bike fairs.
Internal
1. User1 reports receives an intermittent plug-in error when viewing the total bill customer time. 2. User2 reports that Azure consumption for API calls has increased significantly to 100 calls per minute in the last month. 3. User2 reports that sales orders have increased. 4. User5 receives the error message: 'Endpoint unavailable' during a test of the technician dispatch ISV solution. 5. The parts department manager who is the approver for the department is currently on sabbatical.
External
1. CustomerB reports that the check-in app returned only one search result for their last name, which is not the correct name. 2. Nine customers arrive in the repair area of the retail store, but no texts were sent to scheduled employees. 3. Customers report that the response time from the information email listed on the Adventure Works Cycles website is greater than five days.
4. CustomerC requested additional information from the parts department through the customer survey and has not received a response one week later.
QUESTION 9
You need to reduce response time for the information email on the website.
What should you create?
A.
a flow that creates a SharePoint item for each email response
B.
a flow that creates a notification in Microsoft Teams
C.
a Power Apps app that displays the number of email received in a dashboard
D.
a logic app that moves all emails received to Azure Blob storage
Correct Answer: B
Explanation
Explanation/Reference:
Scenario: 1. Customers report that the response time from the information email listed on the Adventure Works Cycles website is greater than five days. 2. Microsoft Teams is used for all collaboration.
You have the following JavaScript function: (Line numbers are included for reference only.)
The Annual Revenue view column is configured to call the function as shown in the Column Properties exhibit. (Click the Change Column Properties tab.)
Microsoft PL-400
Users report that the icons that appear in the Active Account 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.
Correct Answer:
QUESTION 11
You have the following code:
You have a contact record that uses the GUID 991bf2fd-d40c-4752-9984-26b7c0455b69.
You need to assign the contact record as the primary contact for an account when you create the account.
Which two code segments can you use? Each correct answer presents a complete solution.
NOTE: Each correct selection is worth one point.
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)" };
Correct Answer: AB
Explanation
Explanation/Reference:
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" } }
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.
Note: This question is part of a series of questions that present the same scenario. Each question in the series contains a unique solution. Determine whether the solution meets the stated goals. Some question sets might have more than once 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 university implements Dynamics 365 Sales. Several departments use opportunity records to bid for funding for projects within their own departments. You configure the system to ensure that each department can only work on their own records.
Employees in multiple departments often need to work together on an opportunity. Employees report that they are not able to see opportunities from other departments.
You need to ensure that employees from more than one department can work on the same opportunities when necessary.
Solution: Use access team templates and give access to members in the two departments.
Does the solution meet the goal?
A.
Yes
B.
No
Correct Answer: B
Explanation
Explanation/Reference:
Instead use position hierarchy security and define the two departments as positions.
A company has a model-driven app that uses Microsoft Dataverse.
The company requires a web application that retrieves information from the model-driven app. The requirements for the web application include:
1. Must be a single-page web application that uses the Web API. 2. Must display the correct company information. 3. Must authenticate using OAuth without additional verification.
You need to configure the web application.
Which two methods should you use?
Each correct answer presents a complete solution.
NOTE: Each correct selection is worth one point.
A.
NTLM authentication
B.
Kerberos Authentication
C.
Microsoft Azure Active Directory Authentication Libraries (ADAL)
D.
Microsoft Authentication Library (MSAL)
E.
multifactor authentication
Correct Answer: CD
Explanation
Explanation/Reference:
D: Use OAuth authentication with Microsoft Dataverse 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.
Client applications must support the use of OAuth to access data using the Web API. OAuth enables two-factor authentication (2FA) or certificate-based authentication for server-to-server application scenarios.
OAuth requires an identity provider for authentication. For Dataverse, the identity provider is Azure Active Directory (AAD). To authenticate with AAD using a Microsoft work or school account, use the Microsoft Authentication Library (MSAL).
Note: Since Dataverse users are authenticated using Azure Active Directory, MSAL.js is the supported way to authenticate SPA users.
C: Microsoft Azure Active Directory Authentication Library (ADAL) is a tool in the . NET framework that lets client applications developers authenticate users to an on-premises Active Directory deployment or to the cloud. ADAL will then secure API calls by locating tokens for access.
Note: Azure Active Directory Authentication Library (ADAL) is no longer actively receiving updates and is scheduled to be supported only until June, 2022. MSAL is the recommended authentication library to use for projects.
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
1. Contoso maintains a Microsoft Excel workbook that lists all drugs they supply. 2. Pharmacies submit order requests through email. 3. All information at customer locations is handwritten by customer representatives. 4. Contoso uses Cerner, which is a medical industry application that uses a proprietary database. 5. Some accounts are referrals from other pharmacies. 6. Every pharmacy has its own Dynamics 365 Sales instance.
Requirements
General
Contoso wants to ensure that there is minimal custom code and custom connectors in the system.
Accounts
1. Ensure that the names of the pharmacies are synced between the accounting and the customer management systems. 2. Account numbers should be entered automatically into the pharmaceutical system that is in a Cerner database and kept in sync. 3. 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. 4. A trigger must be created that changes the Priority field to 1 in the Account record 10 days after an Account record is created. 5. A field named Priority_Trigger must be created to trigger the Priority field. 6. 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
1. UserA must be able to create and publish Power Apps apps. 2. UserB must be the owner of all the systems and be able to provide permissions and create all new environments. 3. UserC must be able to create apps connected to the systems and update the security roles and entities. 4. Pharmacy representatives must only be able to run the apps and access their own records. 5. Access to the accounting Power Apps app must be restricted to accounting team members. 6. End users must have minimum access to the required systems. 7. Only supervisors must be able to view phone numbers in the Accounts form. 8. Developers must be able to create new apps for all users. 9. Sales users must only have access to their own records.
Reporting
Pharmacy orders must be displayed in four graphs as follows:
1. Annual revenue over $100,000 2. Annual revenues under $100,000 3. Research facilities 4. Hospitals
The graphs must be interactive, and users must be able to drill down on any dimension.
Customizations
1. Ensure that notifications are sent to the sales team when a lead is added by using Slack. 2. Ensure that leads have a review stage added to the sales process. 3. Doctors must be manually added to a custom entity named Doctor if the doctor is not listed. 4. Refill dates for customer prescriptions should be automatically determined and a notification should be sent to the customer. 5. Fields for the doctor's name and phone number must be displayed in the customer record. 6. The doctor entered on the customer's record must be validated against doctors that exist in the system. 7. The new solution will be sold to other pharmacies for use. The application must not allow changes to be made. 8. The solution must be error free so that when it is installed in other environments it does not cause issues.
Mobile app
1. A custom mobile app must be created to allow salespeople to add or search by pharmacy name. 2. Pharmacy records must be uniquely identified by pharmacy name, address, contact name, and phone number. 3. When a pharmacy is added by using the mobile app, the phone number must be validated to be all digits.
QUESTION 14
You need to create an application to deploy to other pharmacies.
What should you do?
A.
Recreate customizations in a new environment.
B.
Create a customer connector to connect the pharmacies' systems to the company's systems.
C.
Export the solution as a managed solution.
D.
Write a Web API to move customizations.
Correct Answer: C
Explanation
Explanation/Reference:
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.
The following code updates the customersizecode choice column on the Account table if the numberofemployees column value is greater than 100.
Line numbering is provided for information 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.
Correct Answer:
Explanation
Explanation/Reference:
Box 1: Yes The CrmServiceClient.Retrieve(String, Guid, ColumnSet) method issues a retrieve request to CRM
Parameters EntityName String Entity name to request
Id Guid ID of the entity to request
ColumnSet ColumnSet ColumnSet to request
Box 2: No The numberofemployees column is not updated. The customersizecode is updated.
Box 3: No The code is in C#.
In C#: When you perform comparisons with nullable types, if the value of one of the nullable types is null and the other is not, all comparisons evaluate to false except for != (not equal).
You are creating an integration that uses an Azure function to create records in the Common Data Service when leads are submitted from your company website.
You create and configure a Common Data Service application user.
You do not have administrator access to the Common Data Service environment you are using for access to Azure Active Directory. Company policy dictates that service accounts must be used for integrations, and integrations must not be granted privileges beyond what is needed.
You need to recommend actions that an administrator should perform to configure access for the Azure Function.
Which three actions should you perform? Each correct selection presents part of the solution.
NOTE: Each correct selection is worth one point.
A.
Create an application registration in Azure Active Directory.
B.
Assign the system administrator security role to the application user.
C.
Assign the Power Platform administrator role to the application user in Azure Active Directory.
D.
Create a new security role with the minimum required permissions and assign to the application user.
E.
Grant the application delegated permissions to the Dynamics CRM API in Azure Active Directory.
F.
Deploy Azure B2B guest permissions to the application user.
You need to implement the appropriate operations to meet the company's requirements.
What should you implement? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Correct Answer:
Explanation
Explanation/Reference:
Box 1: Functions
Box 2: Actions
Box 3: Complex types Complex types are keyless named structured types consisting of a set of properties. Complex types are commonly used as property values in model entities, or as parameters or return values for operations.
QUESTION 18
You are configuring a Microsoft Power Virtual Agents chatbot to use the authenticate option for Microsoft Teams only.
You need to select the variables that will return information about the logged in user.
Which two variables should you use?
Each correct answer presents a complete solution.
NOTE: Each correct selection is worth one point.
A.
AuthToken
B.
UserDisplayName
C.
UserlD
D.
IsLoggedln
Correct Answer: BC
Explanation
Explanation/Reference:
Getting User Details To Use In Power Virtual Agents In Teams After enabling the Authentication, you will now have access to Two variables, bot.UserDisplayName bot.UserId
You are synchronizing company data from a SQL Server-based .NET application into a Common Data Service (CDS) environment.
The data is entered in both the SQL Server and CDS systems.
You have a program that includes the following code:
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
NOTE: Each correct selection is worth one point.
Correct Answer:
Explanation
Explanation/Reference:
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.
A form that validates the date entered requires a custom button. The button must be available only under certain conditions.
You need to define the CommandDefinition in the RibbonDiffXML to meet the conditions for the button.
Which elements should you use? To answer, drag the appropriate elements to the correct conditions. Each element 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.
Correct Answer:
Explanation
Explanation/Reference:
Box 1: Display Rule When configuring ribbon elements, you can define specific rules to control when the ribbon elements will display.
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.
Box 3: Enable Rule When configuring ribbon elements, you can define specific rules to control when the ribbon elements are enabled.
QUESTION 21
HOTSPOT
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.
NOTE: Each correct selection is worth one point.
Correct Answer:
Explanation
Explanation/Reference:
Box 1: Decimal Latitudes range from -90 to +90 (degrees), so DECIMAL is ok.
Decimal - Up to 10 decimal points of precision can be used for values between -100,000,000,000 and - 100,000,000,000 can be in this column. You can specify the level of precision and the maximum and minimum values.
Note: of-type-group - In some cases, we will need to configure a property that may be of different types (Eg: You need to configure a property with a Decimal or whole number CRM field in such cases you can use type-group).
of-type-group - Name of the type-group as defined in manifest.
The list of property types that can be created are Whole.None, TwoOptions, DateAndTime.DateOnly, DateAndTime.DateAndTime, Decimal, Enum, FP, Multiple, Currency, OptionSet, SingleLine.Email, SingleLine.Text, SingleLine.TextArea, SingleLine.URL, SingleLine.Ticker, SingleLine.Phone
Incorrect: * Whole.None - This option simply displays a number.
* Floating point No such option. There is FP - Up to 5 decimal points of precision can be used for values between - 100,000,000,000 and -100,000,000,000 can be in this column. You can specify the level of precision and the maximum and minimum values.
Box 2: Web API uses-feature indicates which feature the code components want to use.
Web API provides properties and methods to use Web API to create and manage records. Available for Model-driven apps, canvas apps, & portals. Available for Model-driven apps, canvas apps, & portals.
Incorrect: * Client is not an option. * Utility provides a container for useful methods. It is available for Model-driven apps.
The app must integrate with a number of on-premises and cloud solutions. No VPNs are in place.
You need to determine the method for each integration.
Which methods should you use? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Correct Answer:
Explanation
Explanation/Reference:
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.
Box 2: Azure Service Bus Service Bus provides a secure and reliable communication channel between Dataverse runtime data and external, cloud-based line-of-business apps. This capability is especially useful in keeping disparate Dataverse systems or other Dataverse servers synchronized with business data changes.
Box 3: Azure Event hub Azure Event Hubs is a big data streaming platform and event ingestion service. It can receive and process millions of events per second. Data sent to an event hub can be transformed and stored by using any real-time analytics provider or batching/storage adapters.
Note: The most popular approaches in Dataverse involve webhooks, Azure messaging (Service Bus, Event Hubs), Azure Logic Apps, or Power Automate.
You are developing a Power Platform solution. You are modifying a business process flow. You have created a new radial knob for the Total amount value and have added the radial knob to the form.
The Total amount value must be entered at initiation before moving to the next step.
You need to configure the business process flow.
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.
Correct Answer:
Explanation
Explanation/Reference:
Step 1: Add another step to the business process flow. Configure custom controls on a related entity form
In this version of the preview, the easiest way to add custom controls to a BPF is to begin by adding them to a form of the entity that the BPF stage is defined on.
In our example, the Budget Amount and Decision Maker steps of the Qualify stage are defined on the Lead entity. We begin by adding these fields to the Lead main form, and then configure the radial knob and flip switch custom controls for them.
Step 2: Open the business process in the Business Process Flow designer and select Activate/Update. Generate and export the BPF form
To generate the form for a business process you want to add custom controls to, open the business process in the BPF designer and click on Activate/Update.
Step 3: Copy custom control configurations to the business process flow FormXML for the related entity form. Copy custom control configurations to the BPF FormXML
To add custom controls to the BPF, we begin by copying the custom control configurations from the Lead entity form that we just exported. To do this, we begin by viewing the FormXML for the Lead entity form, which can be found in the 'customizations' file in the solution zip file.
Step 4: Import the solution into Dataverse. Import customizations into the CDS (aka Dataverse) environment
Now that we're done making our changes, save the customizations.xml document and add it to the managed solution zip file containing the BPF, replacing the file within it. Next, import these changes into your CDS environment by going to the Solutions tab in the PowerApps portal and click 'Import'.
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.
Correct Answer:
Explanation
Explanation/Reference:
Box 1: Yes We see the code: If (!service.IsReady) { Console.WriteLine(service.LastCrmError); Etc.
Box 2: Yes We see ["SupressDuplicationDetection"] = false for account creation, but not for contact creation
Box 3: No
QUESTION 25
You are developing a new Power Platform app.
The checker fails with an error due to missing security roles.
You need to add security roles to the Power Apps Checker application user.
Which two security roles should you add? Each correct answer presents part of the solution.
NOTE: Each correct selection is worth one point.
A.
Global Discover Service Role
B.
Export Customizations
C.
Environment Maker
D.
Solution Checker
E.
Resource Manager
Correct Answer: BD
Explanation
Explanation/Reference:
Before you are able to run it, make sure you have the proper Security Roles in your Microsoft Dataverse environment. Two of the required permissions are Export Customizations and Solution Checker. References: https://learntoinspire.ca/2020/01/18/leveraging-the-power-of-solution-checker/
QUESTION 26
HOTSPOT
Fabrikam, Inc, has two divisions as shown in the Business Unit exhibit. (Click the Business Unit tab.)
Fabrikam Residences rents units short term to clients. Fabrikam Property Management deals with the maintenance of the units and manages the contractors who perform the maintenance. Clients and contractors are both stored in the Contact entity.
The manager of the Property Management business unit is a member of a Fabrikam business unit, which has the root security role as shown in the Security Role exhibit. (Click the Security Role tab.)
The manager cannot see the contact record shown in the Contact exhibit. (Click the Contact tab.)
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.
Correct Answer:
QUESTION 27
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 once 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.
You are designing a one-way integration from the Microsoft Dataverse to another system.
You must use an Azure Function to update the other system. The integration must send only newly created records to the other system. The solution must support scenarios where a component of the integration is unavailable for more than a few seconds to avoid data loss.
You need to design the integration solution.
Solution: Register a webhook in the Dataverse instance that connects to the Azure Function. Register a step on the webhook which runs synchronously on the record's Create message and in the post-operation stage.
Does the solution meet the goal?
A.
Yes
B.
No
Correct Answer: B
Explanation
Explanation/Reference:
Instead use asynchronous communication.
QUESTION 28
HOTSPOT
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.
NOTE: Each correct selection is worth one point.
Correct Answer:
Explanation
Explanation/Reference:
References: https://www.tpein.dk/?page_id=210
QUESTION 29
Note: This question is part of a series of questions that present the same scenario. Each question in the series contains a unique solution. Determine whether the solution meets the stated goals. Some question sets might have more than once 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 university implements Dynamics 365 Sales. Several departments use opportunity records to bid for funding for projects within their own departments. You configure the system to ensure that each
department can only work on their own records.
Employees in multiple departments often need to work together on an opportunity. Employees report that they are not able to see opportunities from other departments.
You need to ensure that employees from more than one department can work on the same opportunities when necessary.
Solution: Use position hierarchy security and define the two departments as positions.
Does the solution meet the goal?
A.
Yes
B.
No
Correct Answer: A
Explanation
Explanation/Reference:
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.
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
1. Contoso maintains a Microsoft Excel workbook that lists all drugs they supply. 2. Pharmacies submit order requests through email. 3. All information at customer locations is handwritten by customer representatives. 4. Contoso uses Cerner, which is a medical industry application that uses a proprietary database. 5. Some accounts are referrals from other pharmacies. 6. Every pharmacy has its own Dynamics 365 Sales instance.
Requirements
General
Contoso wants to ensure that there is minimal custom code and custom connectors in the system.
Accounts
1. Ensure that the names of the pharmacies are synced between the accounting and the customer management systems. 2. Account numbers should be entered automatically into the pharmaceutical system that is in a Cerner database and kept in sync. 3. 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. 4. A trigger must be created that changes the Priority field to 1 in the Account record 10 days after an Account record is created. 5. A field named Priority_Trigger must be created to trigger the Priority field. 6. 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
1. UserA must be able to create and publish Power Apps apps. 2. UserB must be the owner of all the systems and be able to provide permissions and create all new environments. 3. UserC must be able to create apps connected to the systems and update the security roles and entities. 4. Pharmacy representatives must only be able to run the apps and access their own records. 5. Access to the accounting Power Apps app must be restricted to accounting team members. 6. End users must have minimum access to the required systems. 7. Only supervisors must be able to view phone numbers in the Accounts form. 8. Developers must be able to create new apps for all users. 9. Sales users must only have access to their own records.
Reporting
Pharmacy orders must be displayed in four graphs as follows:
1. Annual revenue over $100,000 2. Annual revenues under $100,000 3. Research facilities 4. Hospitals
The graphs must be interactive, and users must be able to drill down on any dimension.
Customizations
1. Ensure that notifications are sent to the sales team when a lead is added by using Slack. 2. Ensure that leads have a review stage added to the sales process. 3. Doctors must be manually added to a custom entity named Doctor if the doctor is not listed. 4. Refill dates for customer prescriptions should be automatically determined and a notification should be sent to the customer. 5. Fields for the doctor's name and phone number must be displayed in the customer record. 6. The doctor entered on the customer's record must be validated against doctors that exist in the system. 7. The new solution will be sold to other pharmacies for use. The application must not allow changes to be made. 8. The solution must be error free so that when it is installed in other environments it does not cause issues.
Mobile app
1. A custom mobile app must be created to allow salespeople to add or search by pharmacy name. 2. Pharmacy records must be uniquely identified by pharmacy name, address, contact name, and phone number. 3. When a pharmacy is added by using the mobile app, the phone number must be validated to be all digits.
QUESTION 30
You need to create an application to deploy to other pharmacies.
What should you do?
A.
Navigate to Customize the System and export everything to a managed solution.
You need to implement visual hints in the custom connector.
What should you do? Each correct answer presents a complete solution.
NOTE: Each correct selection is worth one point.
A.
Extend the Open API definition of the Web API for the EnvironmentName parameter.
B.
In the custom connector, update the description for the Datald parameter.
C.
In the custom connector, update the name of the policy template.
D.
Extend the Open API definition of the Web API for the Datald parameter
Correct Answer: AB
QUESTION 32
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 once 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.
You are designing a one-way integration from the Microsoft Dataverse to another system.
You must use an Azure Function to update the other system. The integration must send only newly created records to the other system. The solution must support scenarios where a component of the integration is unavailable for more than a few seconds to avoid data loss.
You need to design the integration solution.
Solution: Register a service endpoint in the Dataverse instance that connects to an Azure Service Bus queue.
Register a step at the endpoint which runs asynchronously on the record's Create message and in the post-operation stage.
Configure the Azure Function to process records as they are added to the queue.
Does the solution meet the goal?
A.
Yes
B.
No
Correct Answer: B
Explanation
Explanation/Reference:
Need a plug-in or a custom workflow.
Note: 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.
You manage two Microsoft Power Platform solutions.
Solution A contains a custom text column named custom_text. Solution B contains a view that references the custom_text column.
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.
A travel agency has a Dynamics 365 Customer Engagement.
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.
You need to register the plug-in to meet the requirements.
Which value should you apply for each parameter? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Correct Answer:
Explanation
Explanation/Reference:
Box 1: associate
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: country
Box 4: synchronous
QUESTION 35
HOTSPOT
You are creating an application using the Microsoft Dataverse SDK for .NET.
A record must be created by using the column types of lookup and choices.
You need to set the record's column values.
Which attribute type should you use? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Correct Answer:
Explanation
Explanation/Reference:
Box 1: EntityReference Lookup
Associate table rows on create You can associate any new row with an existing row when you create it in the same way you would when updating it. You must use an EntityReference to set the value of a lookup column (attribute).
This lookup assignment is the same for both early and late-bound styles.
//Use Entity class with entity logical name var account = new Entity("account");
// set attribute values //string primary name account["name"] = "Sample Account";
Guid primarycontactid = new Guid("e6fa5509-2582-e811-a95e-000d3af40ae7");
account["primarycontactid"] = new EntityReference("contact", primarycontactid);
//Create the account Guid accountid = svc.Create(account);
Box 2: OptionSetValueCollection Choices
Dataverse, Choices columns Customizers can define a column that allows selection of multiple options. The MultiSelectPicklistAttributeMetadata class defines a column type that inherits from the EnumAttributeMetadata class. Just like the PicklistAttributeMetadata class, this column includes an OptionSetMetadata.Options property that contains the valid options for the column. The difference is that the values you get or set are an *OptionSetValueCollection* type that contains an array of integers representing the selected options. Formatted values for this column are a semi-colon separated string containing the labels of the selected options.
Note: Create choices with code The easiest way to create choices is to use the column editor in the customization tools. More information: How to create and edit columns
But if you need to automate creation of this kind of column you can use C# code like the following with the SDK for .NET that creates choices to allow choices of outdoor activities to the contact table. More information: Create columns private const int_languageCode = 1033; //English
MultiSelectPicklistAttributeMetadata outDoorActivitiesAttribute = new MultiSelectPicklistAttributeMetadata() { SchemaName = "sample_OutdoorActivities", LogicalName = "sample_outdooractivities", DisplayName = new Label("Outdoor activities", _languageCode), RequiredLevel = new AttributeRequiredLevelManagedProperty(AttributeRequiredLevel.None), Description = new Label("Outdoor activities that the contact likes.", _languageCode), OptionSet = new OptionSetMetadata() { IsGlobal = false, OptionSetType = OptionSetType.Picklist, // Picklist Options = { new OptionMetadata(new Label("Swimming",_languageCode),1), new OptionMetadata(new Label("Hiking",_languageCode),2), new OptionMetadata(new Label("Mountain Climbing",_languageCode),3), new OptionMetadata(new Label("Fishing",_languageCode),4), new OptionMetadata(new Label("Hunting",_languageCode),5), new OptionMetadata(new Label("Running",_languageCode),6), new OptionMetadata(new Label("Boating",_languageCode),7), new OptionMetadata(new Label("Skiing",_languageCode),8), new OptionMetadata(new Label("Camping",_languageCode),9)} } };
var response = (CreateAttributeResponse)service.Execute(createAttributeRequest);
QUESTION 36
DRAG DROP
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
Correct Answer:
Explanation
Explanation/Reference:
Step 1: Create a new component in the department app. First create a new component.
Step 2: Create a connection to the engineering issues list and retrieve the total number of critical issues Retrieve the required data.
Step 3: Create an output parameter and set the value of the parameter to the total number of critical issues.
Custom properties A component can receive input values and emit data if you create one or more custom properties. Output property is used to emit data or component state. For example, the Selected property on a Gallery control is an output property. When you create an output property, you can determine what other controls can refer to the component state.
Step 4: Import the counter component in the other apps from the first department app Use the new component in your apps.
A manufacturing company uses a Common Data Service (CDS) environment to manage their parts inventory across two warehouses modeled as business units and named WH1 and WH2.
Data from the two warehouses is processed separately for each part that has its inventory quantities updates.
The company must automate this process, pushing inventory updates from orders submitted to the warehouses.
You need to build the automation using Power Automate flows against the CDS database. You must achieve this goal by using the least amount of administrative effort.
Which flow or flows should you recommend?
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.
Correct Answer: H
Explanation
Explanation/Reference:
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.
You create a Power Automate flow that retrieves data from a proprietary database.
You need to ensure that the flow works for other users.
Which two actions should you perform? Each correct answer presents part of the solution.
NOTE: Each correct selection is worth one point.
A.
Share a view with users.
B.
Share the custom connector with users.
C.
Share the flow with users.
D.
Share the environment by giving permissions to the users.
Correct Answer: BC
Explanation
Explanation/Reference:
Share the flow and the custom connector with users.
B: Share a custom connector in your organization. If you have a custom connector, you might want to enable other people to use it. People within your organization can use the custom connector just like they use other Microsoft-managed connectors.
A company must copy customer account data changes from a Common Data Service (CDS) instance into an external system.
Azure Storage Queues are used to pass the changes from CDS to the external system.
You have the following code. (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.
Correct Answer:
QUESTION 40
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.
User1 and User2 use a form named F1 to enter account data. Both users have the same security role, SR1, in the same business unit.
User1 has a business rule to make the main phone mandatory if the relationship type is Reseller. User2 must occasionally create records of the Reseller type without having the reseller's phone number and is blocked by User1's business rule.
You need to ensure that User2 can enter reseller data into the system.
Which three actions should 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 order you select.
Correct Answer:
QUESTION 42
HOTSPOT
You are developing a model-driven app for the purchasing department of an organization. You provision a new test environment and a security role. You select users to test the apps and assign the users to a security group named TestSG.
If the tests succeed, a manager will perform additional testing in the production environment and then publish the app for the organization's purchasing department.
You need to ensure that the test and production environments are configured correctly.
What should you do? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Correct Answer:
Explanation
Explanation/Reference:
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.
Box 2: Assign the manager the app security role.
Box 3: Set the production environment security group to TestSG
Box 4: Add all users in the department to the TestSG security group.
You need to complete a Power Apps component framework (PCF) control.
How should you define the order in the manifest? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Correct Answer:
Explanation
Explanation/Reference:
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.
QUESTION 44
You are developing an app that uses Common Data Service.
You must integrate Common Data Service with a new web application. You must allow the new web application to display data from Common Data Service.
You build a single-page web application using the Web API.
You need to authenticate your app using OAuth.
What should you use?
A.
Windows Communication Foundation (WCF)
B.
Cross-Origin Resource Sharing (CORS)
C.
Microsoft Authentication Library (MSAL)
D.
Kerberos authentication
E.
Active Directory Authentication Library (ADAL)
Correct Answer: B
Explanation
Explanation/Reference:
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.
A company creates a custom connector to use in a flow named Search Company.
When this custom connector is used, requests must be redirected to a different endpoint at runtime.
You need to apply a policy to the custom connector to route calls to a different endpoint.
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.
Correct Answer:
Explanation
Explanation/Reference:
Step 1: Select the Search Company custom connector in the Microsoft Flow portal under Custom connectors and select edit. Login to the Microsoft Flow portal, and on right top corner click on the settings icon and then click on custom connectors option.
Step 2: Select the Definition tab Policy template are available only for custom connectors. To use a policy template, open Power Automate portal and either create a new custom connector or edit an existing one.
In the custom connector wizard, select the Definition page. From the Definition page, select New Policy.Etc.
Step 3: Select New Policy
QUESTION 46
DRAG DROP
You create a new canvas app.
You update a test case and must test the app in a separate browser.
You need to test the app by using Test Studio.
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.
Correct Answer:
Explanation
Explanation/Reference:
Step 1: Select a test suite
Step 2: Select Copy play link
Playing tests in a browser You can copy a link to play a test in separate browser outside Test Studio. It helps integrate your tests in a continuous build and release pipeline such as Azure DevOps.
The play link for the selected test is persisted. It doesn't change for the test suite or test case. You can update your tests without the need to modify build and release processes.
To play tests in your browser:
1. Select a test suite or test case in the right pane. 2. Select Copy play link. 3. You're prompted to publish your tests if there are any unpublished changes. 4. You can select to skip the publish process and copy the play link. New test changes don't play if you skip. 5. Open a browser and paste the URL into the address bar to play the test. 6. View your test playing back.
Step 3: Publish the test
Step 4: Open a browser and paste the URL for the app inte the address bar
A customer wants to design a complex business process flow that includes six custom entities and four stages for each entity. One of the stages will have 15 steps.
You need to explain the flaw in this design to the customer.
What is the flaw in this design?
A.
The maximum number of custom entities has been exceeded.
B.
The maximum number of steps for a stage has been exceeded.
C.
The maximum number of stages for an entity has been exceeded.
D.
The minimum number of stages for an entity has not been met.
E.
The minimum number of steps for a stage has not been met.
Correct Answer: A
Explanation
Explanation/Reference:
Maximum number of processes, stages, and steps: To ensure acceptable performance and the usability of the user interface, there are some limitations you need to be aware of when you plan to use business process flows: 1. Multi-entity processes can contain no more than five entities. There can be no more than 10 activated business process flow processes per entity. 2. Each process can contain no more than 30 stages.
You develop a model-driven app to include a form containing several columns. Two groups of users. named Group1 and Group2 will access the form.
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.
What should you do?
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.
Correct Answer: D
Explanation
Explanation/Reference:
There are two steps to set up security permissions for a column.
1. Enable column security on one or more columns for a given table. 2. Associate one more existing security profiles, or create one or more new security profiles to grant the appropriate access to specific users or teams.
You are developing an app for a sales team to record contact details in their Common Data Service (CDS) database.
The app must handle loss of network and save the data to CDS when reconnected.
The main screen of the app has a form to collect contact data and a button. The OnSelect property for the button has the following expression:
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
NOTE: Each correct selection is worth one point.
Correct Answer:
Explanation
Explanation/Reference:
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.
Box 2: No
Box 3: No
Box 4: Yes
QUESTION 50
DRAG DROP
A company is developing a Microsoft Dataverse plug-in.
The plug-in must create a follow-up task for a new account.
You add the code that receives context(IPluginExecutionContext) and service(IOrganizationService).
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.
Correct Answer:
Explanation
Explanation/Reference:
Step 1: Entity followuptask = new Entity("task"); Followuptask["subject"] = "Send e-mail to the new customer"; Followuptask["regardingobjectid"] = account.ToEntityReference();
The Entity.ToEntityReference method gets an entity reference for this entity instance.
Example
RetrieveRequest request = new RetrieveRequest { Target = account.ToEntityReference(), ColumnSet = new ColumnSet(), RelatedEntitiesQuery = new RelationshipQueryCollection() };
Incorrect: * Entity followuptask = new Entity("task"); Followuptask["subject"] = "Send e-mail to the new customer"; Followuptask["regardingobjectid"] = account;
Step 2: Entity account = (Entity)context.InputParameters["Target"]; Setup the input parameters.
Example: The plug-in will create a task activity that will remind the creator of the account to follow up one week later.
// Create a task activity to follow up with the account customer in 7 days. Entity followup = new Entity("task");
followup["subject"] = "Send e-mail to the new customer."; followup["description"] = "Follow up with the customer. Check if there are any new issues that need resolution."; followup["scheduledstart"] = DateTime.Now.AddDays(7); followup["scheduledend"] = DateTime.Now.AddDays(7); followup["category"] = context.PrimaryEntityName;
// Refer to the account in the task activity. if (context.OutputParameters.Contains("id")) { Guid regardingobjectid = new Guid(context.OutputParameters["id"].ToString()); string regardingobjectidType = "account";
followup["regardingobjectid"] = new EntityReference(regardingobjectidType, regardingobjectid); }
// Create the task in Microsoft Dynamics CRM. tracingService.Trace("FollowupPlugin: Creating the task activity."); service.Create(followup);
Step 3: service.Create(followup); Create the task.
A company uses the Data Export Service (DCS) to refresh their Azure SQL Data Warehouse instance. The data warehouse is used for historical trend analysis and forecasting.
The refresh process from the Common Data Service (COS! environment lo the data warehouse has errors. Users report that data is missing.
A CDS lest environment that contains DES is available to troubleshoot the import outside of the production environment. You create a new database for testing.
You need to configure the lest environment to point to the new database.
What should you create first lo access the database?
A.
A new secret In Azure Key Vault
B.
A new user in the SQL database
C.
A new export profile in CDS test
D.
A new application registration
Correct Answer: A
Explanation
Explanation/Reference:
Because this service requires access to an external Microsoft Azure SQL Database from Dynamics 365 (online), a number of prerequisites must be satisfied before you can successfully access this service including:
Global / Tenant Admin access, or an Azure Key Vault must be provisioned and the setup user must have permissions on Secrets.
You need to develop a Power Apps Component Framework (PCF) component for a company.
You must follow Microsoft's application lifecycle management (ALM) process for code components.
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.
Correct Answer:
QUESTION 53
HOTSPOT
The following code updates the customer size code choice column on the Account table if the number of employees column value is greater than 100. Line numbering is provided for information only.
For each of the following statements, select Yes if the statement is true. Otherwise, select No.
Correct Answer:
QUESTION 54
The communication department for a company plans to add a publicly accessible survey page to the company's public website.
You must add the new survey page to the company's public website and capture data from the page to a Common Data Service environment.
Explicit user credentials must not be required to write survey data to Common Data Service.
You need to implement authentication.
Which authentication mechanism should you implement?
A.
Microsoft 365
B.
X.509 certificate
C.
Azure AD Conditional Access
D.
Claims-based
Correct Answer: C
Explanation
Explanation/Reference:
With Azure AD Conditional Access the users are authenticated by Azure Active Directory (Azure AD).
What should you use? To answer, drag the appropriate security options to the correct scenarios. Each security option 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.
Correct Answer:
Explanation
Explanation/Reference:
Box 1: Conditional access You can limit access to users with block access by location to reduce unauthorized access. By using Conditional Access policies, you can apply the right access controls when needed to help keep your organization secure and stay out of your user's way when not needed. Conditional Access analyses signals such as user, device, and location to automate decisions and enforce organizational access policies for resources.
Box 2: DLP policy DLP policies enforce rules for which connectors can be used together by classifying connectors as either Business or Non-Business. If you put a connector in the Business group, it can only be used with other connectors from that group in any given app or flow. Sometimes you might want to block the usage of certain connectors altogether by classifying them as Blocked.
Box 3: Exfiltration blocking Email exfiltration controls for connectors Microsoft Exchange enables admins to disable email autoforwards and autoreplies to remote domains for external recipients. Exchange does this by using message-type headers, such as Auto Forward received from Outlook and Outlook on web clients.
Case Study 3
Case Study Questions
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
1. Contoso maintains a Microsoft Excel workbook that lists all drugs they supply. 2. Pharmacies submit order requests through email. 3. All information at customer locations is handwritten by customer representatives. 4. Contoso uses Cerner, which is a medical industry application that uses a proprietary database. 5. Some accounts are referrals from other pharmacies. 6. Every pharmacy has its own Dynamics 365 Sales instance.
Requirements
General
Contoso wants to ensure that there is minimal custom code and custom connectors in the system.
Accounts
1. Ensure that the names of the pharmacies are synced between the accounting and the customer management systems. 2. Account numbers should be entered automatically into the pharmaceutical system that is in a Cerner database and kept in sync. 3. 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. 4. A trigger must be created that changes the Priority field to 1 in the Account record 10 days after an Account record is created. 5. A field named Priority_Trigger must be created to trigger the Priority field. 6. 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
1. UserA must be able to create and publish Power Apps apps. 2. UserB must be the owner of all the systems and be able to provide permissions and create all new environments. 3. UserC must be able to create apps connected to the systems and update the security roles and entities. 4. Pharmacy representatives must only be able to run the apps and access their own records. 5. Access to the accounting Power Apps app must be restricted to accounting team members. 6. End users must have minimum access to the required systems. 7. Only supervisors must be able to view phone numbers in the Accounts form. 8. Developers must be able to create new apps for all users. 9. Sales users must only have access to their own records.
Reporting
Pharmacy orders must be displayed in four graphs as follows:
1. Annual revenue over $100,000 2. Annual revenues under $100,000 3. Research facilities 4. Hospitals
The graphs must be interactive, and users must be able to drill down on any dimension.
Customizations
1. Ensure that notifications are sent to the sales team when a lead is added by using Slack. 2. Ensure that leads have a review stage added to the sales process. 3. Doctors must be manually added to a custom entity named Doctor if the doctor is not listed. 4. Refill dates for customer prescriptions should be automatically determined and a notification should be sent to the customer. 5. Fields for the doctor's name and phone number must be displayed in the customer record. 6. The doctor entered on the customer's record must be validated against doctors that exist in the system. 7. The new solution will be sold to other pharmacies for use. The application must not allow changes to be made. 8. The solution must be error free so that when it is installed in other environments it does not cause issues.
Mobile app
1. A custom mobile app must be created to allow salespeople to add or search by pharmacy name. 2. Pharmacy records must be uniquely identified by pharmacy name, address, contact name, and phone number. 3. When a pharmacy is added by using the mobile app, the phone number must be validated to be all digits.
QUESTION 56
HOTSPOT
You need to configure the fields with the appropriate type.
Which type should you use? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Correct Answer:
Explanation
Explanation/Reference:
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.
Technicians for a company use a model-driven app on their phones to record information about service visits. Users do not have permissions to the Power Apps maker portal to create or update apps.
Technicians report issues with the model-driven app. You are unable to reproduce the issues in a development environment.
You need to provide instructions to the technicians to gather more details about the errors.
Which four actions should you recommend be performed in sequence? To answer, move the appropriate actions from the list of actions to the answer area and arrange them in the correct order.
Correct Answer:
Explanation
Explanation/Reference:
Step 1: Open the app in a browser on the phone.
Step 2: Add the following text to end of the URL for the app: "&monitor=true" You can start a Monitor session from a model-driven app. To do this, append &monitor=true to the end of the URL in the browser. This displays the Monitor command on the model-driven app global command bar. Select Monitor to open a monitoring session in a new tab.
Step 3: Perform the steps to generate the errors and download the results from Monitor.
Step 4: Open the application in a browser on a laptop computer when they return to the office
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.
Correct Answer: AD
Explanation
Explanation/Reference:
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.
A company requires a plug-in that makes multiple requests to an external web service. The plug-in must not time out when the web service has issues or is slow to respond.
You need to create the plug-in.
What should you do?
A.
Send requests to use multiple threads.
B.
Register the plug-in to run synchronously.
C.
Register the plug-in step once for each web service request.
D.
Set the HTTP connection timeout value explicitly to limit how long each connection can remain open.
Correct Answer: D
Explanation
Explanation/Reference:
Correct: * Set the HTTP connection KeepAlive property to false.
* Set the HTTP connection timeout value explicitly to limit how long each connection can remain open
Incorrect: * Assign the IOrganizationService object to a member variable. * Register the plug-in step once for each web service request. * Register the plug-in to run synchronously. * Send requests to use multiple threads
Note: * Set the HTTP connection KeepAlive property to false Set KeepAlive to false when interacting with external hosts in a plug-in Category: Performance Impact potential: High
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. If your specific external service would benefit from using persistent sessions for performance reasons, actively send a KeepAlive at an interval of half the idle timeout (30 seconds) to keep the connection from closing.
Problematic patterns In order to override the default value of KeepAlive for the non-WCF interactions, the approach should be taken to leverage HttpWebRequest to perform the interactions with the web server, but first setting the KeepAlive property to false.
* Set the HTTP connection timeout value explicitly to limit how long each connection can remain open
Power Apps Dataverse, Set Timeout when making external calls in a plug-in Category: Performance
Impact potential: High
Symptoms If a plug-in makes external web requests that fail to respond quickly, the plug-in will wait for the full default timeout period before failing. This duration may cause a long transaction that can effect other operations. 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 The default timeout value for .Net Http clients is 100 seconds, just 20 seconds short of the time available for the plug-in to complete. It is best to establish an expected baseline time that a calling service will respond. The longer it exceeds this normal response time, the higher the probability it will ultimately fail. As a performance best practice, it is best to fail quickly rather than allow the default timeout period to expire. You should control the period that your call to the external service will wait.
The timeout value you should set will depend on the service. For example, if you can monitor the performance of the service you may determine a duration where 99.999% of requests succeed and set your timeout period to that duration with a few seconds buffer. This will prevent the occasional outliers from having an inordinate impact on the performance of your plug-in.
If you are using System.Net.Http.HttpClient Class, you can set the Timeout value explicitly, as shown in this example setting the timeout to 15 seconds.
You are testing the deployment of a model-driven app. Microsoft Entra ID groups are used exclusively to manage environment-and team-level permissions.
Users encounter several access-related issues that prevent them from testing the app.
You need to select the component to use to resolve each issue by using the principle of least privilege.
What should you assign to resolve each issue? To answer, move the appropriate resolutions to the correct issues. You may use each resolution 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.
Correct Answer:
QUESTION 61
You are creating a model-driven app. You create JavaScript code to display a message when a record is saved.
You need to configure the associated JavaScript web resource name when adding the event handler to the form.
Which field should you use?
A.
Event Type
B.
Component
C.
Function
D.
Library
Correct Answer: D
Explanation
Explanation/Reference:
Configure an event handler The following procedure describes how to configure an event handler for a form.
1. Sign in to Power Apps, open the table that you want, and then open the form in the form designer where you want to configure an event handler. 2. Depending on the library state, choose from the following... 3. On the Events tab, select Event Handler and complete the following information to configure the form event, and then select Done:
* Event Type: On Save: When a record is saved after a form field change. On Load: When the form opens.
You manage two Microsoft Power Platform managed solutions.
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.
Solution A must be imported before Solution B.
You need to determine what state the components are in after importing the solutions.
Which effect does each component exhibit? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Correct Answer:
QUESTION 63
DRAG DROP
You are designing new functionality for an existing model-driven app.
A field must display multiple selections to the user, enabling the user to select a value.
You need to determine which column type can support the required scenarios.
Which column type should you use? To answer, drag the appropriate column types to the correct scenarios. Each column 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.
NOTE: Each correct selection is worth one point.
Correct Answer:
Explanation
Explanation/Reference:
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.
Example: Filter(IceCream, OnOrder > 0) - Returns records where OnOrder is greater than zero.
Box 2: Global choice and Lookup
Box 3: Global choice A choice column provides a list of values for users to pick from. They help streamline data entry in turn ensuring clean data. There are two types - local and global. Local choices can are local to the table and column that they are created for. They cannot be reused on other tables. For example, a list of statuses for an application may not apply anywhere else (e.g. Submitted, In Review, Approved, Rejected). On the other hand, global choices are available across all tables and columns allowing them to be reused.