我想摆脱Dynamics 365上的“社交窗格”,将其替换为帐户表单上的Subgrid,该子窗格将列出该帐户的活动和该帐户的联系人的活动。我们目前正在使用“ parentcustomerid”查找将联系人与非分层帐户关联。我找不到FetchXML的解决方案来得到我想要的。如果存在层次关系,则以下FetchXML将起作用:
preferredScreenEdgesDeferringSystemGestures
目标是要有一个插件在操作前捕获查询,以便添加所需的条件和过滤器。
答案 0 :(得分:2)
您可以通过以下方式解决此问题:将与联系人相关的活动直接链接到其父级account
,并在活动实体中使用自定义查找,并且可能使用Retrieve/RetrieveMultiple
插件根据{ {1}}是regardingobjectid
。
做到这一点,您只需要在网格中引用该字段即可。
我们使用了类似的方法来制作跨越多个关系的“汇总汇总”。
答案 1 :(得分:1)
使用具有引导程序的自定义HTML Web资源和我们自己的js库来处理Web api调用/ fetchxml查询,可以轻松实现这种汇总。我们今天正在这样做。
由于我们无法在fetchxml中执行UNION
,因此我们可能必须合并几个结果集,因此我们可以使用jQuery数据表来合并/可视化结果。
这种方法也易于修改,调试,而不是拦截自定义fetchxml查询的服务器调用。
答案 2 :(得分:0)
您已经得出结论,解决此问题的核心是在查询中使用UnderOrEqual
条件。
使用视图设计器以您想要的方式来实现该功能可能很困难(这是不可能的)。因此,您需要添加一些代码来实现这一目标。
虽然创建自定义Web资源和使用自定义网格的方法可能更易于调试,但将需要大量自定义代码和控件。
另一种方法是在表单中添加带有与父帐户相关的活动的“关联视图”的标准子网格,然后添加用于标识查询的RetrieveMultiple
前置插件,然后调整查询以使其工作满足您的需求。
然后,您将使用标准控件和功能,这些控件和功能将是可升级的,并且仍将遵循Microsoft等对设计的更改。
要查看可完全使用的解决方案,下面的文章详细介绍了此模式: https://jonasrapp.net/2016/05/hierarchy-activities/