问题标签 [microsoft-dynamics-webapi]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
8 回答
16789 浏览

odata - 通过 API 在 Microsoft Dynamics CRM 中为联系人实体创建注释

这个问题与我通过 API 调用的 Microsoft Dynamics CRM 2015 有关。

我创建联系人实体:

登录面板后,它可以工作,我看到了新记录。我可以通过 API 调用它:

接下来我要做的是添加与该联系人关联的注释记录。按照我打电话的指南:

但它返回 400 错误:

未声明的属性“联系人”在有效负载中仅具有属性注释,但在有效负载中未找到属性值。在 OData 中,只有声明的导航属性和声明的命名流可以表示为没有值的属性。

当我打电话时:

新实体已创建,但与联系人没有关系。

如何正确撰写此 POST 请求?我在这里想念什么?我怀疑,应该以某种不同的方式呈现,contact@odata.bind我试过了contactid@odata.bind,,-但没有效果。object@odata.bindobjectid@odata.bind

有任何想法吗?

0 投票
1 回答
569 浏览

microsoft-dynamics - Microsoft Dynamics 2016 Web API | POST 发票详情

我能够POST使用invoice EntityTypeWeb API。

创建后,invoice我得到了guid并且我想创建发票行项目,我认为是invoicedetail EntityType.

我不能POST一个新的invoicedetail. 我对一系列不同属性的每次尝试都会收到一个Error 500 - An unexpected error occurred.Error 500 - The parent id is missing.

我正在尝试的 JSON 字符串示例POST。(invoicedetailidGUID我创建的上一张发票的)

文档含糊不清,我想知道,什么是最低必填字段,invoicedetail我怎样才能POST获得新的invoice EntityType

0 投票
2 回答
3325 浏览

c# - 从 Dynamics CRM API 返回什么 DateTime

从 Dynamics CRM Web API 返回的 DateTime 对象是否始终采用 UTC 格式,并且记录在哪里?

我正在使用 CRM SDK nuget 包。我在几个博客(由 CRM 商店)上读到 CRM API 始终返回 UTC DateTime 对象,并且我体验到 DateTime.Kind 始终是 UTC(根据我的测试),但我需要确定。

如果重要的话,CRM 是 2015 年。

我正在使用以下代码调用 Dynamics CRM Web 服务。

然后调用 RetreiveMultiple

0 投票
1 回答
2168 浏览

odata - 使用 Dynamics CRM Web API 创建帖子

