Skip to content

Commit 27b81cb

Browse files
committed
Merge branch 'main' into users/dasuss/AddQueryPerfDocs
2 parents 5992bbc + 8ddbf6e commit 27b81cb

Some content is hidden

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

41 files changed

+1249
-67
lines changed

powerapps-docs/developer/data-platform/bypass-custom-business-logic-preview.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -287,7 +287,7 @@ Use this FetchXml query to return `step.sdkmessageprocessingstepid` values you c
287287

288288
### Limit to the number of steps
289289

290-
To ensure that the parameter size isn't too large, the default limit on the number of steps you can pass is three. The limit is controlled using data in the [Organization table OrgDbOrgSettings column](reference/entities/organization.md#BKMK_OrgDbOrgSettings). Don't try to edit this value yourself. Use the [OrgDBOrgSettings tool for Microsoft Dynamics CRM](https://support.microsoft.com/topic/orgdborgsettings-tool-for-microsoft-dynamics-crm-20a10f46-2a24-a156-7144-365d49b842ba) or [OrgDbOrgSettings app](https://github.com/seanmcne/OrgDbOrgSettings?tab=readme-ov-file#where-to-find-the-releases) to change the `BypassBusinessLogicExecutionStepIdsLimit` value.
290+
To ensure that the parameter size isn't too large, the default limit on the number of steps you can pass is three. The limit is controlled using data in the [Organization table OrgDbOrgSettings column](reference/entities/organization.md#BKMK_OrgDbOrgSettings). Use the [OrgDBOrgSettings tool for Microsoft Dynamics CRM](https://support.microsoft.com/topic/orgdborgsettings-tool-for-microsoft-dynamics-crm-20a10f46-2a24-a156-7144-365d49b842ba) or [OrgDbOrgSettings app](https://github.com/seanmcne/OrgDbOrgSettings?tab=readme-ov-file#where-to-find-the-releases) to change the `BypassBusinessLogicExecutionStepIdsLimit` value.
291291

292292
The maximum recommended size for this limit is 10 steps.
293293

powerapps-docs/developer/data-platform/fetchxml/optimize-performance.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ If you select many lookup and computed columns, and you're experiencing performa
2929
Using the `latematerialize` attribute might not always provide a performance benefit. It might make simple queries run more slowly. It's most beneficial when your query:
3030

3131
- Has many joins
32-
- Contains many columns lookup columns or computed columns
32+
- Contains many lookup or computed columns
3333

3434
## Query Hints
3535

powerapps-docs/developer/data-platform/media/whentousewebapi.svg

Lines changed: 359 additions & 0 deletions
Loading
Lines changed: 47 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: "Work with data using code in Microsoft Dataverse (PowerApps) | Microsoft Docs"
3-
description: "Microsoft Dataverse provides web services and APIs that you can use to interact with your data." # 115-145 characters including spaces. This abstract displays in the search result.
4-
ms.date: 03/24/2023
3+
description: "Microsoft Dataverse provides web services and APIs that you can use to interact with your data."
4+
ms.date: 05/20/2024
55
ms.reviewer: pehecke
66
ms.topic: article
77
author: divkamath # GitHub ID Temp owner
@@ -15,45 +15,70 @@ contributors:
1515
---
1616
# Work with data using code in Microsoft Dataverse
1717

18-
[!INCLUDE[cc-terminology](includes/cc-terminology.md)]
18+
There are several different ways to access Dataverse data using code.
1919

20-
Dataverse has [tables](entities.md) that are used to model and manage business data. You can use the stock provided tables or define your own custom tables to store data.
20+
- Use the Dataverse [SDK for .NET](#sdk-for-net) or [Web API](#web-api) to retrieve, add, and modify data.
21+
- Use [Dataverse search](#search-dataverse-data) search Dataverse data.
22+
- Use the Dataverse Tabular Data Stream (TDS) endpoint to [query data with SQL](#query-data-with-sql).
2123

22-
Dataverse also has APIs known as *messages*. Messages define a set of input parameters and output properties to encapsulate logic that executes on the server. Each message has a name. If you come from a SQL database background, you can think of these like SQL stored procedures. You can use messages that Dataverse provides or you can create your own messages.
24+
This article introduces the options you have to work with Dataverse data using code.
2325

24-
## Use web services to work with data
26+
<!--
27+
Use Dataverse tables to model and manage business data. You can use [existing tables](reference/about-entity-reference.md) and customize them, or [create your own custom tables](../../maker/data-platform/create-edit-entities-portal.md) to store data.
2528
26-
Dataverse provides two ways to work with data: Web API & SDK for .NET. Choose the one that best matches the requirement and your skills.
29+
Dataverse also has APIs known as *messages*. Each message has a name like `Create`, `Delete`, or `WhoAmI`. Messages define a set of input parameters and output properties to encapsulate logic that executes on the server. If you come from a SQL database background, you can think of these like SQL stored procedures. You can use messages that Dataverse provides or you can [create your own messages](custom-actions.md).
30+
-->
2731

28-
<!--![Flow diagram to choose web service.](media/whentousewebapi.png)-->
32+
## Retrieve, add, and modify data
2933

30-
### Web API
31-
32-
The Web API is an OData v4 RESTful endpoint. Use the Web API for any programming language that supports HTTP requests and authentication using OAuth 2.0.
34+
Dataverse provides two ways to retrieve, add, and modify data: SDK for .NET & Web API. Choose the one that best matches the requirements, your skills, and preferences.
3335

34-
More information: [Use the Dataverse Web API](webapi/overview.md)
36+
:::image type="content" source="media/whentousewebapi.svg" alt-text="Flow diagram to choose programming style":::
3537

3638
### SDK for .NET
3739

38-
Use classes provided in the Dataverse SDK for .NET assemblies for custom apps, or for extending Dataverse operations using custom plug-ins and workflow activities. The Dataverse SDK for .NET supports build targets for both .NET Framework and .NET 6+. However, plug-in and custom workflow activities must be coded using .NET Framework.
40+
If you are working with .NET, we recommend using our [SDK for .NET](org-service/overview.md).
3941

40-
More information: [Use the Dataverse SDK for .NET](org-service/overview.md)
42+
- Use the [ServiceClient class](/dotnet/api/microsoft.powerplatform.dataverse.client.serviceclient) in the [DataverseServiceClient NuGet package](https://www.nuget.org/packages/Microsoft.PowerPlatform.Dataverse.Client/) if you have a client application.
43+
- Use the [Microsoft.CrmSdk.CoreAssemblies NuGet package](https://www.nuget.org/packages/Microsoft.CrmSdk.CoreAssemblies/) when you are writing a plug-in or custom workflow activity.
4144

42-
> [!NOTE]
43-
> Use the Xrm.Tooling assemblies if you want to use the SDK for .NET using our PowerShell module or are creating a Windows client application and you want to use our custom login control. More information: [Build Windows client applications using the XRM tools](xrm-tooling/build-windows-client-applications-xrm-tools.md)
45+
The Dataverse SDK for .NET supports build targets for both .NET Framework and .NET 6+. However, plug-in and custom workflow activities must use .NET Framework.
4446

45-
## Limitations
47+
If you are using our [PowerShell module](https://www.powershellgallery.com/packages/Microsoft.Xrm.Tooling.CrmConnector.PowerShell/) or using our [custom log-in control](xrm-tooling/use-xrm-tooling-common-login-control-client-applications.md) with a Windows client application, use the [the Xrm.Tooling](xrm-tooling/build-windows-client-applications-xrm-tools.md)
4648

47-
There's a 1-GB size limitation on the size of a response that Dataverse returns. Few APIs or queries are capable of returning this much data. If you encounter this limit, you should consider what other options are available to get the data in multiple, smaller requests.
49+
- [Use the SDK for .NET](org-service/overview.md)
50+
- [Quickstart: Execute an SDK for .NET request (C#)](org-service/quick-start-org-service-console-app.md)
4851

49-
The deprecated SOAP endpoint returns serialized XML data that is much more verbose than the serialized JSON data returned by the Web API. If you're using the deprecated SOAP endpoint, you should use the Web API equivalent operation. More information: [About the legacy SOAP endpoint](org-service/overview.md#about-the-legacy-soap-endpoint)
52+
### Web API
53+
54+
The Dataverse Web API is an OData v4 RESTful endpoint. Use the Web API for any programming language that supports HTTP requests and authentication using OAuth 2.0, including .NET.
55+
56+
- [Learn to use the Dataverse Web API](webapi/overview.md)
57+
- [Quick Start: Web API with PowerShell and Visual Studio Code](webapi/quick-start-ps.md)
58+
- [Quick Start: Web API sample (C#)](webapi/quick-start-console-app-csharp.md)
5059

51-
### Search
60+
61+
## Search Dataverse data
5262

5363
Dataverse search delivers fast and comprehensive search results across multiple tables, in a single list, sorted by relevance. It also provides capabilities to support suggestions and autocompletion experiences in apps.
5464

55-
Search has a native endpoint and there are Dataverse messages that you can use from the Web API or Organization service.
65+
Search has a native endpoint and there are Dataverse messages that you can use from the Web API or SDK for .NET.
66+
67+
[Learn to search for Dataverse records](search/overview.md)
5668

57-
More information: [Search for Dataverse records](search/overview.md)
69+
## Query data with SQL
70+
71+
The [Power Query Dataverse connector](/power-query/connectors/dataverse) uses the Dataverse Tabular Data Stream (TDS) endpoint to retrieve data using [Dataverse SQL](how-dataverse-sql-differs-from-transact-sql.md), a subset of Transact-SQL.
72+
73+
[Retrieving data using SQL Management Studio (SSMS)](dataverse-sql-query.md#sql-server-management-studio-preview) is a preview feature.
74+
75+
[Learn to use SQL to query data](dataverse-sql-query.md)
76+
77+
78+
## Limitations
79+
80+
There's a 1-GB size limitation on the size of a response that Dataverse returns. Few APIs or queries are capable of returning this much data. If you encounter this limit, you should consider what other options are available to get the data in multiple, smaller requests.
81+
82+
The deprecated SOAP endpoint returns serialized XML data that is much more verbose than the serialized JSON data returned by the Web API. If you're using the deprecated SOAP endpoint, you should use the Web API equivalent operation. More information: [About the legacy SOAP endpoint](org-service/overview.md#about-the-legacy-soap-endpoint)
5883

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

powerapps-docs/maker/TOC.yml

Lines changed: 22 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -686,6 +686,8 @@
686686
href: ./canvas-apps/set-aspect-ratio-portrait-landscape.md
687687
- name: Create responsive layout
688688
href: ./canvas-apps/create-responsive-layout.md
689+
- name: Understand app functionality through code view (preview)
690+
href: ./canvas-apps/code-view.md
689691
- name: Configure app functionality
690692
items:
691693
- name: Get started with formulas
@@ -2177,26 +2179,34 @@
21772179
href: "./data-platform/powerapps-checker/rules/web/use-relative-uri.md"
21782180
- name: "use-utility-dialogs"
21792181
href: "./data-platform/powerapps-checker/rules/web/use-utility-dialogs.md"
2182+
- name: Work with catalogs (preview)
2183+
items:
2184+
- name: Catalog overview
2185+
href: ./data-platform/catalog-overview.md
2186+
- name: View, submit, and install catalog items
2187+
href: ./data-platform/submit-acquire-from-catalog.md
21802188
- name: Work with dataflows
21812189
href: ./data-platform/self-service-data-prep-with-dataflows.md
21822190
items:
21832191
- name: Create and use dataflows
21842192
href: ./data-platform/create-and-use-dataflows.md
2185-
- name: License requirements for tables
2186-
href: ./data-platform/data-platform-entity-licenses.md
2187-
items:
2188-
- name: Complex tables and licensing
2189-
href: ./data-platform/data-platform-complex-entities.md
2190-
- name: Restricted tables requiring Dynamics 365 licenses
2191-
href: ./data-platform/data-platform-restricted-entities.md
2192-
- name: Use Power BI with Dataverse
2193+
- name: Get insights from Dataverse data
21932194
items:
21942195
- name: Overview
2196+
href: ./data-platform/data-get-insights-overview.md
2197+
- name: Power BI with Dataverse
21952198
href: ./data-platform/use-powerbi-dataverse.md
21962199
- name: Create a Power BI report
21972200
href: ./data-platform/data-platform-powerbi-connector.md
21982201
- name: View table data in Power BI Desktop
21992202
href: ./data-platform/view-entity-data-power-bi.md
2203+
- name: License requirements for tables
2204+
href: ./data-platform/data-platform-entity-licenses.md
2205+
items:
2206+
- name: Complex tables and licensing
2207+
href: ./data-platform/data-platform-complex-entities.md
2208+
- name: Restricted tables requiring Dynamics 365 licenses
2209+
href: ./data-platform/data-platform-restricted-entities.md
22002210
- name: SharePoint, OneNote, and OneDrive integration
22012211
href: ./data-platform/sharepoint-onedrive-onenote-intro.md
22022212
- name: Translate customized table and column text
@@ -2207,12 +2217,14 @@
22072217
href: ./model-driven-apps/privileges-required-customization.md
22082218
- name: API limits overview
22092219
href: ./data-platform/api-limits-overview.md
2210-
- name: Get experimental features early (preview)
2220+
- name: Get preview features early (preview)
22112221
items:
22122222
- name: Use the Dataverse accelerator
22132223
href: ./data-platform/dataverse-accelerator/dataverse-accelerator.md
22142224
- name: Monitor plug-ins
22152225
href: ./data-platform/dataverse-accelerator/plugin-monitoring.md
2226+
- name: Explore the Dataverse Web API
2227+
href: ./data-platform/dataverse-accelerator/api-playground.md
22162228
- name: For admins
22172229
items:
22182230
- name: Security in Dataverse
@@ -2235,7 +2247,7 @@
22352247
href: ./data-platform/azure-synapse-link-troubleshooting-guide.md
22362248
- name: Receive Azure Synapse Link for Dataverse notifications
22372249
href: ./data-platform/azure-synapse-link-notifications.md
2238-
- name: Transtion from legacy data generation services
2250+
- name: Transtion from legacy data integration services
22392251
href: ./data-platform/azure-synapse-link-transition-from-FnO.md
22402252
- name: FAQ about Azure Synapse Link
22412253
href: ./data-platform/export-data-lake-faq.yml
Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
---
2+
title: Understand your app's functionality through code view (preview)
3+
description: Understanding app functionality through code view for canvas apps.
4+
author: marcelbf
5+
6+
ms.custom: canvas
7+
ms.collection: get-started
8+
ms.topic: conceptual
9+
ms.reviewer: mkaur
10+
ms.date: 5/14/2024
11+
ms.subservice: canvas-maker
12+
ms.author: marcelbf
13+
search.audienceType:
14+
- maker
15+
- developer
16+
---
17+
# Understand app functionality through code view (preview)
18+
19+
[This article is prerelease documentation and is subject to change.]
20+
21+
Use code view to see your app's underlying code to better understand the app's functionality. Each control on the screen has a code representation that uses a format that is a subset of YAML and an improvement from the [YAML formula grammar](/power-platform/power-fx/yaml-formula-grammar).
22+
23+
With code view you can:
24+
25+
- See a code representation of each control on your screen.
26+
- Copy a control as code and share outside of Power Apps Studio.
27+
- Copy an paste a control as code and create new control based on the copied code.
28+
29+
> [!IMPORTANT]
30+
> - Format is subjected to change. We don’t guarantee compatibility with the final version.
31+
> - The current code format isn't suitable to source control during the preview period.
32+
33+
## Prerequisites
34+
35+
The Power Fx formula bar must be turned on to view the code for a control.
36+
37+
The formula bar is **ON** by default for new apps. For existing apps, follow these steps to turn on the Power Fx formula bar:
38+
- Open our app in Power Apps Studio, select **Settings** > **Upcoming features** > **Preview** > set the **Power Fx formula bar** toggle to **ON**.
39+
40+
41+
## View, copy, and paste code
42+
43+
The **View code** feature shows the code for the selected control and all underlying controls. You can also use the shortcut **Ctrl + F** to find a specific string in the code.
44+
45+
Follow these steps to view, copy, and paste the code for a control:
46+
47+
1. Open your app for [editing](edit-app.md) in Power Apps Studio.
48+
1. **Right-click** on the control in the **Tree view** or on the screen or and then select, **View code (preview)**.
49+
50+
:::image type="content" source="media/code-view/view-code.png" alt-text="View code for a control":::
51+
52+
1. Select **Copy code** and then paste the copied code into any window outside of your browser.
53+
54+
1. To generate a new control from the copied code, right-click on the control where you want to create a new control and the select, **Paste code (preview)**.
55+
56+
:::image type="content" source="media/code-view/paste-code.png" alt-text="Paste code ":::
57+
58+
59+
You must use the YAML format that's generated by Power Apps Studio. The code also goes through validation check before it's created.
60+
61+
## Know limitations
62+
63+
* You can't copy and paste and there’s no code view for the **App Object**.
64+
* You can’t edit the code in the code view.
65+
* You can only copy controls that are on a screen. Copying a screen isn't supported.
66+
67+
This article provides an overview of working with formulas. For more detailed information about functions, operators, and other building blocks, see [Formula reference](formula-reference.md).
68+
69+
### See also
70+
71+
[YAML format](/power-platform/power-fx/yaml-formula-grammar)
72+
[Formula bar](formula-bar-find-replace.md)
73+
[Use Find and Replace capability in the formula bar](formula-bar-find-replace.md)
74+
75+
[!INCLUDE[footer-include](../../includes/footer-banner.md)]
Loading
Loading

powerapps-docs/maker/common/responsible-ai-overview.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: FAQ about using AI responsibly in Power Apps
33
description: Find FAQ about how to use copilot AI responsibly with Power Apps to build apps through conversation, generate app descriptions, edit apps, and more.
4-
ms.date: 05/15/2024
4+
ms.date: 05/31/2024
55
ms.custom:
66
- responsible-ai-faqs
77
- ai-gen-docs-bap
@@ -45,3 +45,4 @@ ms.collection:
4545
- [FAQs about using Copilot with Power Fx](./faqs-copilot-powerfx.md)
4646
- [Use field suggestions by Copilot](../canvas-apps/ai-field-suggestions.md)
4747
- [FAQs for field suggestions by Copilot](faq-field-suggestions.md)
48+
- [FAQ about filtering, sorting, and searching canvas galleries with Copilot](faq-filter-with-copilot.md)

0 commit comments

Comments
 (0)