MB-820 Online Practice Questions

Home / Microsoft / MB-820

Latest MB-820 Exam Practice Questions

The practice questions for MB-820 exam was last updated on 2026-02-24 .

Viewing page 1 out of 3 pages.

Viewing questions 1 out of 17 questions.

Question#1

DRAG DROP
A company is implementing Business Central.
In the per-tenant extension, TableA Header and TableA Line are document tables, and TableB Header and TableB Line are document history tables.
The company requires that the resulting dataset of query objects contain the following records:
• All records from TableA Header even if no matching record value exists in the linked TableA Line
• Records from TableB Header where a match is found in the linked TableB Line field
You need to configure the linked data item to generate the required dataset.
Which SqlJoinType should you use? To answer, move the appropriate SqUoinTypes to the correct dataset requirements. You may use each SqlJoinType once, more than once, or not at all. You may need to move the split bar between panes or scroll to view content.


A. 

Explanation:
Include all records from TableA Header even if no matching record value exists in the linked TableA Line: LeftOuterJoin
Include only matched records from TableB Header: InnerJoin
In SQL and similarly in Business Central when defining table relationships in query objects, the type of join determines how records from one table are combined with records from another table. Here's what each join type means in the context of the company's requirements:
LeftOuterJoin:
A LeftOuterJoin includes all records from the 'left' table (TableA Header) and the matched records from the 'right' table (TableA Line). If there is no match, the result is NULL on the side of the 'right' table. This is why it fits the requirement to include all records from TableA Header even if there is no matching record in TableA Line.
InnerJoin:
An InnerJoin includes records when there is at least one match in both tables. So, it will only include records from TableB Header where a corresponding match is found in TableB Line. If there is no match, the records from TableB Header will not appear in the result set. This aligns with the requirement to include only matched records from TableB Header.
By using these join types, the company can ensure that their dataset includes the appropriate records from the document tables and document history tables according to their specified requirements.

Question#2

A company has extended Business Central.
You plan to submit the extension to AppSource.
You need to ensure that an application meets the technical requirements before submitting it for validation.
Which three actions should you perform? Each correct answer presents a complete solution. NOTE: Each correct selection is worth one point.

A. Use the OnBeforeCompanyOpen event for improved sign in time
B. Include extension translation files with the submission.
C. Ensure the app file is digitally signed
D. Code all date fields in the mm-dd-yyyy format
E. Use data classification on all tables and extension fields.

Explanation:
B. Include extension translation files with the submission.
AppSource submissions require that the extension be localized to different languages, and including translation files is part of the requirement.
C. Ensure the app file is digitally signed.
Digitally signing the app file is a security requirement for AppSource submissions to ensure the integrity and authenticity of the app.
E. Use data classification on all tables and extension fields.
Microsoft requires that all data, especially personal data, be classified using the data classification feature to comply with GDPR and other data privacy regulations.

Question#3

HOTSPOT
You create a table with fields.
You observe errors in the code
You need to resolve the errors.



For each of the following statements, select Yes if the statement is true. Otherwise, select No. NOTE: Each correct selection is worth one point.


A. 

Explanation:
In line 12, declare "Job Task" as a variable. = NO
Add the property FieldClass = FlowField; for field 3. = YES
Add the property FieldClass = FlowFilter; for field 3. = NO
In line 23, assign the "User Setup" table to a field. = YES
For "In line 12, declare 'Job Task' as a variable": In the AL code provided, the "Job Task" appears to be part of a CalcFormula of a FlowField, which means it references a table and not a variable. The "Job Task" does not need to be declared as a variable because it is used to reference a table in a CalcFormula expression.
For "Add the property FieldClass = FlowField; for field 3": The line of code CalcFormula = sum("Job Task"."Recognized Sales Amount" where("Job No." = field("No."))); indicates that this field is calculated from other table data, which is the definition of a FlowField. Therefore, adding the property FieldClass = FlowField; is necessary for the field to function correctly.
For "Add the property FieldClass = FlowFilter; for field 3": FlowFilters are used to filter data based on
the value in a flow field. Since field 3 is using a CalcFormula to sum values, it is a FlowField and not a FlowFilter. Therefore, this statement is not correct.
For "In line 23, assign the 'User Setup' table to a field": The line TableRelation = "User Setup"; suggests that the "Project Manager" field has a relation to the "User Setup" table, which is a method of assigning a table to a field to ensure that the values in "Project Manager" correspond to values in the "User Setup" table. Hence, this statement is true.

Question#4

HOTSPOT
You need to create the API page according to the requirements.
How should you complete the code segment? To answer, select the appropriate options in the answer area. NOTE: Each correct selection is worth one point.


A. 

Explanation:
https://learn.microsoft.com/en-us/dynamics365/business-central/dev-itpro/developer/properties/devenv-dataaccessintent-property

Question#5

HOTSPOT
You develop a test application.
You must meet the following requirements:
• Roll back changes to a test method after run time.
• Run an approve action on a test page named TestPage

A. You need to implement the given requirements on the test codeunit Which actions should you perform? To answer, select the appropriate options in the answer area. NOTE: Each correct selection is worth one point.

Explanation:
To roll back changes to a test method after run time, you should:
Set the TransactionModel attribute to AutoRollback.
To run an approve action on a test page named TestPageA, you should:
Configure TestPageA.Approve.Invoke().
In Business Central's testing framework, the TransactionModel attribute can be set to AutoRollback. This ensures that any changes made during the test are rolled back after the test is complete, leaving the database in its original state.
For running an action on a test page, you would use the 'Invoke' method on the action you wish to perform. In this case, to run an approve action on TestPageA, you would use TestPageA.Approve.Invoke() within your test codeunit. This simulates the user action of approving something on the page.
These actions ensure that the testing environment is properly set up to test specific functionalities without persisting test data and to invoke actions as part of the test scenarios.

Disclaimer

This page is for educational and exam preparation reference only. It is not affiliated with Microsoft, Microsoft Certified: Dynamics 365 Business Central Developer Associate, or the official exam provider. Candidates should refer to official documentation and training for authoritative information.

Exam Code: MB-820Q & A: 122 Q&AsUpdated:  2026-02-24

  Get All MB-820 Q&As