仅当我更新动态crm中的浏览器时才更新字段

时间:2015-10-22 15:06:53

标签: dynamics-crm dynamics-crm-2013

我为CRM编写插件。在创建新Entity A时,它会更新Entity B字段。 我有Entity A的表单,在此表单中我有Entity B的标签。当我从此标签创建新的Entity B时,我的插件更改了Entity A中的字段。但是在我重新加载浏览器页面之前,我无法看到这种变化。

Adding entity B from tab

Saving entity B

Filed doesnt change until page will be reloaded

1 个答案:

答案 0 :(得分:1)

您以某种方式忽略了您的插件在服务器上运行的事实,并且它更新了另一台服务器上的数据库中的数据。没有内置的方法使数据库更新触发特定客户端(或所有)的通知。因此,您有两种选择:

  1. 执行Entity A的保存后,在Entity B的上下文中触发Xrm.Page.data.refresh(或保存也会起作用,因为这会拉下新值)。
  2. 使用轮询和CrmWebApi或odata端点查询CRM,以便在服务器端更新该值,然后在客户端更新它。
  3. 您的问题有点难以理解,但如果您在Entity A的上下文中没有任何方式知道用户应该创建Entity B,那么#1可能会很难理解}。 #2会起作用,但如果你有数百名用户坐在那里进行投票,它将无法很好地扩展。