我正在尝试构建一个与以下SQL查询相同的FetchXML查询。基本上,如果约会上的自定义属性“dev_ownercommunityid”等于商机的ownerid属性,则输出商机名称和链接约会的主题。
select top 10 o.[name], apt.[subject]
from Opportunity o with (nolock)
left join Appointment apt with (nolock)
on o.opportunityid = apt.regardingobjectid
where apt.dev_ownercommunityid = o.ownerid
/* dev_ownercommunityid is a custom attribute we added to appointment entity */
我可以轻松地进行外连接,但我无法弄清楚如何做“where”部分。
请帮忙。我正在使用Dynamics CRM 2013。
答案 0 :(得分:0)
不幸的是,这是不可能的。您无法直接比较两列。比较的一方必须是恒定值。有关详细信息,请参阅https://www.kingswaysoft.com/blog/2013/06/18/Limitations-with-CRM-FetchXML。
答案 1 :(得分:0)
在最新版本(2020年7月)中,此功能可用于使用valueof
标签比较fetchxml中同一实体的两个属性,也可以使用SDK和Web api。 Read more
<fetch>
<entity name='contact' >
<attribute name='firstname' />
<filter>
<condition attribute='firstname' operator='eq' valueof='lastname'/>
</filter>
</entity>
</fetch>
在不久的将来,我们可能会获得在两个实体属性之间进行比较的选项。请仔细阅读上述文档。
然后,我们必须在单独的查询中获取相关的实体属性值,并将其作为参数过滤器传递给主查询。