Skip to content

Commit 21c0c0f

Browse files
authored
Live publish
2 parents f511cfd + 0532704 commit 21c0c0f

File tree

8 files changed

+108
-111
lines changed

8 files changed

+108
-111
lines changed

powerapps-docs/developer/data-platform/configure-entity-relationship-cascading-behavior.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ The `CascadeConfiguration` (<xref:Microsoft.Xrm.Sdk.Metadata.CascadeConfiguratio
8181

8282
<a name="BKMK_ReparentAction"></a>
8383
### About the reparent action
84-
The reparent action is very similar to the share action except that it deals with the inherited read access rights instead of explicit read access rights. The reparent action is when you change the value of the referencing column in a parental relationship. When a reparent action occurs, the desired scope of the inherited read access rights for related tables might change. The cascade actions related to the reparent action refer to changes to read access rights for the table record and any table records related to it.
84+
The reparent action is very similar to the share action except that it deals with the inherited access rights instead of explicit access rights. The reparent action is when you change the value of the referencing column in a parental relationship. When a reparent action occurs, the desired scope of the inherited access rights for related tables might change for ReadAccess, WriteAccess, DeleteAccess, AssignAccess, ShareAccess, AppendAccess and AppendToAccess. It will not change for CreateAccess. The cascade actions related to the reparent action refer to changes to access rights indicated above for the table record and any table records related to it.
8585

8686
<a name="BKMK_MergeAction"></a>
8787
### About the merge action
@@ -97,4 +97,4 @@ The `CascadeConfiguration` (<xref:Microsoft.Xrm.Sdk.Metadata.CascadeConfiguratio
9797

9898

9999

100-
[!INCLUDE[footer-include](../../includes/footer-banner.md)]
100+
[!INCLUDE[footer-include](../../includes/footer-banner.md)]

powerapps-docs/developer/data-platform/virtual-entities/api-considerations-ve.md

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
2-
title: "API considerations of virtual entities (Microsoft Dataverse) | Microsoft Docs"
3-
description: "Describes API considerations of virtual entities"
4-
ms.date: 06/24/2020
2+
title: "API considerations of virtual tables (Microsoft Dataverse) | Microsoft Docs"
3+
description: "Describes API considerations of virtual tables"
4+
ms.date: 04/09/2021
55
ms.service: powerapps
66
ms.topic: "article"
77
applies_to:
@@ -17,18 +17,18 @@ search.app:
1717
- D365CE
1818
---
1919

20-
# API considerations of virtual entities
20+
# API considerations of virtual tables
2121

22-
[!INCLUDE[cc-data-platform-banner](../../../includes/cc-data-platform-banner.md)]
22+
[!INCLUDE[cc-terminology](../includes/cc-terminology.md)]
2323

24-
There are two broad categories of changes to the metadata system that are associated with the introduction of virtual entities in Microsoft Dataverse:
24+
There are two broad categories of changes to the table definition system that are associated with the introduction of virtual tables (also known as virtual entities) in Microsoft Dataverse:
2525

26-
- Addition of a new assembly, namespaces, classes and other types to support development of custom virtual entity data providers
27-
- Changes to the core platform, including a few additional properties to support external data source mapping, and modification of behaviors of existing entity and attribute properties that reflect the limitations of the initial implementation of this feature
26+
- Addition of a new assembly, namespaces, classes and other types to support development of custom virtual table data providers
27+
- Changes to the core platform, including a few additional properties to support external data source mapping, and modification of behaviors of existing table and column properties that reflect the limitations of the initial implementation of this feature
2828

2929
## Dynamics 365 Data SDK assembly
3030

31-
The Dynamics 365 Data SDK assembly, `Microsoft.Xrm.Sdk.Data.dll`, contains types to aid in the creation of custom virtual entity data providers. It is comprised of the following namespaces:
31+
The Dynamics 365 Data SDK assembly, `Microsoft.Xrm.Sdk.Data.dll`, contains types to aid in the creation of custom virtual table data providers. It is comprised of the following namespaces:
3232

3333
|Namespace|Description|
3434
|---------|---------|
@@ -37,27 +37,27 @@ The Dynamics 365 Data SDK assembly, `Microsoft.Xrm.Sdk.Data.dll`, contains types
3737
|<xref:Microsoft.Xrm.Sdk.Data.Converters>|A set of classes to convert standard XRM types to their corresponding .NET fundamental types|
3838
|<xref:Microsoft.Xrm.Sdk.Data.Exceptions>|A set of exception classes that represent errors that can occur during runtime value resolution. All are derived from Microsoft.Xrm.Sdk.SdkExceptionBase.|
3939
|<xref:Microsoft.Xrm.Sdk.Data.Expressions>|Classes to assist in implementing the supported query transformations, such as FILTER, JOIN, and ORDER.|
40-
|<xref:Microsoft.Xrm.Sdk.Data.Mappings>|Classes and interfaces that build the mapping from virtual entity metadata types to external types.|
40+
|<xref:Microsoft.Xrm.Sdk.Data.Mappings>|Classes and interfaces that build the mapping from virtual table definition types to external types.|
4141
|Microsoft.Xrm.Sdk.Data.Visitors|Classes that implement the [visitor pattern](https://en.wikipedia.org/wiki/Visitor_pattern) to perform specific operations on the **QueryExpression** parameter passed to the data provider during **RetrieveMultiple** requests. Provides specific support for both generic query and LINQ-baseed processing. These classes are derived from Microsoft.Xrm.Sdk.Query.QueryExpressionVisitorBase.|
4242

4343
This assembly is distributed as a NuGet package: [Microsoft.CrmSdk.Data](https://www.nuget.org/packages/Microsoft.CrmSdk.Data/)
4444

4545
## Changes to the core platform
4646

47-
The following changes to the standard Dataverse reference types were introduced to support virtual entities.
47+
The following changes to the standard Dataverse reference types were introduced to support virtual tables.
4848

49-
### New Entities
49+
### New tables
5050

51-
The Dataverse exposes virtual entity data providers and sources as the following new entities: [EntityDataProvider](../reference/entities/entitydataprovider.md) and [EntityDataSource](../reference/entities/entitydatasource.md).
51+
The Dataverse exposes virtual table data providers and sources as the following new tables: [EntityDataProvider](../reference/entities/entitydataprovider.md) and [EntityDataSource](../reference/entities/entitydatasource.md).
5252

53-
### New metadata properties
53+
### New table definition properties
5454

5555
Four new properties were added to the <xref:Microsoft.Xrm.Sdk.Metadata.EntityMetadata> class:
5656

5757
|Property|Description|
5858
|--|--|
59-
|<xref:Microsoft.Xrm.Sdk.Metadata.EntityMetadata.DataProviderId>|GUID that identifies the associated virtual entity data provider|
60-
|<xref:Microsoft.Xrm.Sdk.Metadata.EntityMetadata.DataSourceId>|GUID that identifies the associated virtual entity data source|
59+
|<xref:Microsoft.Xrm.Sdk.Metadata.EntityMetadata.DataProviderId>|GUID that identifies the associated virtual table data provider|
60+
|<xref:Microsoft.Xrm.Sdk.Metadata.EntityMetadata.DataSourceId>|GUID that identifies the associated virtual table data source|
6161
|<xref:Microsoft.Xrm.Sdk.Metadata.EntityMetadata.ExternalName>|Name for this type in the external data source|
6262
|<xref:Microsoft.Xrm.Sdk.Metadata.EntityMetadata.ExternalCollectionName>|Plural name for this type, used in the UI and to support OData access|
6363

@@ -68,24 +68,24 @@ Two new properties were added to the <xref:Microsoft.Xrm.Sdk.Metadata.AttributeM
6868
|<xref:Microsoft.Xrm.Sdk.Metadata.AttributeMetadata.ExternalName>|Name of the type in the external data source|
6969
|<xref:Microsoft.Xrm.Sdk.Metadata.AttributeMetadata.IsDataSourceSecret>|Indicates whether the field contains sensitive information|
7070

71-
The `ExternalName` property was also added to the <xref:Microsoft.Xrm.Sdk.Metadata.OptionMetadata> and <xref:Microsoft.Xrm.Sdk.Metadata.OptionSetMetadata> classes. These external names assist in the external data source mapping, by specifying the name of the associated type in the external data source. These properties are only used for virtual entities; for a builtin or standard custom entity type, these external names must be `null`.
71+
The `ExternalName` property was also added to the <xref:Microsoft.Xrm.Sdk.Metadata.OptionMetadata> and <xref:Microsoft.Xrm.Sdk.Metadata.OptionSetMetadata> classes. These external names assist in the external data source mapping, by specifying the name of the associated type in the external data source. These properties are only used for virtual tables; for a builtin or standard custom entity type, these external names must be `null`.
7272

7373

74-
### Virtual entity creation
74+
### virtual table creation
7575

76-
The approach to programmatically creating a virtual entity type differs slightly from a standard custom entity type creation in that:
76+
The approach to programmatically creating a virtual table type differs slightly from a standard custom entity type creation in that:
7777

7878
- If the associated data provider (and optionally data source) is known at creation time, then these are specified.
7979
- If the data provider for this type is not known, then at minimum, <xref:Microsoft.Xrm.Sdk.Metadata.EntityMetadata.DataProviderId> is set to `7015A531-CC0D-4537-B5F2-C882A1EB65AD`, and the <xref:Microsoft.Xrm.Sdk.Metadata.EntityMetadata.DataSourceId> is set to `null`. Before instances of this type are used at runtime, these properties must be assigned appropriate values.
8080

81-
Two new entities, [EntityDataProvider](../reference/entities/entitydataprovider.md) and optionally [EntityDataSource](../reference/entities/entitydatasource.md), will be created when you register a plugin, and their respective ID's, `entitydataproviderid` and `entitydatasourceid`, represent these required GUIDs. (Otherwise, developers rarely need to access these custom types directly.) Note that DataSource contains the property `entitydataproviderid` that must match the corresponding DataProvider type or a runtime exception will be thrown.
81+
Two new tables, [EntityDataProvider](../reference/entities/entitydataprovider.md) and optionally [EntityDataSource](../reference/entities/entitydatasource.md), will be created when you register a plugin, and their respective ID's, `entitydataproviderid` and `entitydatasourceid`, represent these required GUIDs. (Otherwise, developers rarely need to access these custom types directly.) Note that DataSource contains the property `entitydataproviderid` that must match the corresponding DataProvider type or a runtime exception will be thrown.
8282

8383
> [!WARNING]
84-
> Standard (non-virtual) entities must have the values of their associated `DataProviderId` and `DataSourceId` set to their default values (`null`), otherwise a runtime exception will be thrown. Once created, you cannot convert from a non-virtual type to a virtual type, or the reverse.
84+
> Standard (non-virtual) tables must have the values of their associated `DataProviderId` and `DataSourceId` set to their default values (`null`), otherwise a runtime exception will be thrown. Once created, you cannot convert from a non-virtual type to a virtual type, or the reverse.
8585
86-
### Entity metadata property behavior changes
86+
### Table definition property behavior changes
8787

88-
The following table details how the behavior of standard [EntityMetadata properties](/dotnet/api/microsoft.xrm.sdk.metadata.entitymetadata?view=dynamics-general-ce-9#properties) are modified when applied to virtual entities. Some properties are not valid for virtual entities, whereas others are limited in scope or value.
88+
The following table details how the behavior of standard [EntityMetadata properties](/dotnet/api/microsoft.xrm.sdk.metadata.entitymetadata?view=dynamics-general-ce-9#properties) are modified when applied to virtual tables. Some properties are not valid for virtual tables, whereas others are limited in scope or value.
8989

9090
|**Metadata Property**|**Applies?**|**Notes**|
9191
|---------------------|------------|---------|
@@ -128,7 +128,7 @@ The following table details how the behavior of standard [EntityMetadata propert
128128
|IsAuditEnabled|_invalid_|Always false, auditing is not supported.|
129129
|IsAvailableOffline|_invalid_|Always false, offline use is not supported.|
130130
|IsBusinessProcessEnabled|_invalid_|Always false, business processes are not supported.|
131-
|IsChildEntity|_invalid_|Always false, all virtual entity are organizationally owned.|
131+
|IsChildEntity|_invalid_|Always false, all virtual tables are organizationally owned.|
132132
|IsConnectionsEnabled|valid|<!-- TODO: Connection support is still TBD for Potassium -->|
133133
|IsCustomEntity|valid||
134134
|IsCustomizable|valid||
@@ -144,7 +144,7 @@ The following table details how the behavior of standard [EntityMetadata propert
144144
|IsMailMergeEnabled|valid||
145145
|IsManaged|valid||
146146
|IsMappable|valid||
147-
|IsOfflineInMobileClient|_invalid_|Always false, virtual entity values are not cached for offline use.|
147+
|IsOfflineInMobileClient|_invalid_|Always false, virtual table values are not cached for offline use.|
148148
|IsOneNoteIntegrationEnabled|valid||
149149
|IsOptimisticConcurrencyEnabled|_invalid_|Always false, concurrency must be implemented in the data source.|
150150
|IsPrivate|valid||
@@ -161,7 +161,7 @@ The following table details how the behavior of standard [EntityMetadata propert
161161
|LogicalCollectionName|valid||
162162
|LogicalName|valid||
163163
|ManyToManyRelationships|valid||
164-
|ManyToOneRelationships|valid| Not supported between two virtual entities. |
164+
|ManyToOneRelationships|valid| Not supported between two virtual tables. |
165165
|MetadataId|valid||
166166
|MobileOfflineFilters|_invalid_|Always false, offline use is not supported.|
167167
|ObjectTypeCode|valid||
@@ -179,9 +179,9 @@ The following table details how the behavior of standard [EntityMetadata propert
179179
<!-- TODO: Add links to reference properties in first column. -->
180180

181181

182-
### Attribute metadata property behavior changes
182+
### Column definition property behavior changes
183183

184-
The following table explains how the behavior of standard [AttributeMetadata properties](/dotnet/api/microsoft.xrm.sdk.metadata.attributemetadata?view=dynamics-general-ce-9#properties) are modified when applied to virtual entities. Some properties are not valid for virtual entities, whereas others are limited in scope or value.
184+
The following table explains how the behavior of standard [AttributeMetadata properties](/dotnet/api/microsoft.xrm.sdk.metadata.attributemetadata?view=dynamics-general-ce-9#properties) are modified when applied to virtual tables. Some properties are not valid for virtual tables, whereas others are limited in scope or value.
185185

186186
|**Metadata Property**|**Applies?**|**Notes**|
187187
|---------------------|------------|---------|
@@ -221,8 +221,8 @@ The following table explains how the behavior of standard [AttributeMetadata pro
221221
### See also
222222

223223
[Get started with virtual entities](get-started-ve.md)<br />
224-
[Custom virtual entity data providers](custom-ve-data-providers.md)<br />
225-
[Sample: Generic virtual entity data provider plug-in](sample-generic-ve-plugin.md)
224+
[Custom virtual table data providers](custom-ve-data-providers.md)<br />
225+
[Sample: Generic virtual table data provider plug-in](sample-generic-ve-plugin.md)
226226

227227

228228

0 commit comments

Comments
 (0)