AB-410 · domain
Dataverse Foundations
Dataverse Foundations covers how Microsoft Dataverse stores data and enforces access in Power Platform solutions. AB-410 questions here ask you to pick correct column types, configure calculated or rollup behavior, and reason about security roles, privileges, and record-level access for business apps.
Focused practice
Practice Dataverse Foundations questions
Scored sessions drawing only from this domain — pick a length below.
Start 20-question practice test →What this domain covers
What to know about Dataverse Foundations
Be able to select the right Dataverse column type, choose calculated versus rollup columns for derived values, and configure security roles so users get needed Create, Read, and Write privileges without Delete. Getting column type and privilege scope right is essential.
Choosing Dataverse column types such as Date Only, Currency, and Choice for filtering and sorting
Configuring calculated, rollup, and formula columns to derive values from related table rows
Assigning security roles with Create, Read, Write, Delete, and Append privileges at table level
Understanding table ownership, business units, and record-level sharing in Dataverse security
Watch out for
Common Dataverse Foundations exam traps
- ▸Storing dates as text or Date and Time when analysts need Date Only filtering and sorting, which breaks report grouping.
- ▸Using a calculated column for cross-table aggregation instead of a rollup column, so related line item totals never update.
- ▸Granting the Organization-level Delete privilege while trying to deny deletion, instead of setting Delete to None on the table.
Question index
All Dataverse Foundations questions (91)
Click any question to see the full explanation, or start a practice session above.
You need to create a column that stores the total cost of a project, which is derived from the sum of all associated expense records. Which column type should you use?
Easy2A company has a Dataverse environment with a custom table 'Order' that includes a Lookup column to the 'Account' table. The company wants to ensure that when an Order is created, the 'Account' record's 'CreditLimit' is checked and the Order is rejected if the order total exceeds the credit limit. The validation must occur regardless of whether the Order is created via the model-driven app, API, or import. What should they implement?
Hard3Which type of chart can you create in a Model-driven app?
Medium4You are creating a new custom table in Dataverse to store customer feedback. You need to ensure that each feedback record is associated with a specific account. Which type of column should you add to the feedback table to create this association?
Easy5Which THREE components can be included in a Dataverse solution?
Hard6You are designing a Dataverse solution for a municipal permits office. The Permits table must record the date a permit application was received and the date the inspection was completed. Auditors require that the received date never changes after the record is created, but the inspection date must be editable by inspectors. You also need to report on the number of days between receipt and inspection. Which configuration should you use?
Hard7You are creating a custom table to track project milestones. You need to ensure that every milestone is associated with a specific project, and if the project is deleted, all associated milestones must also be deleted. Which relationship type should you configure?
Easy8You need to enforce data consistency across forms in a Model-driven app by hiding a field based on the value of another field. Which mechanism should you use?
Medium9Which TWO types of environments can be created in the Power Platform?
Medium10When creating a new environment, what is the default database type?
Medium11Which TWO types of forms exist for Model-driven apps?
Medium12A user needs to see records based on specific criteria. Which object should you configure?
Medium13You are auditing environment security. You find that a user can see records they should not have access to. The user is assigned two security roles, one that grants access and one that restricts it. How does Dataverse handle this?
Hard14You are building a model-driven app that uses Dataverse. You need to ensure that users can only view records that they own or that are shared with them. Which security concept should you implement?
Medium15You are configuring a Dataverse table to store customer feedback. You need to ensure that the table supports auditing and that users can track changes to specific columns. Which two actions must you perform? (Choose two.)
Hard16You need to create a relationship between two Dataverse tables where a single record in Table A can be associated with many records in Table B, but each record in Table B can be associated with only one record in Table A. Additionally, you want to ensure that when a record in Table A is deleted, all related records in Table B are also deleted. Which relationship type and behavior should you configure?
Hard17Which TWO properties can you configure for a column in Dataverse?
Medium18You want to ensure that a user can only see records belonging to their business unit. Which access level should you set in the security role?
Hard19What feature helps you identify errors in your model-driven app configuration?
Medium20Which THREE items can be configured in a table relationship?
Hard21You need to enforce that a custom table named Project has a unique project code. The project code is entered by users and must be unique across all records. You also want to ensure that the uniqueness check is performed server-side to prevent duplicates from any client. What should you do?
Hard22You are creating a Dataverse table to store customer feedback. You need to capture the date and time when the feedback was submitted, including the time zone offset. Which data type should you use for the column?
Easy23You are a Power Platform maker designing a Dataverse solution for a project management app. You need to create a relationship between a custom table named Project and a custom table named Task. A project can have many tasks, and each task belongs to exactly one project. You also need to ensure that when a project is deleted, all related tasks are automatically deleted. Which two actions should you perform? (Choose two.)
Medium24You are designing a solution for a sales tracking app. You need to create a new custom table called 'Project' that will store project details. The table must have a primary column that uniquely identifies each project and a secondary column for the project's start date. Which of the following best describes the default behavior when you create a new custom table in Dataverse?
Medium25Which TWO of the following are valid relationship types in Dataverse?
Medium26Which tool is used to manage Dataverse environments and solutions?
Easy27A developer is configuring a new custom table in Dataverse. They need to ensure that the table supports auditing and that users can search for records using the Dataverse search. Which two table properties must be enabled? (Choose two.)
Medium28You are a builder working on a Power Platform solution that includes a custom Dataverse table named ProjectTask. You need to ensure that each ProjectTask record has a unique, human-readable identifier that is automatically generated when the record is created, and users should not be able to change it after creation. What should you use?
Medium29What happens when you delete a 'Managed' solution in a target environment?
Medium30Which component allows users to navigate between different entities in a Model-driven app?
Easy31You are creating a new custom table in Dataverse to store product information. You need to ensure that each product has a unique identifier that is automatically generated and can be used as a primary key. Which column type should you use?
Easy32You need to import a large volume of data into Dataverse. Which feature allows you to perform bulk operations efficiently?
Medium33Which TWO field types allow for mathematical calculations?
Medium34You are creating a new custom table in Dataverse. You need to ensure that users can quickly find records by searching for a specific text field. Which column property should you enable to allow the field to be used in search?
Easy35Which THREE of the following are primary capabilities of Dataverse business rules?
Hard36Which THREE items are considered 'Managed' components in a solution?
Hard37You are building a canvas app that connects to Dataverse. You need to store a list of product categories that will be used across multiple apps. The categories should be easy to update without modifying any app. What should you create?
Medium38A system administrator is setting up a new Dataverse environment. They need to ensure that users can only access records that they own or that are shared with them, and that they cannot see records owned by other users in the same business unit. Which security concept should they configure?
Easy39You are preparing a solution for transport from a development environment to a production environment. The solution contains a custom table, a model-driven app, and several cloud flows that reference environment variables. During import testing, you discover that the flows fail because their connection references point to the developer's personal connections. You need to identify which behaviors are true of connection references and environment variables when a solution is exported and imported. (Choose two.)
Hard40Which TWO types of security roles exist in Dataverse?
Medium41A maker publishes a canvas app that reads from a Dataverse table. Users report that records created by teammates are visible, but when a user tries to update a record created by someone else, the save fails with a permission error. The maker confirms the users share the same security role. Which Dataverse concept most likely explains why updates fail while reads succeed?
Hard42A team is building an app on Dataverse. They need to record the moment a support ticket is escalated so that downstream automations can trigger on that event, and they want the value captured automatically without the user entering it. They also want the value to remain unchanged if the ticket is later edited. Which column type best fits this requirement?
Medium43You are configuring a Dataverse environment for a multinational company. The company requires that certain records be accessible only to users in the same business unit, while other records should be accessible to all users in the organization. You need to set up security roles to enforce this. Which of the following security role privileges should you configure to allow users to read records only within their business unit?
Hard44Where do you define the table relationships in the Power Apps maker portal?
Easy45You are designing a Dataverse solution for a sales tracking app. You need to categorize each opportunity by a predefined set of stages, such as 'Prospecting', 'Qualification', and 'Proposal'. Each opportunity can have only one stage at a time, and you want to ensure users select from these exact values. What should you create?
Medium46A user needs to see the history of changes made to a record's fields. What feature must be enabled?
Medium47Which component should you use to create a user-friendly process guide on a form?
Medium48What is the primary purpose of a Dataverse 'Solution'?
Easy49What is the purpose of the 'Default Solution' in Dataverse?
Easy50You are designing a Dataverse data model for a field service application. A dispatcher must be able to assign a work order to exactly one technician, but a technician can be assigned many work orders over time. The work order table already exists and the technician table already exists. You need to add the relationship that enforces this business rule with the least administrative effort. What should you create?
Easy51You are building a model-driven app for a healthcare clinic. The clinic wants to track patients and their appointments. A patient can have many appointments, and each appointment is associated with exactly one patient. When a patient is deleted, all their appointments should also be deleted. Which relationship behavior should you configure between the Patient and Appointment tables?
Medium52You are migrating a solution from development to production. You notice the custom table is missing. What is the most common reason?
Hard53You need to group fields together on a form for better readability. What should you use?
Medium54What is the primary role of a 'Security Role' in Dataverse?
Easy55You have a table that is set to 'Organization' owned. What does this mean for security?
Hard56A developer creates a custom table named 'Project' in Dataverse. They need to ensure that each project record has a unique project code that is automatically generated when the record is created. The code must follow the format 'PRJ-00001', 'PRJ-00002', etc. Which Dataverse feature should they use to achieve this?
Medium57A solution architect must design a Dataverse table that stores historical sensor readings. The table will grow to hundreds of millions of rows, and queries will almost always filter by sensor identifier and a timestamp range. Which design choice best supports efficient querying at this scale?
Medium58You are auditing Dataverse environment performance. You find that a custom table has excessive growth. Which action should you take to manage storage capacity effectively?
Medium59You are an app builder for a logistics company. The company uses a Dataverse table named Shipment with a choice column named ShipmentStatus that includes options such as Draft, InTransit, Delivered, and Cancelled. Business rules must automatically set the ShipmentStatus to Delivered when the ActualDeliveryDate column is populated, but users should not be able to manually change the status to Delivered if the ActualDeliveryDate is empty. Which Dataverse feature should you use to implement this requirement?
Medium60You need to prevent a user from deleting a record. Which permission should you remove from their security role?
Hard61A developer is creating a Power Automate cloud flow that must retrieve all active accounts with a specific industry and then update a custom column on each. The flow will run daily. Which Dataverse action should be used to efficiently retrieve the records?
Hard62A Power Platform environment requires that users from the 'Sales' team cannot see 'Lead' records owned by the 'Marketing' team. You have already verified security roles. What is the next logical step?
Hard63You are building a model-driven app for a chain of fitness studios. The app uses a custom Dataverse table named ClassSession that has a Many-to-One relationship to a custom table named Studio. Each studio has a weekly capacity limit stored in a Whole Number column named WeeklyCapacity. You need to prevent a user from creating a ClassSession record if the total number of ClassSessions for that studio in the same week would exceed the studio's WeeklyCapacity. The validation must run whenever a ClassSession is created or updated, regardless of whether the change comes from the model-driven app, a Power Automate flow, or the Web API. What should you use?
Medium64You are configuring a new custom table in Dataverse to store project tasks. You need to ensure that the table supports attachments, allows users to add notes, and tracks when records are created and modified. Which two actions should you perform? (Choose two.)
Medium65Which entity property determines if a record can be renamed by a user?
Easy66You are configuring field-level security for a sensitive 'Salary' field. You have enabled the field for security. What must be done next to ensure the user cannot read the data?
Hard67You are a solution architect for a large enterprise. The company uses Dataverse and needs to ensure that when a custom table named Invoice is created or updated, a series of complex calculations are performed and the results are stored in related records across multiple tables. The calculations involve aggregating data from several other tables and must run reliably even if initiated from bulk data imports or background processes. You need to minimize development effort and ensure the logic is reusable across multiple apps. What should you use?
Hard68You are designing a Dataverse table to store support tickets. Each ticket must be assigned a unique, automatically generated identifier that users can easily reference. The identifier should follow a consistent pattern, such as 'TCK-00001', and increment for each new record. Which Dataverse feature should you use to meet this requirement?
Medium69A company stores customer feedback in a Dataverse table named Feedback. Analysts frequently run reports filtered by the date the feedback was submitted, and they also sort by that date. The column currently stores the value as a single line of text, which forces slow client-side filtering. You need the column to support efficient server-side filtering, sorting, and date range queries. What should you do?
Medium70A developer needs to ensure that a custom field value is validated before the record is saved to the database. Where should this logic be placed?
Medium71A Dataverse environment contains a custom table 'Invoice' with a column 'TotalAmount' of type Currency. You need to ensure that the 'TotalAmount' is automatically calculated as the sum of line items whenever a related 'InvoiceLine' record is created, updated, or deleted. The calculation must be consistent regardless of how the data is modified (e.g., through the app, API, or import). What should you use?
Hard72A Power Platform administrator needs to allow users in a specific department to create and edit records in a custom table, but they should not be able to delete any records. The department users already have a security role with Read and Write privileges on the table. Which security role privilege should you modify?
Easy73You are creating a Dataverse table for a real estate application. You need to store a list of property features for each listing, such as 'Pool', 'Garage', and 'Fireplace'. Each listing can have multiple features, and you want to easily filter listings by a specific feature. The features are chosen from a predefined list of 20 options. Which column type should you use?
Hard74Which type of relationship is required to allow multiple 'Contacts' to be associated with multiple 'Accounts'?
Medium75You have a business rule that runs on a form. It sets a field to mandatory. Can this be bypassed?
Hard76A user has 'User' level access to a table. They create a record. Who is the owner of the record?
Hard77A developer needs to create a relationship between two Dataverse tables: 'Project' and 'Task'. A project can have many tasks, but each task belongs to exactly one project. The developer also wants to ensure that when a project is deleted, all related tasks are automatically deleted. Which type of relationship and configuration should they use?
Medium78You need to create a field that automatically calculates the total revenue of a customer based on related invoices. Which field type should you use?
Medium79You are a Power Platform developer. You need to create a new custom table in Dataverse to store product information. The table must have a column that can store a monetary value and another column that can store a yes/no choice. Which column data types should you use?
Easy80What is the maximum number of environments a single tenant can create?
Easy81You have a business requirement to categorize 'Project' records by a 'Status' field. You need to ensure users can only select from a predefined list. Which field type is most appropriate?
Medium82A Power Platform developer is creating a new custom table in Dataverse. They need to store a list of predefined options that users can select from, such as 'High', 'Medium', or 'Low' priority. Which type of column should they use?
Easy83A developer is building a model-driven app that must display a list of active contacts related to an account, with the ability to quickly filter and sort by multiple columns. The developer needs to add this to the account main form. Which control should be used?
Hard84You want to automate the process of sending an email whenever a specific field value changes. What is the best way to achieve this?
Medium85A user reports they cannot see a custom table in their app, even though the table is part of the solution. What is the most likely cause?
Hard86You are designing a Dataverse solution for a hospital. You need to track patient visits and the medications prescribed during each visit. A visit can have multiple medications, and a medication can be prescribed in multiple visits. You also need to store the dosage and frequency for each medication prescribed in a visit. What is the most appropriate way to model this relationship?
Hard87Which TWO actions can be performed in the Power Platform admin center?
Medium88You are building a model-driven app for a sales team. The app uses a Dataverse table named Opportunity. You need to ensure that when a user opens an Opportunity record, they see a read-only list of related Contacts that are associated with that Opportunity. The list should appear on the main form and allow users to open a Contact record. What should you add to the form?
Medium89You are designing a Dataverse solution for a real estate agency. The agency needs to track properties and the agents who list them. Each property can have only one listing agent, but an agent can list many properties. You create a table named Property and a table named Agent. You need to establish the relationship so that when an agent is deleted, their listed properties remain but the Listing Agent column is cleared. Which relationship type and behavior should you configure?
Medium90You are designing a Dataverse table to store customer orders. You need to ensure that each order is automatically assigned a unique, sequential order number that users can easily reference. The number should be generated when a new record is created and should not be editable by users. What should you use?
Hard91Which THREE features are part of Dataverse security?
HardOther domains
All AB-410 exam domains
Frequently asked questions
- What does the Dataverse Foundations domain cover on the AB-410 exam?
- Be able to select the right Dataverse column type, choose calculated versus rollup columns for derived values, and configure security roles so users get needed Create, Read, and Write privileges without Delete. Getting column type and privilege scope right is essential.
- How many questions are in this domain?
- This page lists all 91 Dataverse Foundations questions in the AB-410 question bank. The actual exam draws from this domain proportionally to its weighting in the official exam blueprint.
- What is the best way to practise this domain?
- Start with a short focused session (10 questions) to identify gaps, then work through explanations. Repeat with a longer session once the weak areas feel solid.
- Can I practise only Dataverse Foundations questions?
- Yes — the session launcher on this page filters questions to this domain only. Choose any session length for inline explanations and scoring.