本篇为系列第七篇,介绍9.0版本上的一些变化,本篇讲述高级查找的一项功能增强,虽是一处很不起眼的增强,但很多人期盼已久,那就是高级查找中相关实体(即1:N关系)的不包含数据的查询支持。
先来看下8.2版本的高级查找,我以Accouts为示例,选择查询的相关实体是cases,目前的功能只支持accounts下有case记录,例如case title等于XX,而并不支持查找哪些account下没有case记录的。
9.0版本则对此功能进行了增强,在红框的位置加了condition,可以对比下上面的8.2版本的高级查找的截图同样是红框部位。
当我选择不包含数据时会给出提示,会删除已有的condition(当前的condition是基于包含数据的条件下的)
选择完不包含数据的condition后会提示你无法再添加条件了。
最后下载Fetch XML看下是什么样的
<fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="true">
<entity name="account">
<attribute name="name" />
<attribute name="primarycontactid" />
<attribute name="telephone1" />
<attribute name="accountid" />
<order attribute="name" descending="false" />
<link-entity name="incident" from="customerid" to="accountid" link-type="outer" alias="aa" />
<filter type="and">
<condition entityname="aa" attribute="customerid" operator="null" />
</filter>
</entity>
</fetch>