如果更新特定字段,则Checkbox = true

问题描述 投票:0回答:3

我正在同步Dynamics CRM 365和QuickBooks Desktop之间的帐户和联系信息。

我在CRM中尝试做的是有一个名为“自上次QB同步后更新地址”的复选框。它被锁定,因此用户无法触摸它,并且应在用户更新特定字段时自动检查:公司名称,地址,电话,电子邮件。

尝试使用业务规则执行此操作,但显然似乎不可能。是处理这个问题的最佳方式(网络资源,业务流程等)?

dynamics-crm crm microsoft-dynamics dynamics-crm-online dynamics-365
3个回答
2
投票

Pre-update plugin将是您最好的选择。如果更改了这四个属性中的任何一个,请编写一个C#插件来设置目标实体中的checkbox(bool)属性。

将目标实体注册为Contact,即使您可以在Plugin步骤的过滤属性中过滤这四个属性。

这避免了显式记录更新,插件只有在更新了这四个字段中的任何一个时才会触发,并且该标志将作为附加属性设置在同一个DB事务中。


0
投票

您还可以创建一个在更新某些属性时触发的工作流程流程,这更符合MSFT建议的使用自定义策略,缺点是您必须为每个实体创建一个工作流程

希望它有助于 - M.Acosta.D


0
投票

我最终做的是创建一个Web资源并将其分配给我想要监视更改的字段的OnChange事件:

function fieldChanged() {
  Xrm.Page.getAttribute("new_updatessincelastqbsync").setValue(true);
}

address1_composite有点棘手,因为它没有检测到OnChange事件。必须将包含复合的字段添加为隐藏字段,并将web资源添加到OnChange事件中。现在它正在100%工作。

© www.soinside.com 2019 - 2024. All rights reserved.