问题标签 [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.
odata - 通过 API 在 Microsoft Dynamics CRM 中为联系人实体创建注释
这个问题与我通过 API 调用的 Microsoft Dynamics CRM 2015 有关。
我创建联系人实体:
登录面板后,它可以工作,我看到了新记录。我可以通过 API 调用它:
接下来我要做的是添加与该联系人关联的注释记录。按照我打电话的指南:
但它返回 400 错误:
未声明的属性“联系人”在有效负载中仅具有属性注释,但在有效负载中未找到属性值。在 OData 中,只有声明的导航属性和声明的命名流可以表示为没有值的属性。
当我打电话时:
新实体已创建,但与联系人没有关系。
如何正确撰写此 POST 请求?我在这里想念什么?我怀疑,应该以某种不同的方式呈现,contact@odata.bind
我试过了contactid@odata.bind
,,-但没有效果。object@odata.bind
objectid@odata.bind
有任何想法吗?
microsoft-dynamics - Microsoft Dynamics 2016 Web API | POST 发票详情
我能够POST
使用invoice EntityType
Web API。
创建后,invoice
我得到了guid
并且我想创建发票行项目,我认为是invoicedetail EntityType
.
我不能POST
一个新的invoicedetail
. 我对一系列不同属性的每次尝试都会收到一个Error 500 - An unexpected error occurred.
或Error 500 - The parent id is missing.
我正在尝试的 JSON 字符串示例POST
。(invoicedetailid
是GUID
我创建的上一张发票的)
文档含糊不清,我想知道,什么是最低必填字段,invoicedetail
我怎样才能POST
获得新的invoice EntityType
?
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
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 实体是应该创建联系/帐户链接的位置。这可以通过查询来证明:
但是,像这样的“深度插入”不起作用:
回应是
不能在父实体之前创建子实体。
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 创建一个事件(在我的例子中是一个“服务案例”)吗?
谢谢
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)
因此过滤器应该返回相同的结果,但事实并非如此。
odata - 对 Dynamics 365 On Premises 进行身份验证
我正在尝试使用适用于 .net 的 OData 客户端连接到 Dynamics 365 On-premises
我尝试通过基本身份验证进行身份验证,但这不起作用。
我收到的错误是:HTTP 错误 401 - 未经授权:访问被拒绝
有人可以帮我这是怎么做的吗?
javascript - 获取子数据 Microsoft Dynamics WebAPI
我正在使用 Microsoft Dynamics CRM WebAPI 访问 Microsoft Dynamics CRM 2016 的本地版本。我有两个自定义实体ccseq_ProductEvaluation
和ccseq_ProductEvaluationArea
. ccseq_ProductEvaluation
是 的父级ccseq_ProductEvaluationArea
。我正在尝试构建 url 来检索ccseq_ProductEvaluationArea
特定记录的ccseq_ProductEvaluation
记录。我已阅读Dynamics API 参考,但我无法构建正确的 url。以下是我尝试过的当前网址。我错过了什么?
网址
ccseq_ProductEvaluation
ccseq_ProductEvaluationArea
1:N 关系
javascript - Typescript模块导入的相对路径指向错误的目录
我有一个使用typescript在 visual -studio-2017中编写的应用程序层。我也有使用javascript和html构建的 Web 资源。Web 资源的 html 使用requirejs在必要时包含已编译的 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
javascript - 检索导航属性动态 WebAPI
我正在尝试通过父实体检索子实体的属性。总帐帐户是父实体,我想要与总帐帐户相关的所有总帐操作实体的详细信息。总帐操作具有到总帐帐户的查找字段。我正在使用ajax和typescript来构建 url 并检索数据。
根据微软文档:
除非您指定较小的页面大小,否则每个请求最多将返回 5000 个实体。如果有更多实体与查询过滤条件匹配,则将在结果中返回 @odata.nextLink 属性。将@odata.nextLink 属性的值与新的GET 请求一起使用以返回下一页数据。
我只返回 1 个父实体和 1 个子实体,所以我不应该遇到这个障碍。然而,
当我使用网址时:
我得到结果:
当我使用网址时:
我得到结果:
我的理解是这两个 url 应该返回完全相同的数据,这将是父子属性的 json 对象。这些查询有什么区别?为什么我的第二个查询返回odata.nextLink
实体的而不是 json 表示?