Dynamics 365 升级到9.0版本后,增强了高级查找中相关实体1;N关系的不包含数据的查询

这个功能虽然不太起眼,但是确实很多人期盼已久的。

先来看下之前版本的高级查找,我以Accouts为示例,选择查询的相关实体是Opportunity,目前的功能只支持accounts下有Opportunity 记录,例如Opp created on是哪天,而并不支持查找哪些account下没有opp记录的。

Dynamics 365 9.0 Version 新功能(1) 支持查找没有Opporunity的Account

在9.0版本在Advance Find中对关联entity 增加了Condition设置,如图

Dynamics 365 9.0 Version 新功能(1) 支持查找没有Opporunity的Account

当我选择Contains Data 时候,表示有Opportunity的Account,和原来功能一样

当我选择Does Not Contain Data 时候,会给出提示,会删除已有的condition(当前的condition是基于包含数据的条件下的) 

无法再添加其他条件了

Dynamics 365 9.0 Version 新功能(1) 支持查找没有Opporunity的Account

最后下载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="opportunity" from="customerid" to="accountid" link-type="outer" alias="ab" />
    <filter type="and">
      <condition entityname="ab" attribute="customerid" operator="null" />
    </filter>
  </entity>
</fetch>

相关文章: