场景::有一个门户网站可显示网格中的数据,该数据来自Dynamics365。由于是Dynamics开发的,因此我被要求提供一个查询,该查询将以以下格式显示数据
例如,电话可以与“联系人”或“ CustomAccount(自定义实体)”关联,并且“ CustomAccount”在其表单上具有“联系人”查询。我们需要所有的电话记录,但有一个问题。在获取联系人的电话时,我们需要获取联系人的字段值,例如住宅地址,邮寄地址,电子邮件地址,电话号码。这是可行的。但是,如果电话与CustomAccount实体相关联,那么我们必须先获取与CustomAccount实体相关联的联系人,然后再获取其诸如居住地址,邮寄地址,电子邮件地址,电话号码之类的字段。
我尝试构建查询,但结果很奇怪,并且只显示与CustomAccount实体关联的电话,而没有显示联系实体。
<fetch>
<entity name='phonecall' >
<all-attributes/>
<link-entity name='contact' from='contactid' to='regardingobjectid' link-type='outer' alias='contact' >
<all-attributes/>
</link-entity>
<link-entity name='pref_CustAccount' from='pref_CustAccountid' to='regardingobjectid' link-type='outer' alias='account' >
<link-entity name='contact' from='contactid' to='lpl_clientid' link-type='inner' alias='accountcontact' >
<all-attributes/>
</link-entity>
</link-entity>
</entity>
</fetch>
答案 0 :(得分:2)
我刚刚在我的CRM实例上复制了您的方案。我认为您的问题出在以下行的链接类型上。
<link-entity name='contact' from='contactid' to='lpl_clientid' link-type='inner' alias='accountcontact' >
您需要外部而不是内部。 当我给内心时,我只得到与上一行有关的那些记录。
这是我的完整抓取内容
<fetch>
<entity name="phonecall" >
<link-entity name="contact" from="contactid" to="regardingobjectid" link-type="outer" alias="directcontact" >
<attribute name="fullname" />
</link-entity>
<link-entity name="account" from="accountid" to="regardingobjectid" link-type="outer" alias="account" >
<link-entity name="contact" from="contactid" to="primarycontactid" link-type="outer" alias="primarycontact" >
<attribute name="fullname" />
</link-entity>
</link-entity>
</entity>
</fetch>