以编程方式更改EnforceStateTransitions EntityMetadata

时间:2018-05-23 08:14:53

标签: dynamics-crm dynamics-crm-online

有没有办法通过Dynamics365 CRM Online的当前版本(9.x)中的API更改实体的EnforceStateTransitions(在UI上启用状态原因转换复选框)?

我需要禁用它并在许多实体上重新启用以进行批量导入。

EntityMetadata.EnforceStateTransitions只读,因此无法通过UpdateEntityRequest完成。

我能想到的唯一另一种方法是在设置打开和关闭的情况下导出两个版本的解决方案并导入正确的解决方案,但这样做太过分了,而且可能比手动更改要慢。

1 个答案:

答案 0 :(得分:1)

遗憾的是,这似乎不可能。我希望在Microsoft.Xrm.Sdk.MessagesMicrosoft.Crm.Sdk.Messages命名空间中找到一条消息,但似乎没有这样的消息。

Microsoft在EntityMetadata.EnforceStateTransitions页面上确认了这一点:

  

此属性只能使用应用程序设置。

您可以更改批量导入作业以符合状态原因转换。或者,您可以导入一个解决方案,其中@RequestBody Settings Settings已设置为正确的值,如您所述。