问题标签 [dynamics-crm-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 投票
1 回答
49 浏览

javascript - 无法从展开中检索属性

我正在尝试使用email_active_mime_attachmentswithfilenamefilesizeexpand获取电子邮件的属性。我只能获取 Email 的属性,但不能从expand中获取选定的值。请对此提供帮助,不确定我在哪里缺少这些值

/api/data/v8.2/emails?$select=createdon,directioncode,senton,statecode,subject&$expand=email_activity_mime_attachment($select=activitymimeattachmentid,filename,filesize,_ownerid_value)

我正在尝试将其值读filename入一个变量,但似乎我使用的方式不起作用。

请就此提出您宝贵的建议。

0 投票
1 回答
494 浏览

c# - 如何通过 Odata 实现 RetrieveAttributeRequest?

为了获取 OptionSet 信息,我们可以发出请求:

有没有办法在 crm 2016 中使用 Odata 请求来做到这一点?

0 投票
2 回答
2905 浏览

c# - 如何从有关ObjectID 中查询实体?

我们可以像这样查询 web api 端点:

当响应包含 aboutobjectid 字段时,我们如何针对该记录发出类似的调用?

是否有odata方式来查询有关objectid,例如:

0 投票
0 回答
40 浏览

javascript - 使用 API 修补实体时保存更改

我正在使用 IFrame 和 javascript 在我的解决方案中创建一个列表。它通过一个简单的“启用”按钮将关联实体列出到自定义属性。

我可以使用 API 将 PATCH 发送到 Dynamics,以便更新值。但是是否有 API 调用来保存更改?这不是我修补的当前页面实体,它是一个孩子。所以我不能使用Xrm.Page.data.save,因为那只会保存当前实体,而不是列表中更改的实体(?)。

在 Dynamics 365 中进行更改时,您可以使用 CTRL+S,或单击左下角的小保存按钮。如何为 IFrame 列表中的实体执行此操作?有什么线索吗?

更新:

我知道在使用 API 调用修补实体后输入实体时出现“未保存的更改”的原因。在我们的实体中,我们有业务规则在设置变量时进行侦听并设置另一个变量。当您在浏览器中的实体中并随后保存时,这可以正常工作。但是,当您在实体之外设置此值时,值本身会被保存,但业务规则不会运行并且其他值也不会设置。因此,当您输入实体时,规则会运行,另一个变量是根据 PATCHed 值设置的(如果它不同)。因此,您会得到未保存的更改。

所以; API有没有办法我可以“刷新”实体,使其运行规则?

0 投票
2 回答
2216 浏览

json - 解决导航属性 Dynamics WebAPI 的深度插入错误

我正在使用Microsoft Dynamics Web API将数据写入 Microsoft Dynamics 365 中的实体。当我尝试执行深度插入时收到错误消息

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

为什么我会收到此错误,我该如何解决该错误?

JSON

ExpenseTransactionSet是具有查找的ExpenseTransaction含义的父级。 是一对多的关系。并且是在.ExpenseTransactionExpenseTransactionSetccseq_ccseq_expensetransactionset_ccseq_expensetransaction_ExpenseTransactionSetIDsystemuserccseq_clientsExpenseTransaction

我还尝试了以下变体"ccseq_employeeid@odata.bind"

  • objectid_systemuser@odata.bind
  • objectid_ccseq_employeeid@odata.bind
  • ccseq_employeeid@data.bind
  • ccseq_employeeid@odata.bind : systemusers()
  • ccseq_employeeid_systemusers@odata.bind
  • systemuserid_systemusers@odata.bind

我已经看到了这个问题和这个问题,并尝试了建议的解决方案但没有成功。

0 投票
1 回答
830 浏览

c# - 当对象上的属性不存在时,在 Dynamics365 Web api 中做什么?

假设我们在 Dynamics 365 中有一个 Account 实体,account 有 c5 number 和 name 属性。

现在我想通过动态 365 Web API 创建一个新帐户。我创建了一个带有 c5 编号、名称的帐户对象,并添加了一个附加属性 lastname。当我将此帐户对象发布到 Web API 时,我会收到如下错误:

我真的不明白为什么 Dynamics 365 Web API 不能忽略它不能使用的属性?

在这种特定场景下,这意味着如果我们删除帐户实体上的 name 属性,我们所有与 Web API 对话的系统都可能崩溃。

我怎样才能解决这个问题?是否有强制动态 365 Web API 忽略某些属性?

0 投票
1 回答
65 浏览

javascript - 在导航属性失败时设置查找属性

我正在尝试POST使用 Microsoft Dynamics WebAPI 来获取以下 json。该帖子返回成功,但在我的数据中 ccseq_employeeid 和 ccseq_clientid 未设置。我需要更改什么才能使字段正确发布?

实体结构

ccseq_expensetransaction查找ccseq_expensetransactionsets与具有名称的关系ccseq_ccseq_expensetransactionset_ccseq_expensetransaction_ExpenseTransactionSetIDsystemusers对和的查找是实体ccseq_clients的一部分。ccseq_expensetransaction

代码

0 投票
1 回答
1748 浏览

javascript - 是否可以使用 web api 从 CRM 获取实体可用的所有关系?

我需要分别在 HTML 页面上获取和显示实体的所有可用关系。eg:如果我选择Account,在html页面中应该可以看到Account Entity的1:N、N:1和N:N关系。

我在下面尝试过,查询,我觉得,这些对我没有正确的帮助,请建议我一个解决方法来实现这一点。

0 投票
1 回答
241 浏览

http - 扩展实体的 Crm Web Api 无效 304 响应

我正在调用带有扩展的 Crm Web Api 查询:

在启用缓存的情况下第一次从 Chrome 调用时会给出有效的 200 响应。再次调用会给出 304 Not Modified 响应。到目前为止,一切都很好。但是如果我new_relatedemployee在展开中更新实体的属性,我仍然会得到 304 响应,并且展开的属性是旧的,而不是当前值。更新源 SystemUser 实体可清除 304 问题,并检索新值。

所以基本上只为被查询的主要实体返回 304 响应,而不是为扩展实体返回。我希望两者都应该被检查。

有没有办法从客户端强制非缓存版本?

0 投票
2 回答
5546 浏览

odata - 返回 odata 查询的计数

如果我有如下查询:

请注意我正在指定$count=true

它将返回:

我们如何重建这个查询以简单地返回1