Skip to content

Commit bffe412

Browse files
committed
Merge branch 'master' into portal-simplified-auth-1784365
2 parents dc57e5b + 938b238 commit bffe412

File tree

257 files changed

+4283
-553
lines changed

Some content is hidden

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

257 files changed

+4283
-553
lines changed

.openpublishing.redirection.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1635,6 +1635,11 @@
16351635
"source_path": "powerapps-docs/maker/common-data-service/view-download-developer-resources.md",
16361636
"redirect_url": "https://docs.microsoft.com/powerapps/developer/common-data-service/view-download-developer-resources",
16371637
"redirect_document_id": true
1638+
},
1639+
{
1640+
"source_path": "powerapps-docs/developer/common-data-service/use-web-services.md",
1641+
"redirect_url": "https://docs.microsoft.com/powerapps/developer/common-data-service/work-with-data-cds",
1642+
"redirect_document_id": true
16381643
}
16391644
]
16401645
}

powerapps-docs/developer/common-data-service/api-limits.md

Lines changed: 278 additions & 102 deletions
Large diffs are not rendered by default.

powerapps-docs/developer/common-data-service/impersonate-another-user.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: "Impersonate another user (Common Data Service) | Microsoft Docs" # Intent and product brand in a unique string of 43-59 chars including spaces
33
description: "Use impersonation to execute business logic on behalf of another Common Data Service user to provide a desired feature or service using the appropriate role and object-based security of that impersonated user." # 115-145 characters including spaces. This abstract displays in the search result.
44
ms.custom: ""
5-
ms.date: 10/31/2018
5+
ms.date: 04/07/2020
66
ms.reviewer: "pehecke"
77
ms.service: powerapps
88
ms.topic: "article"
@@ -46,7 +46,7 @@ More information: [Build web applications using Server-to-Server (S2S) authentic
4646

4747
## Impersonate another user using the Web API
4848

49-
To impersonate a user, add a request header named `MSCRMCallerID` with a GUID value equal to the impersonated user’s `systemuserid` before sending the request to the web service.
49+
To impersonate a user, add a request header named `CallerObjectId` with a GUID value equal to the impersonated user's Azure Active Directory (AAD) object id before sending the request to the web service. The user's AAD object id is included in the [SystemUser.AzureActiveDirectoryObjectId](reference/entities/systemuser.md#BKMK_AzureActiveDirectoryObjectId).
5050

5151
More information: [Impersonate another user using the Web API](webapi/impersonate-another-user-web-api.md).
5252

@@ -70,3 +70,4 @@ More information: [Impersonate a user](impersonate-a-user.md).
7070
[Build web applications using Server-to-Server (S2S) authentication](build-web-applications-server-server-s2s-authentication.md)<br />
7171
[Impersonate another user using the Web API](webapi/impersonate-another-user-web-api.md)<br />
7272
[Write a plug-in](write-plug-in.md)
73+

powerapps-docs/developer/common-data-service/isv-app-management-appsource-checker.md

Lines changed: 17 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
title: Introduction to the AppSource checker | Microsoft Docs
3-
description: Learn how to use app source checker.
3+
description: Learn how to use AppSource checker
44
services: ''
55
suite: powerapps
66
documentationcenter: na
@@ -25,39 +25,41 @@ search.app:
2525

2626
[!INCLUDE [cc-beta-prerelease-disclaimer](../../includes/cc-beta-prerelease-disclaimer.md)]
2727

28-
AppSource checker allows an ISV to check the certification criteria of their app prior to [AppSource](https://appsource.microsoft.com/) submission. The checker will let you know if your solution file has errors that need to be corrected or if AppSource certification criteria have not been met.
28+
You can use the AppSource checker to verify whether your app has met certification criteria before you submit it to [AppSource](https://appsource.microsoft.com/). The checker lets you know whether your solution file has errors that need to be corrected and verifies whether AppSource certification criteria have been met.
2929

30-
In ISV Studio, an ISV can either upload a full [package](/powerapps/developer/common-data-service/package-deployer/create-packages-package-deployer) or solution(s) and be notified of any issues that need to be remediated. To do that:
30+
In ISV Studio, you can upload either a full [package](/powerapps/developer/common-data-service/package-deployer/create-packages-package-deployer) or solution(s). You'll be notified whether any issues need to be remediated.
3131

32-
1. In ISV Studio, select **AppSource checker** tab in the left and then select **Validate your app**.
32+
**To run AppSource checker**
33+
34+
1. In ISV Studio, select **AppSource checker** in the leftmost pane, and then select **Validate your app**.
3335

3436
> [!div class="mx-imgBorder"]
35-
> ![AppSource checker](media/appsource-checker.png)
37+
> ![AppSource checker](media/appsource-checker.png "AppSource checker")
3638
37-
2. Click on **Browse** to upload a solution file from your local machine and select **Run Check** to validate.
39+
2. Select **Browse** to upload a solution file from your local machine, and then select **Run Check**.
3840

3941
> [!div class="mx-imgBorder"]
40-
> ![AppSource checker](media/appsource-browse-solution-files.png)
42+
> ![Run check command](media/appsource-browse-solution-files.png "Run check command")
4143
4244
> [!NOTE]
43-
> If a user has previously uploaded a solution for validation then you will see a history of submissions instead of the screenshot above.
45+
> If you've previously uploaded a solution for validation, you'll see a history of submissions instead of the screenshot above.
4446
45-
3. Once the solution checker completes validating, a summary of results will be displayed along with the number of issues present (if any). Double-click on the solution file to see the issues in detail.
47+
3. After the validation check is complete, a summary of results is displayed with the number of issues found (if any). Double-click to select the solution file to see the issues in detail.
4648

4749
> [!div class="mx-imgBorder"]
48-
> ![AppSource checker](media/appsource-results-page.png)
50+
> ![Summary of AppSource checker results](media/appsource-results-page.png "Summary of AppSource checker results")
4951
50-
4. If the submission has no errors, you will see the following message:
52+
4. If the submission has no errors, you'll see the following message:
5153

5254
> [!div class="mx-imgBorder"]
53-
> ![AppSource checker](media/appsource-no-error-page.png)
55+
> ![AppSource checker success message](media/appsource-no-error-page.png "AppSource checker success message")
5456
55-
5. An ISV can download the validation report for their app and include it with their AppSource submission.
57+
Now you can download the validation report for your app and include it with your AppSource submission.
5658

57-
## See Also
59+
### See also
5860

5961
[Home page](isv-app-management-homepage.md)<br/>
6062
[App page](isv-app-management-apppage.md)<br/>
6163
[Tenant page](isv-app-management-tenantpage.md)<br/>
62-
[Connector Certification](isv-app-management-certification.md)
64+
[Connector certification](isv-app-management-certification.md)
6365

powerapps-docs/developer/common-data-service/isv-app-management-certification.md

Lines changed: 18 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
title: Connector certification from ISV Studio | Microsoft Docs
3-
description: Learn how to submit a custom connector for certification using ISV Studio.
3+
description: Learn how to submit a custom connector for certification by using ISV Studio.
44
services: ''
55
suite: powerapps
66
documentationcenter: na
@@ -21,40 +21,42 @@ search.app:
2121
- D365CE
2222
---
2323

24-
# Connector Certification
24+
# Connector certification
2525

26-
If you own a service, API, or built a custom connector that you want to connect to Power Apps, Power Automate, Azure Logic Apps, or Power Query, you need to submit your connector to Microsoft for certification.
26+
If you own a service or API&mdash;or you've built a custom connector that you want to connect to Power Apps, Power Automate, Azure Logic Apps, or Power Query&mdash;you need to submit your connector to Microsoft for certification.
2727

28-
Connector Certification is now in ISV Studio allowing the users to manage and track their connector certification submission. More information: [Get your connector certified](https://docs.microsoft.com/connectors/custom-connectors/submit-certification).
28+
Connector certification is now included in ISV Studio, so you can use it to manage and track your connector certification submission. More information: [Submit your connector for Microsoft certification](https://docs.microsoft.com/connectors/custom-connectors/submit-certification)
2929

30-
Before you start submitting your connector for certification, see the [Instructions on submitting your connector](https://docs.microsoft.com/connectors/custom-connectors/certification-submission) article for submission requirements.
30+
> [!NOTE]
31+
> Before you start submitting your connector for certification, see [Instructions on submitting your connector](https://docs.microsoft.com/connectors/custom-connectors/certification-submission) for submission requirements.
3132
32-
To certify your custom connector through ISV Studio:
33+
**To certify your custom connector through ISV Studio**
3334

34-
1. In ISV Studio, select **Connector certification** tab in the left pane.
35-
2. Select the type of connector to certify and click on **Submit**.
35+
1. In ISV Studio, select **Connector certification** in the leftmost pane.
36+
37+
2. Select the type of connector to certify, and then select **Submit**.
3638

3739
> [!div class="mx-imgBorder"]
38-
> ![Connector certification](media/connector-certification-submit.png)
40+
> ![Connector certification](media/connector-certification-submit.png "Connector certification")
3941
40-
3. In the **Connector submission** page, read the agreement details and check the **Accept terms** and click on **Next**.
42+
3. On the **Connector submission** page, read the agreement details, select the **Accept terms** check box, and then select **Next**.
4143

4244
> [!div class="mx-imgBorder"]
43-
> ![Connector certification Consent form](media/connector-certification-consent-form.png)
45+
> ![Consent form](media/connector-certification-consent-form.png "Consent form")
4446
4547
4. Select **Choose a file** to upload the custom connector from your local machine.
4648

4749
> [!div class="mx-imgBorder"]
48-
> ![Connector certification choose file](media/connector-certification-choose-file.png)
50+
> ![Choose file](media/connector-certification-choose-file.png "Choose file")
4951
50-
5. Enter the required details and click on **Submit for review**.
52+
5. Enter the required details, and then select **Submit for review**.
5153

5254
> [!div class="mx-imgBorder"]
53-
> ![Connector certification choose file](media/connector-certification-submit-for-review.png)
55+
> ![Submit for review](media/connector-certification-submit-for-review.png "Submit for review")
5456
55-
6. After you submit your connector for review, you'll receive an email from Microsoft.
57+
After you submit your connector for review, you'll receive an email from Microsoft.
5658

57-
## See Also
59+
### See also
5860

5961
[Home page](isv-app-management-homepage.md)<br/>
6062
[App page](isv-app-management-apppage.md)<br/>

powerapps-docs/developer/common-data-service/org-service/use-queryexpression-class.md

Lines changed: 20 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: "Use the QueryExpression class (Common Data Service) | Microsoft Docs" # Intent and product brand in a unique string of 43-59 chars including spaces
33
description: "Use the QueryExpression class to build complex queries for use with the IOrganizationService.QueryBase) method or the RetrieveMultipleRequest message" # 115-145 characters including spaces. This abstract displays in the search result.
44
ms.custom: ""
5-
ms.date: 10/31/2018
5+
ms.date: 04/17/2020
66
ms.reviewer: "pehecke"
77
ms.service: powerapps
88
ms.topic: "article"
@@ -21,18 +21,6 @@ In Common Data Service, you can use the <xref:Microsoft.Xrm.Sdk.Query.QueryExpre
2121

2222
The <xref:Microsoft.Xrm.Sdk.Query.QueryExpression> class lets you create complex queries. The <xref:Microsoft.Xrm.Sdk.Query.QueryByAttribute> class is designed to be a simple way to search for entities where attributes match specified values.
2323

24-
The following table lists the properties that you set to create a query expression.
25-
26-
|Property|Description|
27-
|--------------|-----------------|
28-
|<xref:Microsoft.Xrm.Sdk.Query.QueryExpression.EntityName>|Specifies which type of entity will be retrieved. A query expression can only retrieve a collection of one entity type.|
29-
|<xref:Microsoft.Xrm.Sdk.Query.QueryExpression.ColumnSet>|Specifies the set of attributes (columns) to retrieve.|
30-
|<xref:Microsoft.Xrm.Sdk.Query.QueryExpression.Criteria>|Specifies complex conditional and logical filter expressions that filter the results of the query.|
31-
|<xref:Microsoft.Xrm.Sdk.Query.QueryExpression.Distinct>|Specifies whether the results of the query contain duplicate records.|
32-
|<xref:Microsoft.Xrm.Sdk.Query.QueryExpression.LinkEntities>|Specifies the links between multiple entity types.|
33-
|<xref:Microsoft.Xrm.Sdk.Query.QueryExpression.Orders>|Specifies the order in which the records are returned from the query.|
34-
|<xref:Microsoft.Xrm.Sdk.Query.QueryExpression.PageInfo>|Specifies the number of pages and the number of records per page returned from the query.|
35-
3624
<a name="record_count"></a>
3725
## Record count
3826
To find out how many records the query returned, set the <xref:Microsoft.Xrm.Sdk.Query.PagingInfo.ReturnTotalRecordCount> property to true before executing the query. When you do this, the <xref:Microsoft.Xrm.Sdk.EntityCollection.TotalRecordCount> will be set. Otherwise, this value will be -1.
@@ -63,7 +51,25 @@ foreach (var a in result1.Entities)
6351
}
6452
Console.WriteLine("---------------------------------------");
6553
```
66-
54+
## Use SQL hints in a query
55+
56+
The <xref:Microsoft.Xrm.Sdk.Query.QueryExpression> class contains a property named <xref:Microsoft.Xrm.Sdk.Query.QueryExpression.QueryHints>. By setting this property to one of the supported string values shown below, you can provide a hint for generated SQL text which affects the query's execution.
57+
58+
|QueryHint value | SQL Query Option and Hint |
59+
|---------|---------|
60+
|OptimizeForUnknown | Optimize For Unknown|
61+
|ForceOrder | Force Order |
62+
|Recompile | Recompile |
63+
|DisableRowGoal | use hint(‘Disable_Optimizer_RowGoal’) |
64+
|EnableOptimizerHotfixes | use hint('ENABLE_QUERY_OPTIMIZER_HOTFIXES') |
65+
|LoopJoin | Loop Join |
66+
|MergeJoin | Merge Join |
67+
|HashJoin | Hash Join |
68+
|NO_PERFORMANCE_SPOOL | NO_PERFORMANCE_SPOOL |
69+
|MaxRecursion | MAXRECURSION number |
70+
71+
More information: [Hints (Transact-SQL) - Query](https://docs.microsoft.com/sql/t-sql/queries/hints-transact-sql-query)
72+
6773
### See also
6874
[Building Queries with QueryExpression](build-queries-with-queryexpression.md)
6975
[Use the ColumnSet Class](use-the-columnset-class.md)

powerapps-docs/developer/common-data-service/webapi/get-started-dynamics-365-web-api-csharp.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: "Get started with Common Data Service Web API (C#) (Common Data Service)| Microsoft Docs"
33
description: "Learn how to access the Common Data Service Web API using the Microsoft Visual C# programming language"
44
ms.custom: ""
5-
ms.date: 1/09/2019
5+
ms.date: 03/31/2020
66
ms.service: powerapps
77
ms.suite: ""
88
ms.tgt_pltfrm: ""
@@ -29,7 +29,9 @@ After completing this guide, you will have learned enough to explore the many ot
2929

3030
## In this section
3131

32-
[Quick Start: Web API sample (C#)](quick-start-console-app-csharp.md)<br />
32+
[Quick Start: Web API sample](quick-start-console-app-csharp.md) (Do this first)
33+
[Enhanced quick start](enhanced-quick-start.md) (Do this next)
34+
[Start a Common Data Service Web API project in Visual Studio](start-web-api-project-visual-studio-csharp.md)
3335

3436
### See also
3537

powerapps-docs/developer/common-data-service/webapi/overview.md

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: "Use the Common Data Service Web API (Common Data Service)| Microsoft Docs"
33
description: "The Common Data Service Web API implements OData v4 and provides a development experience that can be used across a wide variety of programming languages, platforms, and devices"
44
ms.custom: ""
5-
ms.date: 04/22/2019
5+
ms.date: 03/31/2020
66
ms.service: powerapps
77
ms.suite: ""
88
ms.tgt_pltfrm: ""
@@ -28,14 +28,19 @@ The Web API is one of two web services you can use to work with data and metadat
2828
The Common Data Service Web API provides a development experience that can be used across a wide variety of programming languages, platforms, and devices. The Web API implements the OData (Open Data Protocol), version 4.0, an OASIS standard for building and consuming RESTful APIs over rich data sources. You can learn more about this protocol at [https://www.odata.org/](https://www.odata.org/). Details about this standard are available at [https://www.oasis-open.org/standards#odatav4.0](https://www.oasis-open.org/standards#odatav4.0).
2929

3030

31-
Because the Web API is built on open standards, we dont provide assemblies for a specific developer experience. You can compose HTTP requests for specific operations or use third-party libraries to generate classes for whatever language or platform you want. You can find a list of libraries that support OData version 4.0 at [https://www.odata.org/libraries/](https://www.odata.org/libraries/).
31+
Because the Web API is built on open standards, we don't provide assemblies for a specific developer experience. You can compose HTTP requests for specific operations or use third-party libraries to generate classes for whatever language or platform you want. You can find a list of libraries that support OData version 4.0 at [https://www.odata.org/libraries/](https://www.odata.org/libraries/).
3232

3333
## Web API and the Organization service
3434

3535
It is valuable to recognize that the organization service is what defines the platform. The Web API provides a RESTful programming experience but ultimately all data operations go through the underlying organization service. The organization service defines the supported operations as messages. Each message has a name. These names are bound to the events used in the event framework to evaluate what registered extensions should be initiated. More information: [Event Framework](../event-framework.md)
3636

3737
The Web API allows you to do all the same operations as the organization service but presents them in an RESTful style. OData v4 provides for named operations via *functions* or *actions*. Most messages available in the organization service are exposed as a corresponding named function or action. Those messages that correspond to CRUD operations are not available in the Web API because as a RESTful service they have implementations using GET, POST, PATCH, and DELETE HTTP methods, but within the platform the *retrieve*, *create*, *update*, and *delete* messages are invoked just as they are when the corresponding operations are performed using the .NET Framework assemblies.
3838

39+
## Getting started
40+
41+
Now that you have read an overview of the Web API, proceed to the [Get started with Common Data Service Web API](get-started-dynamics-365-web-api-csharp.md) topic to learn how to write your first C# program in Visual Studio that uses the Web API.
42+
43+
If you are a JavaScript developer and want to use the Web API in model-driven apps, navigate to [Client-side JavaScript using Web API in model-driven apps](get-started-web-api-client-side-javascript.md).
3944

4045
### Related Sections
4146

0 commit comments

Comments
 (0)