无法使用 CRM SDK FetchXML 提取没有绑定帐户的联系人

Unable to pull contacts with NO accounts tied using CRM SDK FetchXML

使用下面的fetchxml,它只会拉取绑定帐户的联系人。我想提取绑定了帐户 [如果是帐户名] 的联系人以及未绑定帐户的联系人。我有外部连接,但仍然不起作用。下面的 fetchxml 仅提取绑定了帐号的联系人,但不是所有没有帐户信息的活动联系人。

<fetch top="50" >
  <entity name="contact" >   
    <attribute name="emailaddress1" />
    <attribute name="lastname" />    
    <attribute name="firstname" />    
    <attribute name="accountidname" />
    <attribute name="accountid" />
    <filter type="and" >
      <condition attribute="statecode" operator="eq" value="1" />
    </filter>
    <link-entity name="account" from="accountid" to="accountid" link-type="outer" >
      <attribute name="name" />
    </link-entity>
  </entity>
</fetch>

我只看到一个问题,应该使用联系人实体中的属性 parentcustomerid 而不是 accountid

所以加入条件应该是:

<link-entity name="account" from="accountid" to="parentcustomerid" link-type="outer" >

完成查询:

<fetch top="50" >
  <entity name="contact" >   
    <attribute name="emailaddress1" />
    <attribute name="lastname" />    
    <attribute name="firstname" />    
    <attribute name="accountidname" />
    <attribute name="accountid" />
    <filter type="and" >
      <condition attribute="statecode" operator="eq" value="1" />
    </filter>
    <link-entity name="account" from="accountid" to="parentcustomerid" link-type="outer" >
      <attribute name="name" />
    </link-entity>
  </entity>
</fetch>

看起来这个 accountid 联系只是 guid 而不是查找,而且是一个虚拟字段。 Read more