You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Often applications need to ingest large amount of data into Dataverse in a short amount of time. Dataverse has a group of messages that are designed to achieve high throughput. With elastic tables, the throughput can be much higher.
17
+
Often applications need to ingest large amount of data into Dataverse in a short amount of time. Dataverse has a group of messages that are designed to achieve high throughput. With elastic tables, the throughput can be higher.
18
18
19
-
Bulk operations are optimized for performance when executing multiple write operations on the same table by taking a batch of rows as input in a single write operation. For elastic tables, we recommend sending 100 items in a batch. Multiple bulk operation can be run in parallel to achieve high throughput. More information [Send parallel requests](send-parallel-requests.md)
19
+
Bulk operations are optimized for performance when executing multiple write operations on the same table by taking a batch of rows as input in a single write operation. For elastic tables, we recommend sending 100 items in a batch. Multiple bulk operations can be run in parallel to achieve high throughput. More information [Send parallel requests](send-parallel-requests.md)
20
20
21
21
Elastic tables currently support the following messages for bulk operations:
22
22
@@ -183,6 +183,32 @@ public static OrganizationResponse DeleteMultiple(IOrganizationService service)
183
183
}
184
184
```
185
185
186
+
## Exception handling for elastic tables
187
+
188
+
Unlike standard tables, an error within a bulk operation with an elastic table doesn't roll back the entire request. It's possible for the operation to partially succeed and you can detect which records have failed from the ErrorDetails.
189
+
190
+
191
+
When you use the SDK, a [FaultException](xref:System.ServiceModel.FaultException%601) of type [OrganizationServiceFault](xref:Microsoft.Xrm.Sdk.OrganizationServiceFault) is thrown if a failure occurs. You can get the status of each record using the following code.
192
+
193
+
```csharp
194
+
if (ex.Detail.ErrorDetails.TryGetValue("Plugin.BulkApiErrorDetails", outobjecterrorDetails))
When using Web API, you need to pass the `Prefer` header with value `odata.include-annotations=*` or `odata.include-annotations=Microsoft.PowerApps.CDS.ErrorDetails.*`, which gives the status of each record. More information: [Include more details with errors](webapi/compose-http-requests-handle-errors.md#include-more-details-with-errors)
208
+
209
+
> [!NOTE]
210
+
> You can see the errors in the above format only when the errors have occurred while writing data and cannot capture errors occurred in Pre and Post plugins. More information: [Handling Exceptions](write-plugin-multiple-operation.md#handling-exceptions).
Copy file name to clipboardExpand all lines: powerapps-docs/developer/data-platform/files-images-overview.md
+6-6Lines changed: 6 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -35,7 +35,7 @@ Dataverse provides several different ways to save binary data representing files
35
35
36
36
## Block certain types of files
37
37
38
-
You can block the types of files that can be uploaded by the extension or mime type.
38
+
You can block the types of files that can be uploaded by the extension or MIME type.
39
39
40
40
### Block files by extension
41
41
@@ -111,9 +111,9 @@ When anyone tries to upload a file using one of the blocked types, the following
111
111
> Number: `-2147205623`<br />
112
112
> Message: `The attachment is either not a valid type or is too large. It cannot be uploaded or downloaded.`
113
113
114
-
### Block or allow certain mime types
114
+
### Block or allow certain MIME types
115
115
116
-
You can block or allow upload of files based on mime types. More Information: [Mime Type Validation](/power-platform/admin/settings-privacy-security#mime-type-validation).
116
+
You can block or allow upload of files based on MIME types. More Information: [Mime Type Validation](/power-platform/admin/settings-privacy-security#mime-type-validation).
117
117
118
118
You can also query and modify this data programmatically. It's stored in the [Organization.BlockedMimeTypes](reference/entities/organization.md#BKMK_BlockedMimeTypes) and [Organization.AllowedMimeTypes](reference/entities/organization.md#BKMK_AllowedMimeTypes) columns. There's only one row in the organization table. You can use the SDK or Web API to query this data:
119
119
@@ -165,15 +165,15 @@ OData-Version: 4.0
165
165
}
166
166
```
167
167
168
-
If `allowedmimetypes` is set, `blockedmimetypes` is ignored. Only the mime types specified in `allowedmimetypes` are allowed.
168
+
If `allowedmimetypes` is set, `blockedmimetypes` is ignored. Only the MIME types specified in `allowedmimetypes` are allowed.
169
169
170
-
If `blockedmimetypes` isn't empty and `allowedmimetypes` is empty, the following error occurs when someone tries to upload a mime type that is in blocked mime types:
170
+
If `blockedmimetypes` isn't empty and `allowedmimetypes` is empty, the following error occurs when someone tries to upload a MIME type that is in blocked MIME types:
171
171
172
172
> Name: `MimeTypeBlocked`<br />
173
173
> Code: `0x80072522`<br />
174
174
> Message: `Operation not allowed as mime type image/svg+xml is blocked.`
175
175
176
-
If `allowedmimetypes` isn't empty, the following error occurs when someone tries to upload a mime type that isn't in `allowedmimetypes`:
176
+
If `allowedmimetypes` isn't empty, the following error occurs when someone tries to upload a MIME type that isn't in `allowedmimetypes`:
Copy file name to clipboardExpand all lines: powerapps-docs/developer/data-platform/org-service/samples/azure-aware-custom-plugin.md
+11-3Lines changed: 11 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,7 @@
1
1
---
2
2
title: "Azure aware custom plug-in (Microsoft Dataverse) | Microsoft Docs"# Intent and product brand in a unique string of 43-59 chars including spaces
3
3
description: "This sample plug-in can post the pipeline execution context to the Azure Service Bus."# 115-145 characters including spaces. This abstract displays in the search result.
4
-
ms.date: 04/03/2022
4
+
ms.date: 06/19/2023
5
5
author: jaredha
6
6
ms.author: jaredha
7
7
ms.reviewer: jdaly
@@ -20,10 +20,18 @@ The plug-in demonstrates how to obtain the execution context and the tracing ser
20
20
## How to run this sample
21
21
22
22
1. Download or clone the [Samples](https://github.com/Microsoft/PowerApps-Samples) repo so that you have a local copy.
23
-
2. Open the sample solution in Visual Studio and sign the assembly with a key.
24
-
3. Register the plug-in using the **Plugin Registration Tool**.
23
+
1. Open the `Azureplugin.sln` solution file located at `PowerApps-Samples\dataverse\orgsvc\C#\Azureplugin` with Visual Studio.
24
+
1. Sign the assembly with a key.
25
+
1. Register the plug-in using the **Plugin Registration Tool**.
25
26
26
27
> [!NOTE]
27
28
> This sample requires a service endpoint to be created first, and its ID passed to the plug-in constructor through the unsecure configuration parameter when the plug-in step is registered.
28
29
30
+
More information:
31
+
32
+
[Write a custom Azure-aware plug-in](../../write-custom-azure-aware-plugin.md)
Copy file name to clipboardExpand all lines: powerapps-docs/developer/data-platform/write-custom-azure-aware-plugin.md
+6-5Lines changed: 6 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,7 @@
1
1
---
2
2
title: "Write a custom Azure-aware plug-in (Microsoft Dataverse) | Microsoft Docs"
3
3
description: "Learn how to write plug-in code that can post a message or the execution context of the current database transaction to the Azure Service Bus."
4
-
ms.date: 04/03/2022
4
+
ms.date: 06/19/2023
5
5
author: divkamath
6
6
ms.author: dikamath
7
7
ms.reviewer: pehecke
@@ -132,10 +132,11 @@ For a plug-in registered to execute asynchronously, the <xref:Microsoft.Xrm.Sdk.
132
132
133
133
### See also
134
134
135
-
[Azure extensions for Dynamics 365](azure-integration.md)<br />
136
-
[Send Dynamics 365 data over the Microsoft Azure Service Bus](work-data-azure-solution.md)<br />
Copy file name to clipboardExpand all lines: powerapps-docs/limits-and-config.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -101,7 +101,7 @@ This list identifies all services to which Power Apps communicates and their usa
101
101
| 127.0.0.1 | http | Power Apps Mobile|
102
102
| ecs.office.com | https | Retrieve feature flags for Power Apps |
103
103
| config.edge.skype.com | https | Retrieve feature flags for Power Apps (backup)|
104
-
|\*.api.powerplatform.com | https | Required for Power Platform API connectivity used internally by Microsoft products, and Power Platform [programmability and extensibility](/power-platform/admin/programmability-extensibility-overview).|
104
+
|api.powerplatform.com<br>\*.api.powerplatform.com | https | Required for Power Platform API connectivity used internally by Microsoft products, and Power Platform [programmability and extensibility](/power-platform/admin/programmability-extensibility-overview).|
105
105
|*.sharepointonline.com| https | Retrieve assets for presenting the header that appears at the top of app playing experiences |
Copy file name to clipboardExpand all lines: powerapps-docs/maker/canvas-apps/connections-list.md
+18-14Lines changed: 18 additions & 14 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -110,29 +110,33 @@ This type of connection isn't secure because it doesn't rely on end-user authent
110
110
111
111
In SQL Server, this type of connection is called **SQL Server Authentication**. Many other database data sources provide a similar capability. When you publish your application, your users don't need to supply a unique user name and password. They're using the user name and password you supply when you author the application. The connection authentication to the data source is **Implicitly Shared** with your users. Once the application is published, the connection is also published and available to your users. Your end users can also create applications using any connection using SQL Server authentication that is shared with them. Your users can't see the user name or password, but the connection will be available to them. **There are valid scenarios for this type of connection. For instance if you have a read-only database that is available to everyone in the company. Reference data scenarios (for example, a corporate calendar) can be useful for this kind of connection.** More information: [Use Microsoft SQL Server securely with Power Apps](connections/sql-server-security.md)
112
112
113
-
### Secure Implicit Connections (experimental)
114
-
Power Apps now has support for **[Secure implicit connections (experimental)](working-with-experimental-preview.md)**. The secure implicit shared connections are more secure than the existing implicit connections. Power Apps implicitly shared connections are ones that use a fixed credential such as a SQL Server connection string rather than the end user's specific credentials such as AAD. With this feature, connections are no longer directly shared with the users of Power Apps. Instead, a proxy connection object that only grants access to the underlying resource such as a specific SQL server table is shared. End user authors can't create new applications with either the connection or the proxy connection. This feature also limits the end user to such actions as **get**, **put/patch**, and **delete** that are defined in the corresponding app. The result is that end users who are also authors can't create new applications with either the connection or the proxy connection object.
113
+
### Secure Implicit Connections (preview)
115
114
116
-
While in preview, an app author must opt-in to use this feature. Eventually, this feature will be on for all apps. With the experimental preview switch turned on for a given Power Apps app, all implicit connections in the app will automatically use this feature.
115
+
[This section is prerelease documentation and is subject to change.]
117
116
118
-
#### Enable secure implicit connections for new app
117
+
Power Apps now has full preview support for **[Secure implicit connections](working-with-experimental-preview.md)**. The default setting for this feature is **On**. The secure implicit shared connections are more secure than the existing implicit connections. Power Apps implicitly shared connections are ones that use a fixed credential such as a SQL Server connection string rather than the end user's specific credentials such as AAD. With this feature, connections are no longer directly shared with the users of Power Apps. Instead, a proxy connection object that only grants access to the underlying resource such as a specific SQL server table is shared. End user authors can't create new applications with either the connection or the proxy connection. This feature also limits the end user to such actions as **get**, **put/patch**, and **delete** that are defined in the corresponding app. The result is that end users who are also authors can't create new applications with either the connection or the proxy connection object.
119
118
120
-
Sign in to [Power Apps](https://make.powerapps.com) and create a new app that uses an implicitly shared connection:
119
+
> [!NOTE]
120
+
> **Secure implicit connections** is now **On** by default for new apps.
121
+
122
+
#### Notification to update your apps
123
+
If you have applications that may be upgraded to use this feature then you will see a message on the Apps page. It will indicate the number of apps that need your attention.
124
+
125
+
> [!div class="mx-imgBorder"]
126
+
> 
127
+
128
+
Select the link and it will open a side panel that will list all of the apps that need attention.
121
129
122
-
1. In Power Apps Studio, on the command bar, select **Settings** > **Upcoming features**.
123
-
2. Select the **Experimental** tab.
124
-
3. Set the toggle for **Secure implicit connections** to **On**
- To verify the feature works correctly, share the app with a different user who isn't an owner. Once you have shared the app, check the **Connections** list in the **Dataverse** tab in [Power Apps](https://make.powerapps.com) for that user. Verify that the user doesn't have a connection available.
148
152
@@ -157,7 +161,7 @@ When your app is republished and shared, then end-users won't have access to the
157
161
158
162
#### Limitations
159
163
160
-
1. All types of implicitly shared connection work such as action and tabular.
164
+
1. All types of implicitly shared connections work such as action and tabular.
161
165
2. Server and database names are hidden in network traces but visible in the consent dialog. Column names are not hidden.
162
166
3. For tabular connectors, we only limit CRUD actions such as Get, Post, Put, or Delete. If you have permissions to **Put** then you have access to **Post**.
163
167
4. Action based connectors limit based on the specific API being used in the application.
Copy file name to clipboardExpand all lines: powerapps-docs/maker/canvas-apps/create-component.md
+3Lines changed: 3 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -52,6 +52,9 @@ Components available inside the app are listed under the **Custom** category in
52
52
53
53
A component can receive input values and emit data if you create one or more custom properties. These scenarios are advanced and require you to understand [formulas](formula-reference.md) and binding contracts.
54
54
55
+
> [!NOTE]
56
+
> An experimental feature for enhanced component properties provides even more options for properties, including functions and behavior functions. For more information, see [Canvas component properties (experimental)](./component-properties.md)
57
+
55
58
**Input property** is how a component receives data to be used in the component. Input properties appear in the **Properties** tab of the right-hand pane if an instance of the component is selected. You can configure input properties with expressions or formulas, just as you configure standard properties in other controls. Other controls have input properties, such as the **Default** property of a **Text input** control.
56
59
57
60
**Output property** is used to emit data or component state. For example, the **Selected** property on a **Gallery** control is an output property. When you create an output property, you can determine what other controls can refer to the component state.
Environments can be managed using [Power Platform admin center](/power-platform/admin/environments-overview#manage-environments-in-the-power-platform-admin-center).
138
+
137
139
### Notifications
138
140
139
141
Select the bell icon to see notifications. Notifications are stored in the notification center until you dismiss them or when they expire.
0 commit comments