无法使用 Dynamics CRM 2016 Online Web API 创建Post 实体 ( https://msdn.microsoft.com/en-us/library/mt607553.aspx )。

此有效负载应在POST /api/data/v8.1/posts

(来源 1 是自动帖子,类型 7 是状态帖子)

但它返回:

仅使用“文本”提交相同的有效负载也会失败。

请注意,Post 实体没有允许我设置相关实体​​(联系人、帐户、 ETC)。

例如,创建任务实体 ( https://msdn.microsoft.com/en-us/library/mt607619.aspx ) 在POST /api/data/v8.1/tasks

在我看来, Post 应该公开类似的regardingobjectid_contact_post@odata.bind内容,但事实并非如此。

对于上下文,这是通过 SOAP 端点和 SDK 创建 Post 的方法:

有没有人有通过 Web API 创建的帖子的工作示例?这是 Dynamics CRM Web API 中的遗漏吗?

限制中似乎没有列出此内容:https ://msdn.microsoft.com/en-us/library/mt628816.aspx

更新

似乎 postregarding 实体是应该创建联系/帐户链接的位置。这可以通过查询来证明:

但是,像这样的“深度插入”不起作用:

回应是

不能在父实体之前创建子实体。

0 投票
1 回答
1448 浏览

dynamics-crm - 微软动态 - Web API

我正在尝试通过 Web API 在 Dynamics 365 实例中创建一个新的“事件”(案例)。

在我的 http 请求中,我不知道哪个字段是强制性的。我尝试只添加标题、主题和客户,但我返回了 Http 400 错误...

我正在使用 Postman 尝试我的 Http 请求。如果我发送以下 json

但我遇到了错误:“CRM 不支持直接更新实体引用属性,而是使用导航属性。”

所以我尝试使用@data.bind 技巧(https://msdn.microsoft.com/en-us/library/gg328090.aspx#Anchor_3

我收到以下错误:“未声明的属性‘customerid’在有效负载中只有属性注释,但在有效负载中没有找到属性值。在 OData 中,只有声明的导航属性和声明的命名流可以表示为没有值的属性。 "

所以现在我真的不知道该怎么做。我们可以通过 Web API 创建一个事件(在我的例子中是一个“服务案例”)吗?

谢谢

0 投票
0 回答
228 浏览

odata - Dynamics CRM API 筛选器优先级组

我有以下 API 请求: ...api/data/v8.0/rts_xrmsettings?$select=rts_name,rts_value,statecode&$filter=statecode eq 0 and (contains(rts_name, 'Sample') or contains(rts_name, 'Test'))

然而,数据集返回如下:

包括一个实体,statuscode=1为什么要包括这个实体?

如果我将过滤器更改为filter=(contains(rts_name, 'Test') and statecode eq 0) or (contains(rts_name, 'Sample') and statecode eq 0)收到所需的输出,但我正在尝试动态构建过滤器字符串,而通过代码创建这很麻烦。

就布尔代数而言,A.B + A.C = A.(B+C)因此过滤器应该返回相同的结果,但事实并非如此。

0 投票
1 回答
2548 浏览

odata - 对 Dynamics 365 On Premises 进行身份验证

我正在尝试使用适用于 .net 的 OData 客户端连接到 Dynamics 365 On-premises

我尝试通过基本身份验证进行身份验证,但这不起作用。

我收到的错误是:HTTP 错误 401 - 未经授权:访问被拒绝

有人可以帮我这是怎么做的吗?

0 投票
1 回答
667 浏览

javascript - 获取子数据 Microsoft Dynamics WebAPI

我正在使用 Microsoft Dynamics CRM WebAPI 访问 Microsoft Dynamics CRM 2016 的本地版本。我有两个自定义实体ccseq_ProductEvaluationccseq_ProductEvaluationArea. ccseq_ProductEvaluation是 的父级ccseq_ProductEvaluationArea。我正在尝试构建 url 来检索ccseq_ProductEvaluationArea特定记录的ccseq_ProductEvaluation记录。我已阅读Dynamics API 参考,但我无法构建正确的 url。以下是我尝试过的当前网址。我错过了什么?

网址

ccseq_ProductEvaluation

产品评估设计

ccseq_ProductEvaluationArea

产品评估区设计

1:N 关系

关系详情

0 投票
1 回答
1380 浏览

javascript - Typescript模块导入的相对路径指向错误的目录

我有一个使用中编写的应用程序层。我也有使用构建的 Web 资源。Web 资源的 html 使用在必要时包含已编译的 Typescript 代码。我看到的问题是我在 Typescript 中使用的相对路径。当我将 Web 资源发布到 Microsoft Dynamics 时,RequireJS 正在尝试从我的 Typescript 加载相对于 html 文件而不是相对于转译的 Javascript 文件的相对路径。

网络API

转译为 build/CCSEQ/WebAPI.js(Model.js 位于 build/CCSEQ/Model.js)

主.html

位于 /WebResources/html/Main.html

主.js

位于 /WebResources/js/Main.js

0 投票
1 回答
1439 浏览

javascript - 检索导航属性动态 WebAPI

我正在尝试通过父实体检索子实体的属性。总帐帐户是父实体,我想要与总帐帐户相关的所有总帐操作实体的详细信息。总帐操作具有到总帐帐户的查找字段。我正在使用来构建 url 并检索数据。

根据微软文档

除非您指定较小的页面大小,否则每个请求最多将返回 5000 个实体。如果有更多实体与查询过滤条件匹配,则将在结果中返回 @odata.nextLink 属性。将@odata.nextLink 属性的值与新的GET 请求一起使用以返回下一页数据。

我只返回 1 个父实体和 1 个子实体,所以我不应该遇到这个障碍。然而,

当我使用网址时:

我得到结果:

当我使用网址时:

我得到结果:

我的理解是这两个 url 应该返回完全相同的数据,这将是父子属性的 json 对象。这些查询有什么区别?为什么我的第二个查询返回odata.nextLink实体的而不是 json 表示?