我在服务活动的预创建上注册了一个插件。在插件中,我检查一些条件,如果满足这些条件,我想停止创建服务活动。我想创建另外两个服务活动来代替该服务活动。但我不希望用户收到这一切的通知。
有没有办法停止在 CRM 2011 上的插件中创建 SA 记录?
因此,如果用户通过 Dynamics CRM GUI 触发服务活动的创建,则通常会保存表单(通过发送内部UpdateRequest
),然后通过另一次数据库刷新。如果您通过插件删除了两个事件之间的记录,用户将当然收到标准“找不到记录”错误消息的通知。在这种情况下,在插件中抛出异常以阻止创建记录是等效的,因为用户将收到通知,但至少他会看到一条可自定义的消息,也许会告诉他为什么保存不起作用。
在我看来,通过插件处理这个问题的最佳方法是
- 检查你的条件。
-
Change(而不是删除)现有的保存服务活动,以匹配您要创建的其他服务活动之一的条件。这样就不会删除任何不必要的内容。
- 创建其他服务活动。
- 在表单随着现在更改的服务活动刷新后,您可以在 javascript 中执行任何您想要的操作(打开其他记录、关闭当前记录等)。
如果您可以控制 GUI,您可以做一些不同的事情(例如,删除记录后操作,尽管这仍然会导致一个额外的和不必要的数据库操作),并且您始终可以使用 javascript 进行客户端验证。
还有一点:我还必须补充一点,从用户的角度来看,保存记录然后没有立即看到它会构成意外的 CRM 行为。如果发生类似的事情,我至少希望收到一些有关 CRM 该部分如何工作的培训,或者收到关于实际上发生了根本不同的事情的通知。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)