Practice Free MB-820 Exam Online Questions
You create a Business Central report.
You need to insert values on the Request page to be saved for the next time the report is run.
What should you do?
- A . Set the Transact! on Type property to Update.
- B . Declare a Savevalues’ variable and assign it to true on the OnOpenPage () trigger.
- C . Set the Use Request Page property to true.
- D . Set the SaveValues property to true.
B
Explanation:
To ensure that the values inserted on the Request page of a Business Central report are saved for the next time the report is run, the SaveValues property (D) should be set to true. This property is available on the Request page of the report and, when set to true, allows the system to remember the values entered by the user, so they do not have to re-enter them each time they run the report. This feature enhances user experience by reducing repetitive data entry and ensuring consistency in report parameters across multiple executions. The other options mentioned, such as setting the Transaction Type property to Update (A) or declaring a Savevalues variable in the OnOpenPage trigger (B), are not directly related to saving user input on a report’s Request page.
Topic 4, Misc. Questions
You are developing an app that will be published to Microsoft AppSource.
The app requires code analyzers to enforce some rules. You plan to add the analyzers to the settings.json file.
You need to activate the analyzers for the project.
Which three code analyzers should you activate to develop the app for AppSource? Each correct answer presents part of the solution. NOTE: Each correct selection is worth one point.
- A . CodeCop
- B . UlCop
- C . a custom rule set
- D . PerTenantExtensionCop
- E . AppSourceCop
B, D, E
Explanation:
When developing an app for Microsoft AppSource, it is crucial to adhere to specific guidelines and standards to ensure compatibility and compliance. The three code analyzers you should activate are: CodeCop (A): This is the default analyzer for AL language extensions. It enforces the AL Coding Guidelines, ensuring that the code follows best practices for readability, maintainability, and performance. It checks for a wide range of issues, from syntax errors to best practice violations, making it essential for any AL development.
PerTenantExtensionCop (D): This analyzer is specifically designed for extensions that are intended to be installed for individual tenants. It includes rules that ensure the extension does not interfere with the per-tenant customizations and adheres to the guidelines for extensions that can be safely installed and uninstalled without affecting the underlying application.
AppSourceCop (E): This analyzer is tailored for extensions that are intended for publication on Microsoft AppSource. It enforces additional rules that are specific to AppSource submissions, such as checking for the use of reserved object ranges and ensuring that all prerequisite dependencies are correctly declared. This is crucial for ensuring that your app meets all the requirements for listing on AppSource.
By activating these three analyzers, developers can ensure their app adheres to the standards required for AppSource, as well as maintain high code quality and compatibility with Business Central.
HOTSPOT
A company is setting up a custom telemetry trace signal to send traces on failed customer statement emails.
For each of the following statements, select Yes if the statement is true. Otherwise, select No.

Explanation:
The telemetry trace sends custom signals to an Application Insights resource specified in the extension’s app.json file and on the tenant. = YES
Dictionary keys for the extension name and version must be specified to identify the extension during analysis. = YES
The telemetry trace sends events to Application Insights resources set up on the tenant. = YES
Telemetry in Business Central allows developers to collect custom telemetry for extensions using Application Insights. The telemetry trace is used to send custom signals to an Application Insights resource. This resource is typically specified in the app.json file of the extension and must be configured on the tenant where the extension is installed.
The use of dictionary keys for the extension name and version is a best practice to identify the extension during analysis in Application Insights. These keys can be added to the telemetry trace to ensure that when the data is collected, it’s clear which extension the data is associated with. Finally, it is correct that the telemetry trace sends events to Application Insights resources that are set up on the tenant, enabling the collection and analysis of telemetry at the tenant level.
DRAG DROP
You plan to run a debug for a client.
You extend the Standard Sales – Invoice report to add a new requirement.
You create a Report Extension ‘Ext Standard Sales – Invoice’ with ID = 50100 and add the following lines of code. (Line numbers are included for reference only.)
The client informs you that the value of the New Total VATBaseLCY column is incorrect.
You need to run a debug to identify the cause.
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.

Explanation:
Here’s the process to follow in the correct sequence:
In Visual Studio Code, locate the Ext Standard Sales – Invoice report extension from your application. The first step is to locate the specific extension you’re working with so you can modify or inspect its code.
Search where the NewTotalVATBaseLCY variable is being calculated and set a breakpoint on the line.
To debug the issue, you need to place a breakpoint on the line where the NewTotalVATBaseLCY is
calculated.
Start debugging.
Once the breakpoint is set, you begin the debugging process to examine the values and code execution.
Use the step-over functionality.
After starting the debugging, you will use the step-over functionality to move through the code line by line and observe the values of the variables.
DRAG DROP
You need to configure telemetry for the SaaS tenant and test whether the ingested signals are displayed.
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:
The correct sequence of actions to configure telemetry for the SaaS tenant and test whether the ingested signals are displayed would be:
Create an Azure Application Insights instance by using the Azure Portal in the Customer’s subscription.
Select the environment in the Admin Center and place the connection string in the Application Insights Connection String field.
Select the Application Insights instance, select Logs and then inspect the Traces table.
To set up telemetry for a SaaS tenant using Azure Application Insights, you need to follow these steps:
Create an Azure Application Insights instance: This is the first step where you create an instance in Azure that will collect the telemetry data. This should be done in the customer’s Azure subscription because it’s their data that you’re monitoring.
Configure the SaaS tenant to use the created Application Insights instance: This involves entering the correct connection string in the Business Central Admin Center so that telemetry data from the tenant is sent to the Application Insights instance.
Verify that telemetry is being collected: After configuring, you would check if the telemetry is arriving as expected by inspecting the Traces table in the Azure Application Insights instance. The ‘Traces’ table holds the telemetry data, which you can query to verify that the correct signals are being ingested.
You ate creating a view for a Business Central app.
The view requires a custom layout that displays only customer records with a balance greater than 500 in local currency.
You need to configure the view to specify that it has a custom layout.
Which property combination should you use?
- A . shareLayout = false; Filters = where (Balance = filter (> 500), “Currency Code" = filter ("ICY*));
- B . SharedLayout – true; Filters – where (Balance â– filter (> 506), “Currency Code" – filter (‘LCY’)>;
- C . SharedLayout – false; Filters – where ("Balance (ICY)" – filter (> 500));
- D . Sharediayout = true; Filters – where ("Balance (ICY)" – filter (> 500));
B
Explanation:
SharedLayout = true allows for the layout to be shared across views, and it is often used when defining a custom layout that should follow specific filtering conditions.
The Filters property specifies the exact filter criteria for the view, in this case, filtering on Balance > 500 and the Currency Code = LCY (local currency).
A uses incorrect filter syntax and shareLayout = false, which doesn’t allow the layout to be shared, so it’s not ideal for this use case.
C and D both have issues with the filter syntax and do not use proper Currency Code filtering or share layout settings.
For more details, check Creating Views in Business Central.