Skip to content

Commit 06f1ca9

Browse files
authored
Merge pull request #6696 from MicrosoftDocs/main
update working
2 parents 9145919 + 1c9a173 commit 06f1ca9

File tree

83 files changed

+2216
-637
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

83 files changed

+2216
-637
lines changed

.openpublishing.redirection.json

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,30 @@
11
{
22
"redirections": [
3+
{
4+
"source_path": "powerapps-docs/developer/data-platform/org-service/samples/access-discovery-service.md",
5+
"redirect_url": "../../sample-discovery-service-crmserviceclient",
6+
"redirect_document_id": false
7+
},
8+
{
9+
"source_path": "powerapps-docs/developer/data-platform/webapi/samples/global-discovery-service-csharp.md",
10+
"redirect_url": "../../sample-global-discovery-service-csharp",
11+
"redirect_document_id": false
12+
},
13+
{
14+
"source_path": "powerapps-docs/developer/data-platform/org-service/discovery-service.md",
15+
"redirect_url": "../discovery-service",
16+
"redirect_document_id": false
17+
},
18+
{
19+
"source_path": "powerapps-docs/developer/data-platform/webapi/discovery-orgsdk-to-webapi.md",
20+
"redirect_url": "../discovery-service",
21+
"redirect_document_id": false
22+
},
23+
{
24+
"source_path": "powerapps-docs/developer/data-platform/webapi/discover-url-organization-web-api.md",
25+
"redirect_url": "../discovery-service",
26+
"redirect_document_id": false
27+
},
328
{
429
"source_path": "powerapps-docs/maker/canvas-apps/formula-reference.md",
530
"redirect_url": "/power-platform/power-fx/formula-reference",

powerapps-docs/developer/component-framework/reference/mode/trackcontainerresize.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ The following table shows the strategies that you can use to control the height
4242
| Canvas apps | `dataset` & `field` | `height: allocatedWidth` | `width: allocatedHeight` |
4343
| Canvas apps | `dataset` & `field` (full screen mode) | `height: "100%"` | `width: "100%"` |
4444

45-
If the of `allocatedWidth` and `allocatedHeight` change after the first `updateView` is called, then a subsequent `updateView` is called with "layout" added to the `context.updatedProperties`. More information: [UpdatedProperties](..\updatedproperties.md).
45+
If the values of `allocatedWidth` and `allocatedHeight` change after the first `updateView` is called, then a subsequent `updateView` is called with "layout" added to the `context.updatedProperties`. More information: [UpdatedProperties](..\updatedproperties.md).
4646

4747
## Available for
4848

powerapps-docs/developer/data-platform/TOC.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -251,6 +251,8 @@
251251
- name: Activity tables
252252
href: activity-entities.md
253253
items:
254+
- name: Activities data model and storage
255+
href: activities-data-model-storage.md
254256
- name: Custom activities
255257
href: custom-activities.md
256258
- name: Email activity tables
@@ -434,6 +436,12 @@
434436
href: xrm-tooling/
435437
- name: Discover user organizations
436438
href: discovery-service.md
439+
- name: "Sample: Global Discovery Service"
440+
href: sample-global-discovery-service-csharp.md
441+
- name: "Sample: Blazor WebAssembly with Global Discovery"
442+
href: sample-blazor-web-assembly-global-discovery.md
443+
- name: "Sample: Global Discovery Service with CrmServiceClient"
444+
href: sample-discovery-service-crmserviceclient.md
437445
- name: Tutorials
438446
items:
439447
- name: "Tutorial: Register an app with Azure Active Directory"
Lines changed: 112 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,112 @@
1+
---
2+
title: "Activities data model and storage | MicrosoftDocs"
3+
description: "This article will help you understand the activities data model and its impact on storage capacity."
4+
ms.custom: ""
5+
ms.date: 07/18/2022
6+
ms.reviewer: mduelae
7+
ms.topic: "article"
8+
author: DanaMartens
9+
ms.subservice: dataverse-developer
10+
ms.author: dmartens
11+
search.audienceType:
12+
- developer
13+
search.app:
14+
- PowerApps
15+
- D365CE
16+
---
17+
18+
# Activities data model and storage
19+
20+
Activity tables (formerly entities) such as email, phone call, and appointment are stored in the Microsoft Dataverse database with a more sophisticated data model compared to standard tables, which are usually stored in one database table. This article will help you understand the activities data model and its impact on storage capacity. For more details regarding how activities are used, see [Activity tables](activity-entities.md).
21+
22+
## Activities underlying database tables
23+
24+
Activity rows are saved in the Dataverse database across multiple underlying tables. Each activity table stores corresponding rows of data in a base table (ActivityPointerBase) and an extension table that is dedicated for each specific activity type (EmailBase, TaskBase, AppointmentBase, etc.).
25+
26+
### ActivityPointerBase
27+
28+
This table is the base table for each activity in the system. The creation of any activity such as an email, phone call, appointment, or custom activity will create a corresponding row in this table. Because this table contains one row for every activity, it is expected this table may have many rows.
29+
30+
This table includes all default activity columns such as subject, description, owner, regarding, status, and many more. For a full list of the columns in this table, see [activitypointer EntityType](reference/entities/activitypointer.md). Because each of these columns are included in this base activity table and there is one row for every activity, this is often one of the largest consumers of data capacity. The description column is the same column used to store the email body for an email activity. Because an email body can include a lot of text, large emails can contribute to the growth in data capacity consumed by this table.
31+
32+
When you access a view such as My Activities or All Activities, the data is retrieved from the ActivityPointerBase table allowing you to see a single view of activities across multiple activity types.
33+
34+
Any activity in the system is retrievable using the specific activity schema name, and is also retrievable using the activitypointer schema, this functionality is useful when retrieving multiple activities of different activity types.
35+
36+
### ActivityPartyBase
37+
38+
This table contains the party information for each activity. Each activity party represents a person or group associated with an activity. Example: Assume you created an Appointment activity which has one organizer, one owner, two required attendees, one optional attendee, and one regarding object. There would be six corresponding rows stored in this table. Another example of activity parties are all the people on an email activity on the From, To, and Cc lines.
39+
40+
More information: [ActivityParty table](activityparty-entity.md) and [activityparty EntityType](reference/entities/activityparty.md).
41+
42+
### ActivityMimeAttachment
43+
44+
This table contains the data to relate an attachment to an activity row.
45+
46+
More information: [activitymimeattachment EntityType ](reference/entities/activitymimeattachment.md)
47+
48+
### EmailSearchBase (internal use)
49+
50+
This table is used for email address resolution. It is for internal use only and contains rows for each email address in the system associated to an email address formatted column.
51+
52+
### EmailHashBase (internal use)
53+
54+
This table is used for [smart matching](/power-platform/admin/email-message-filtering-correlation) and contains hashes generated for each email message in the system.
55+
56+
More information: [Use email message filtering and correlation](/power-platform/admin/email-message-filtering-correlation) and [Disable Smart Matching EmailHashBase table population](https://community.dynamics.com/crm/b/crminthefield/posts/disable-smart-matching-emailhashbase-table-population-for-dataverse-environments)
57+
58+
### Difference between schema and storage
59+
60+
There is a difference between the schema exposed for individual activity tables and the underlying storage. Example: If you refer to the [email entity schema](reference/entities/email.md) accessible from SDK, all the table columns will be available and will be surfaced from different underlying tables (base table, extension table, activityparty table). However, most of these columns are stored in the base table (ActivityPointerBase), and only custom columns, if any, will be stored in the EmailBase table.
61+
62+
## FAQ
63+
64+
### ActivityPointerBase
65+
66+
#### Why does ActivityPointerBase have so many rows?
67+
68+
Please refer to the base table definition above for more details. There is one row for each activity in the system.
69+
70+
#### Why is ActivityPointerBase consuming so much storage?
71+
72+
One potential cause is having many rows which contributes to the overall table size. Another potential cause is the length of text in the description column. This is the same description column used for any activity such as the body of an email activity or the description of an appointment activity.
73+
74+
#### How can I reduce ActivityPointerBase table usage?
75+
76+
ActivityPointerBase contains data which was saved as users create activity rows such as emails, phone calls, tasks, and appointments. As users create more activities, the table will grow. The table contains data saved by users and does not contain any internal use data. You can reduce the space used for this table by deleting any old activities which are no longer needed.
77+
78+
### ActivityPartyBase
79+
80+
#### Why does ActivityPartyBase have so many rows?
81+
82+
There is one row for each activity participation. It’s easy to have many rows in this table, however the space utilized by these individual rows is minimal.
83+
84+
### Other Questions
85+
86+
#### Why does an activity extension table consume a lot of storage?
87+
88+
An extension table extends the base activity table (ActivityPointerBase) for a specific activity table such as Task and is used for storing the data for any custom columns. The Task table stores data for the default attributes inside the ActivityPointerBase table in the database. If you add custom attributes to the Task table, they will be saved in the TaskBase table in the database. An extension table will have rows only when there is a custom attribute defined for the specific activity. There could be cases where a text field which contains a lot of text is defined as custom activity attribute and could cause high storage usage. Please review the custom attributes defined and the content.
89+
90+
#### Where is the body (description) of an email stored?
91+
92+
The email body is stored in the description column of the ActivityPointerBase table. This attribute is retrievable from both schemas: email and activitypointerbase. However, the data isn't duplicated. It is just surfaced in two locations as needed.
93+
94+
## See also
95+
96+
97+
98+
99+
[!INCLUDE[footer-include](../../includes/footer-banner.md)]
100+
101+
102+
103+
104+
105+
106+
107+
108+
109+
110+
111+
112+

powerapps-docs/developer/data-platform/application-insights-ilogger.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
2-
title: "Write Telemetry to your Application Insights resource using ILogger (preview)(Microsoft Dataverse) | Microsoft Docs"
2+
title: "Write Telemetry to your Application Insights resource using ILogger (Microsoft Dataverse) | Microsoft Docs"
33
description: "When you enable Application Insights for your organization, any plug-ins written using the ILogger Interface provided in the SDK will write telemetry to your Application Insights resource."
4-
ms.date: 07/11/2022
4+
ms.date: 07/14/2022
55
author: divka78
66
ms.author: dikamath
77
manager: sunilg
@@ -21,7 +21,7 @@ contributors:
2121
# Write Telemetry to your Application Insights resource using ILogger
2222

2323
> [!IMPORTANT]
24-
> To use this capability you must first enable the Application Insights integration preview feature. More information: [Preview: Analyze model-driven apps and Microsoft Dataverse telemetry with Application Insights](/power-platform/admin/analyze-telemetry)<p/>
24+
> To use this capability you must first enable the Application Insights integration feature. More information: [Analyze model-driven apps and Microsoft Dataverse telemetry with Application Insights](/power-platform/admin/analyze-telemetry)<p/>
2525
> There is presently no support of `ILogger` within a plug-in profiling/debug session of the Plug-in Registration tool or the Power Platform Tools extension for Visual Studio.
2626
2727
When you enable Application Insights for your organization, any plug-ins written using the [ILogger Interface](/dotnet/api/microsoft.xrm.sdk.plugintelemetry.ilogger) provided in the Organization Service SDK assemblies will write telemetry to your Application Insights resource.

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
@@ -109,7 +109,7 @@ The `CascadeConfiguration` (<xref:Microsoft.Xrm.Sdk.Metadata.CascadeConfiguratio
109109
### About the assign action
110110
The assign action allows the owner, the Owning Business Unit or both owner and business unit updates to be cascaded down to all child records when the parent record is updated.
111111

112-
#### Allowed record ownership across business unites not enabled
112+
#### Allowed record ownership across business units not enabled
113113
When the [allow record ownership across business units](/power-platform/admin/wp-security-cds#to-enable-this-matrix-data-access-structure-preview) is not enabled, the Owning Business Unit column can't be explicitly updated when changing the record’s owner. The following lists the cascading behaviors when the parent’s record owner is updated.
114114

115115
If you update the owner:
@@ -125,7 +125,7 @@ If you update the owner:
125125
- Child records’ owner is not updated (no cascade)
126126
- Child records’ business unit is not updated (no cascade)
127127

128-
#### Allowed record ownership across business unites is enabled
128+
#### Allowed record ownership across business units is enabled
129129
When [allow record ownership across business units](/power-platform/admin/wp-security-cds#to-enable-this-matrix-data-access-structure-preview) is enabled,
130130
the Owning Business Unit column can be explicitly updated when changing the record’s owner. The following lists the cascading behaviors when the parent’s record owner and/or the business unit is updated.
131131

0 commit comments

Comments
 (0)