MB-500 : Microsoft Dynamics 365 Finance and Operations Apps Developer : Part 06
-
HOTSPOT
A company has a cloud-based Dynamics 365 Finance environment and uses an e-commerce website for retail operations. The website has business to business (B2B) capabilities. The company uses a middleware integration tool to process data.
You must create a batch job to automate some operations. The batch job must be able to process several thousand transactions in each run.
You need to configure the environment.
Which tools should you use? To answer, drag the appropriate tools to the correct requirements. Each tool may be used once, more than once, or not at all. You may need to drag the split bar between panes or scroll to view content.
NOTE: Each correct selection is worth one point.
-
You create a bring your own database (BYOD) entity that includes four tables.
You need to configure change tracking for specific fields in the entity.
Which option should you enable?
- custom query
- entire entity
- entity export
- primary table
-
DRAG DROP
A company uses Dynamics 365 Finance.
Client companies require weekly updates for services performed. You create a custom data entity by using the Data Entity wizard.
You need to expose a list of services to external business companies.
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.
Explanation:Step 1: Synchronize the database
Entities are created as views in Microsoft SQL Server, and staging tables are also added. Therefore, you must sync a database when you build entities.Step 2: Build the solution
Build your project
In Solution Explorer, right-click your project, and then click Properties.
Change the value of the Synchronize database on build property to True, and then click OK. This property must be set only one time per project.On the Visual Studio toolbar, click Build > Build Solution to build the project.
Step 3: Configure properties for the data entity
After build visually validate and customize an entity -
DRAG DROP
A company is migrating from a legacy system to Dynamics 365 Finance.
You need to import the customer data by using the Data Management workspace.
In which order should you perform the actions? To answer, move the appropriate actions from the list of actions to the answer area and arrange them in the correct order.
Explanation:The import process is done through the Import tile in the Data Management workspace.
Import a data package
1. Log into the environment using a login with sufficient privileges (typically this is the Administrator role).
2. On the dashboard, click the Data Management workspace.
3. Click the Import tile.
4. On the next page, do the following:
Provide a name.
In the Source Data Format field, select Package.
Click the Upload button and choose the appropriate package file from the location for the data being imported. This will import all the files from the package.
Click Save, and then click Import. -
DRAG DROP
A company uses Dynamics 365 Supply Chain Management.
You need to integrate the system with third-party applications.
Which data integration strategies should you use? To answer, drag the appropriate data integration strategies to the correct scenarios. Each strategy 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.
Explanation:Box 1: custom service
Custom service peak data volume is 1,000 records per hour.Box 2: batch data API
This scenario is best implemented by using batch data APIs, which has a peak data volume of 300,000 records per hour.Box 3: OData endpoint
Peak data volume for reading Odata status of orders is 5,000 records per hour.
This scenario is best implemented by using the OData service endpoints to read order status information. -
HOTSPOT
A company plans to migrate purchase orders from an older system into Dynamics 365 Finance.
You need to generate field mapping between the source and the target data structures.
What should you do? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
-
You are training a new Dynamics 365 Finance developer.
You need to recommend where asynchronous integrations should be used instead of synchronous integrations.
For which scenario should you recommend asynchronous integration?
- A retailer requires all new customer data captured at point of sale (POS) terminals through the day sent back to the system.
- A service company needs workers to be able to access just-in-time inventory data from the field by using a third-party Software as a Service (SaaS) application to ensure they have parts to complete a service.
- A retailer wants to ensure gift card balances are communicated back to the system from point of sale (POS) terminals in near real-time.
- A manufacturer wants to move production data from an on-premises deployment Dynamics 365 Finance in near real-time.
Explanation:Classic data integration: Asynchronous
Classic data integration provides asynchronous and uni-directional data synchronization experience between model-driven applications in Dynamics 365 and Dynamics 365 Finance applications. It’s an IT-administrator led experience and you must schedule the data sync jobs to run on a specific cadence. Classic data integration is suitable for business scenarios that involves bulk ingress/egress of data across Dynamics 365 applications.Incorrect Answers:
B: Just-in-time inventory data required.
C: Real-time required.
D: Real-time required.Note: Dual-write: Synchronous, Bi-directional.
Dual-write provides synchronous, bi-directional, near-real time experience between model-driven applications in Dynamics 365 and Finance applications. Data synchronization happens with little or no intervention and is triggered by create, update and delete actions on an entity. Dual-write is suitable for interactive business scenarios that span across Dynamics 365 applications. -
You are training a new Dynamics 365 Finance developer.
You need to recommend where asynchronous integrations should be used instead of synchronous integrations.
For which scenario should you recommend asynchronous integration?
- A warehouse wants to track movement of all inventory from scanners to the system.
- A retailer wants to ensure gift card balances are communicated back to the system from point of sale (POS) terminals in near real-time.
- A retailer requires all new customer data captured at point of sale (POS) terminals through the day sent back to the system.
- When products are updated in Finance and Operations, a third-party application that contains the same product information needs to also be updated in near real-time.
-
A company uses Dynamics 365 Finance.
You have an entity named VendVendorV2Entity. You add a new column to the entity.
You need to ensure that the new column is available in the entity for data transfer activity.
Which two actions should you perform? Each correct answer presents part of the solution.
NOTE: Each correct selection is worth one point.
- Select the Generate mapping button on the Mapping details form.
- Select the Validate button on the Entity list page.
- Select the Entity structure button on the Entity list page.
- Select the Modify target mapping button on the Entity list page.
Explanation:
Using the configuration key metadata built during entity refresh list, run time validations are performed in the following use cases.
– When user clicks Validate on the entity list.
– When the user generates mapping. -
Case study
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot return to this section.
To start the case study
To display the first question in this case study, click the Next button. Use the buttons in the left pane to explore the content of the case study before you answer the questions. Clicking these buttons displays information such as business requirements, existing environment, and problem statements. When you are ready to answer a question, click the Question button to return to the question.Background
Wide World Importers sell office supplies, furniture, and fittings to their customers across the United States. The company has the following locations:
– a retail store in Seattle
– a warehouse in Seattle
– a customer support and call center in Atlanta
– a team of field workers that provide furniture installation services at customer sites.Wide World Importers plans to implement Dynamics 365 Finance and Microsoft Azure cloud platform features.
Current environment
Customers may place orders by email, phone, or by using the company’s website. The company authorizes and processes credit card transactions by using a web-based application. Customer, inventory, supplier, and other master and transactional data is stored in a legacy database.
The company collects feedback from customers by phone or a form on the company’s website and maintains the data in a Microsoft Excel workbook.
Wide World Importers runs on-premises applications to manage payroll and workers compensation. The company has a set of Microsoft Power BI dashboards that present data from a reporting database.
The company creates a Lifecycle Services (LCS) implementation project and completes Dynamics 365 Finance onboarding.
The company maintains production, quality assurance (QA), development, user acceptance testing (UAT), and build environments.
Requirements
General
– You must configure a cloud-based Dynamics 365 Finance development environment and enable code extensions that support updates.
– You must configure version control and a Build environment.
– You must migrate all legacy data to the new system.
– You must implement best practices for X++ coding, the data model, caching, and security.
– All new code must be unit tested in a development environment and then validated by the QA team before code is added to source control.Business processes
– You must configure vendor trade agreements.
– Products must be shipped directly from suppliers to customers depending on customer location to save indirect costs.
– You must collect customer feedback on products shipped directly from vendors.
– You must deploy code to a UAT environment for testing before deploying code to production.
– You must validate all entries for the purchase order creation form.
– You must develop a web portal that allows customers to browse products, place orders, and check order status. Product data for the web portal must be integrated as periodic batches.Business systems
– You must install and configure a third-party solution for credit card processing within Dynamics 365 Finance. The third-party company will provide a deployable package.
– The workers compensation application must be able to call an API to update worker compensation details in Dynamics 365 Finance.
– You must develop a process to import payroll journals into the system.
– You must configure the warehouse mobile device portal for warehouse operations.
– You must install a third-party solution to support web portal integration. The solution is supplied as a source code model file.Vendor exclusion list
You must develop a new solution to maintain a Vendor exclusion list for each customer and item combination. The solution must meet the following requirements:
– Isolate all new vendor exclusion codes as a new assembly by creating a table named VendExclusions.
– Create an index for the table named PrimaryIdx that uses the following fields: CustAccount, ItemId, VendAccount.
– Ensure that users can open the Vendor Exclusion list report from the customer master form. The list must display the customer account, Item ID, and Vendor account fields.
– Implement the Excel integration for the Vendor Exclusion List form.
– Provide functionality to periodically export the Vendor exclusion list to prepare reports by using standard reporting capabilities of Dynamics 365 Unified Operations.
– Develop necessary security permissions to view and maintain the new Vendor exclusion list functionality and reporting. Users with maintain rights will be able to create, update, and delete the exclusion list. – Permissions must be assigned to security roles to match company security model.
– Maintain referential integrity with other tables.
– Users must be presented with a warning message before a direct delivery purchase order is created for a vendor in exclusion list.
– Sales managers must be alerted when a new exclusion record is added to the system.Security
– You must implement the record level audit feature to identify the users who created the record.
– Grant specific users rights to maintain the vendor exclusion list by using Excel.
– You must implement validation to check whether a proposed direct delivery purchase order vendor is on the exclusion list for the customer and product combination.Issues
– User1 is not able to access many features in the system. You must provide User1 administrator rights.
– A sales manager suspects a data-related issue in the vendor exclusion list. User1 must identify the user who created the referenced exclusion records.
– Developer2 joins the company and does not have access to a development environment or source control.
– User2 reports performance issues when they generate direct delivery purchase orders after current updates are applied.
– User2 reports that they cannot access new functionality and reports.-
You need to configure security for the Vendor Exclusion List report.
What are two possible ways to achieve this goal? Each correct answer presents a complete solution.
NOTE: Each correct selection is worth one point.
- Create a new privilege, add a reference to an output menu item, and then add the new privilege to a role.
- Create a new security policy and add an output menu item. Add the new security policy to duty extension and then to a role extension.
- Create a new privilege extension and add an output menu item. Add the privilege to a duty extension and then to a role extension.
- Create a new privilege and assign it to an output menu item. Add the new privilege to a duty extension and then add the duty extension to a role.
Explanation:Scenario: Develop necessary security permissions to view and maintain the new Vendor exclusion list functionality and reporting. Users with maintain rights will be able to create, update, and delete the exclusion list. Permissions must be assigned to security roles to match company security model.
The privileges are simply a way to grant permissions to an entry point, which can be services, to a duty, role, or even directly to a user. Typically, we only add entry points to a privilege, such as menu items.
D: You can extend a Security Role or a Security Duty to add new duties/privileges to these elements.
Incorrect Answers:
C: We can’t extend security privileges, we would always create a new privilege.
-
-
Case study
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot return to this section.
To start the case study
To display the first question in this case study, click the Next button. Use the buttons in the left pane to explore the content of the case study before you answer the questions. Clicking these buttons displays information such as business requirements, existing environment, and problem statements. When you are ready to answer a question, click the Question button to return to the question.Background
First Up Consultants provides Commercial Cleaning services to its clients. The company purchases all its cleaning supplies from Best For You Organics Company.
First Up Consultants is using a cloud-based Dynamics 365 Finance instance. The system has a foundation table named CashDisc that contains one cash discount record for each cash discount type.
Best For You Organics Company invoices First Up Consultants and allows cash discounts based on how fast an invoice is paid. First Up Consultants is entitled to a two percent discount from Best for You Organics for any invoice that is paid within 10 days and has a minimum invoice amount of $2,500.
Business requirements
All new and extended objects must be located in an existing model named FinanceExt. The creation of new models is not permitted.
Best For You Organics Company requires that First Up Consultants apply specific minimum invoice amounts to each cash discount record. A cash discount may only be applied when the minimum invoice amount requirement has been met. The new field must be added to the CashDisc form grid with the allowable visible number of characters set to 10.
First Up Consultants must retrieve the required Cash Discount methods and corresponding minimum invoice amounts directly from Best For You Organics Company’s enterprise resource planning (ERP) system.
The Chief Financial Officer (CFO) requires the following reports:
– A report that shows all outstanding invoices, their cash discount types including the new minimum threshold applicable, and the amount of the discount. The report must only be accessed by users who are members of the Accounts Payable Manager role.
– You must create a Microsoft Excel workbook that lists unpaid invoices to Best For You Organics Company that have a due date earlier than 5/1/2019 and an Invoice Amount between $20,000 and $100,000.Cash discounts for unpaid invoices must be updated with the new minimum invoice amounts.
Technical requirements
Vendor Invoices Past Due form
You must be able to filter the grid on the Vendor Invoices Past Due form. By default, you must filter the form based on the Due Date, Invoice Amount, and Vendor columns. Users must be able to apply reusable user-specific filters to a page using multiple fields.
Cash Disc form
You must extend the CashDisc form to add a new field named Minimum Invoice Amount to the form. You must add a new Extended Data Type to the extension model for the new field. The new field must be added above the discount method field. The field must display 10 characters.
The accounts payable manager and the accounts payable clerk have Delete access to the form. You must alter permissions to limit accounts payable clerks to have only View access to the form.
Cash Discount Records report
You must create a report that shows a list of CashDisc records. You must include the Minimum Invoice Amount field and filtered data by using the CashDisc.DiscMethod field. Applicable security objects must be created in the existing “FinanceExt” model and configured so the report is accessible by those users mapped to the accounts payable role.
Batch jobs
You must create a batch job that runs on the last day of each month to update the current unpaid invoices with changes in the minimum invoice amount. The job must meet the following requirements:
– Accept the following parameters: Vendor, DueDate.
– Be callable by an Action menu item.
– Allow users to specify vendors to include in the job.
– Use Sys Operation Framework for all batch jobs.You must create a batch job to identify modified CashDisc.MinimumInvoiceAmount values and apply these to open Purchase Lines.
-
HOTSPOT
You need to configure security for the CashDisc form.
What changes should you make? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
-
-
DRAG DROP
You are a Dynamics 365 Finance developer.
You need to use the Extensible Data Security (XDS) framework to restrict access to the data in the Sales table form based on the customer group and the role of the user.
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.
-
HOTSPOT
You are a Dynamics 365 Finance developer.
Users are experiencing slower load times for a data table on the All Customers form.
You need to update caching for the table in Dynamics 365 to improve data retrieval times.
How should you configure Cache Lookup properties? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Explanation:Box 1: Entire table
In Microsoft Dynamics AX, groups of records can be cached all at once with set-based caching. Set-based caching can be implemented in two ways:At design time, by setting the table’s Cache Lookup property to Entire Table.
In code, by using the Record View Cache class.
Box 2: Found
Record caching is enabled for a table when all the following statements are true:
– The Cache Lookup property on the table is enabled by setting it to one of the following values:
– Not In TTS, Found, Found And Empty.
– The record buffer disable Cache method has not been called with a parameter of true. -
DRAG DROP
You are a Dynamics 365 Finance developer.
You need configure table caching.
Which Cache Lookup properties should you use? To answer, drag the Cache Lookup properties to the correct table. Each property 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.
Explanation:Box 1: Found And Empty
All selects on caching keys are cached, including selects that are not returning data.
All caching key selects are returned from caching if the record exists there, or the record is marked as nonexistent in the cache. A select for Update in a transaction forces reading from the database and replaces the record in the cache.
An example of Found And Empty record caching is in the Discount table in the Microsoft Dynamics AX standard application. By default, the Discount table has no records. By using a Found And Empty cache on this table, the keys that are queried for but not found are stored in the cache. Subsequent queries for these same non-existent records can be answered from the cache without a round trip to the database.Box 2: Not In TTS
All successful caching key selects are cached.
When in a transaction (after ttsBegin), no caches made outside the transaction are used. When inside a transaction, the record is read once from the database and subsequently from the cache. The record is select-locked when reading in a transaction, which ensures that the record cached is not updated while the transaction is active.
A typical example of the Not In TTS property is on the Cust Table in the Microsoft Dynamics AX application. It is acceptable to read outdated data from the cache outside a transaction, but when data is used for validation or creating references, it is ensured that the data is real-time.Box 3: Entire Table
Creates a set-based cache on the server. The entire table is cached as soon as at least one record is selected from the table. An Entire Table cahce is flushed whenever an insert, update or delete is made to the table. So first select read all records from DB for the selected company and all the further selects will take data from the cache instead of DB calls.Box 4: Found
All successful caching key selects are cached. All caching key selects are returned from the cache if the record exists there. A select for Update in a transaction forces reading from the database and replaces the record in the cache.
This is typically used for static (lookup) tables, such as Unit, where the record usually exists. -
HOTSPOT
You are a Dynamics 365 Finance developer. You create a form.
You must ensure that only sales managers can view the form.
You need to set up security for the form.
What should you do? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Explanation:Step 1: Add the form object to the entry point node of a new privilege.
Your desired security privilege you can either directly set form control permissions or Entry Points.
For the Entry point method you need first need to add new entry point and set its object type and object name properties or for existing ones select desired entry point and click on drop down arrow and on controls right click and select new control, and now set its grant and name properties to desired control and its access rights.Step 2: Add the privilege to a new duty
You need to assign this privilege in desired security role and security duty.Step 3: Add the duty to the security role for sales managers.
-
HOTSPOT
You are a Dynamics 365 Finance developer.
You need to create a security rule that meets the following requirements:
– Provide the same permissions as HcmWorkerActionHireRead
– Assign the Update level access and the HcmHumanResourceManager RoleWhich settings should you use? To answer, select the appropriate option in the answer area.
NOTE: Each correct selection is worth one point.
-
HOTSPOT
You are a Dynamics 365 Finance developer.
You launch the Performance Timer tool to troubleshoot performance issues with a business process.
You need to view the results from the tool.
What does the tool present? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Explanation:Box 1: The number of open forms and ..(per second)
Forms – Forms will show how many forms are currently open, plus the rate at which they opened and closed (per second), and a set of counters, such as the total amount of created or closed forms.Box 2: Services Session provider – This is the total number of sessions created.
-
You are Dynamics 365 Finance developer.
You need to explain the performance advantages of the different concurrency models.
What are three performance advantages of optimistic concurrency control over pessimistic concurrency control? Each correct answer presents a complete solution.
NOTE: Each correct selection is worth one point.
- Records are locked as soon as they are retrieved from the database.
- Records remain available for other processes while they are selected from the database.
- Records are locked for a shorter length of time.
- Fewer resources are used to lock records during updates.
- One record cannot be selected for update by two different processes at the same time.
Explanation:Optimistic Concurrency only locks records from the time when the actual update is performed.
Following are the advantages of using OCC:
Records remain available for other processes to update if they have been selected from the database but haven’t yet been updated.
Records are locked for a shorter length of time.
Fewer resources are used to hold the locks during the update process.Incorrect Answers:
A: Pessimistic Concurrency Control locks records as soon as they are fetched from the database for an update.
E: One record can be selected for update by two different processes at the same time when using OCC. -
DRAG DROP
A company uses Dynamics 365 Finance.
You need to implement role-based security for a set of fields in a table.
How should you arrange the security elements? To answer, drag the appropriate security elements to the correct locations. 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.
Explanation:The following illustration shows the elements of role-based security and their relationships.
-
Contoso, Ltd. uses Dynamics 365 Finance. You receive reports of performance issues with the app.
You need to use Performance Timer to investigate the issues.
Which URL should you use?
- https://contoso.cloudax.dynamics.com/?cmp=USMF&debug=perftimer
- https://contoso.cloudax.dynamics.com/?cmp=USMF&debug=develop
- https://contoso.cloudax.dynamics.com/?cmp=USMF&mi=performancetimer
- https://contoso.cloudax.dynamics.com/?cmp=USMF=debug=developer
Explanation:To open the Performance timer, open your webpage with the added parameter debug=develop: https://yoursite.cloud.test.dynamics.com/en/?cmp=USMF&debug=develop
-
You use the performance timer to monitor and optimize Dynamics 365 performance.
You need to view information about how many users are currently using the application.
Which performance counter should you use?
- Services Session Provider
- Web Client Session
- Forms
- GC