Microsoft Dynamics 365: Finance and Operations Apps Developer — Question 64

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 -

ADatum Corporation is a market leader in the design and distribution of innovative aluminum systems. The company provides services to the architectural, residential, industrial, and home improvement markets in Australia.

The company has warehouses in Perth. Sydney, and Melbourne. A team of warehouse employees provides delivery to the customer sites.

Current Environment -

ADatum Corporation currently uses Microsoft Dynamics AX 2009.

Customers use email or phone calls to place orders. After the company provides a quote to customers, the customer must agree to the sale price before the company places a sales order.

The company is migrating to Dynamics 365 Finance and Dynamics 365 Supply Chain Management using a phased rollout strategy to its sites. The company has the Lifecycle services project to manage various environments and releases.

The company has the following Finance and Supply Chain Management environments:

• Development
• Quality assurance (QA)
• User acceptance testing (UAT)
• Production

The company uses Azure DevOps for a code repository. All developers use a development branch to check in code and a release branch to maintain the code for production releases.

Requirements. General -

• Configure a cloud-based development environment for Finance and Supply Chain Management. Enable a code extension that supports updates.
• Configure Microsoft-supported version control and an Azure-hosted build pipeline.
• Migrate all document handling attachments for the customers to Finance and Supply Chain Management from Dynamics AX 2009.
• Audit X++ code for a best practice check.
• All new code must be unit tested in a development environment and then validated by the QA team before the code is merged into the Release branch for further releases.

Requirements. Business processes

• All changes that are deployed to the UAT environment must be approved for code release to production.
• The sales manager requires a solution that is extensible to ensure that new master tables document handling attachments are migrated to the new system.
• A base class named MigrateAttachment must be designed with methods that all child classes must implement.
• A method named processAttachment must be created so that extenders are not able to subscribe to pre-events and post-events.
• On the All sales orders list page, two new fields must be added for the total sales order amount. One field uses goods and services tax (GST) and the other field does not use GST.
• A process named Populate check data must be designed based on the following: o The process must run from the All customers list page and populate a custom table named CustCheckData with 1000 rows. o The table must have two fields named CheckNumber and BankNumber. o The process must return to the current session after the data is processed.
• The generated check data must be available for users to access in a tabular form without additional details and preview panes.
• The purchase manager requires a new data entity to send out the information for purchase order inquiries that are generated in Finance and Supply Chain Management
• The sales manager must be able to access the total quotation for the sites and item types.
• The sales manager requires a quotation number to be printed on the sales invoice business document. Customers must be able to access the reference number on the invoice documents.
• The purchase manager requires a new approval workflow for approving purchase orders that are more than $10,000.

Requirements. Business systems -

• After a user named UserA posts a packing slip for a sales order, customers must be informed of the product delivery in real-time. This information is provided using business events.
• Purchase order inquiries must be exported from the Finance and Supply Chain Management using data packages. Users must be able to query using OData but should not be able to update or create the data in the system.
• A sales manager’s workspace must display the total quotations using key performance indicators.
• The purchase order approval workflow must be configured from the procurement and sourcing module.

Issues -

• UserA reports delays when opening the All sales orders list page.
• A customer is unable to access the business events for a packing slip that is posted by UserA.
• A user named UserB reports that the system is unresponsive when they run the Populate check data process for a customer.
• UserA reports that the print management settings in the accounts receivable module do not display the new layout when testing a new sales invoice report layout in the UAT environment.

You need to resolve the issue for UserB.

Which framework should you use?

Answer options

Correct answer: B

Explanation

The correct answer is B, SysOperationSandBox, which is designed to run operations in a separate context, making it suitable for handling tasks that may cause system unresponsiveness. The other options, such as SysExtension, SysOperation, and RunBaseBatch, do not provide the same level of isolation and management of system resources needed to prevent issues like the one reported by UserB.