我正在使用FetchXml来查询CRM 4.0.我们有一个特殊情况需要在CRM entites之间进行复合连接.所述FetchXml模式表示的多个链路实体元件是允许的,并且它也表明,多个过滤器/条件的元素可以被添加到链路的实体.我面临的问题是条件元素的value属性似乎不允许实体/列名称.它期望明确声明的值.
例如,FetchXml允许您指定:
<link-entity name='myentity' from='column1' to='column2'/>
Run Code Online (Sandbox Code Playgroud)
...这与T-SQL相当:
JOIN myentity on column1 = column2
Run Code Online (Sandbox Code Playgroud)
它可以让你指定:
<link-entity name='myentity' from='column1' to='column2'>
<filter type='and'>
<condition attribute='column3' operator='eq' value='myvalue' />
</filter>
</link>
Run Code Online (Sandbox Code Playgroud)
...这是T-SQL的等价物:
JOIN myentity on column1 = column2 AND column3 = 'myvalue'
Run Code Online (Sandbox Code Playgroud)
但是,FetchXml不会出现以下内容:
JOIN myentity on column1 = column2 AND column3 = column4
Run Code Online (Sandbox Code Playgroud)
注意区别.FetchXml提供了连接中的条件,但它似乎提供了复合连接,即跨多个列的连接.
有没有人在网络空间中能够使用CRM 4.0中的FetchXml执行复合连接?谢谢!
更多信息:
我正在寻找一个使用FetchXml来完成此任务的答案 - 而不是SQL或QueryExpression语法.上面的SQL只是为了解释这个概念.