title | description | ms.date | ms.reviewer | ms.topic | author |
---|---|---|---|---|---|
Business Central virtual tables FAQ |
Frequently asked questions for working with Business Central virtual tables |
11/13/2023 |
solsen |
conceptual |
solsen |
Important
This functionality requires version 17 or later of [!INCLUDEprod_short] online while service update 189 is required for [!INCLUDEcds_long_md]. The release information for [!INCLUDEcds_long_md] is published on the latest version availability page.
This article is a collection of frequently asked questions about [!INCLUDEprod_short] virtual tables.
What version of [!INCLUDEprod_short] do I need?
Version 17.0 of [!INCLUDEprod_short] online is needed. Version 17 contains v2.0 of the standard APIs and improvements to the OData stack that enable APIs to be exposed and consumed as virtual tables.
Can a solution from an independent software vendor (ISV) take a dependency on virtual tables? What does the application lifecycle management (ALM) look like?
Yes. The virtual tables are all generated in the MicrosoftBusinessCentralERPVE solution, which is API-managed. In other words, the items in the solution change as you make tables visible or hidden, but the solution is still a managed solution that you can take dependency on. The standard ALM flow just takes a standard reference to a virtual table from this solution with the Add existing option in the ISV solution. Missing dependency of the solution will be checked when the solution is imported and during import, if a specified virtual table doesn't yet exist, the virtual table is automatically made visible.
Which tables from [!INCLUDEprod_short] do users see in the catalog in [!INCLUDEcds_long_md]?
Generally, users see all tables exposed as API pages except for Microsoft legacy API pages: beta and v1.0.
Do all Microsoft Power Platform users have to be users in [!INCLUDEprod_short]?
Any user of Microsoft Power Platform who tries to access [!INCLUDEprod_short] data through a virtual table must also exist as a user in [!INCLUDEprod_short]. Therefore, technically, not all users have to be users in [!INCLUDEprod_short]. Only those users who access [!INCLUDEprod_short] data through virtual tables must be users in [!INCLUDEprod_short].
In the Advanced find window, the table is named Available [!INCLUDEprod_short] tables.
No. All [!INCLUDEprod_short] virtual tables should be generated in the MicrosoftBusinessCentralERPVE solution, and they all have the "dyn365bc_" prefix. This prefix won't be changed.
How can I show, in the same grid, data from multiple virtual tables that are joined to a physical table record in [!INCLUDEcds_long_md]?
This approach isn't currently possible in [!INCLUDEcds_long_md].
If I want a default value to be entered in a column during pre-create, will an initValue on the data table then work?
Yes. Here's the order of calls:
- [!INCLUDEcds_long_md] sends a create or update message.
- All the existing logic on the [!INCLUDEprod_short] table and backing tables is invoked. This logic includes default value entry that might change values.
- [!INCLUDEcds_long_md] sends another Retrieve (single) message to get the latest copy of the data, including any columns that default values were entered for.
Overview - Integrating Business Central with Microsoft Dataverse
Microsoft Power Platform Integration with Business Central
Table Modeling
[Business Central and [!INCLUDEcds_long_md] Admin Reference](powerplat-admin-reference.md)
Application Lifecycle Management for Solutions that use Virtual tables