如何使用Fetch XML中的左外连接获取数据?

时间:2016-08-02 21:56:28

标签: xml visual-studio reporting-services crm fetchxml

如何使用Fetch XML中的左外连接来获取数据?

我可以创建列,但无法显示数据。

我正在使用Visual Studio 2008构建SSRS报告,CRM版本是CRM 2016 Online。

此提取XML查询不显示链接实体“会议”中的数据。

<fetch mapping='logical'>                   
<entity name='company'>             
    <attribute name='name'/>            
    <attribute name='createdon'/>           
    <attribute name='companyid'/>           
    <order descending="false" attribute="name"/>            
    <filter type="and">         
            <condition attribute="infocode" value="0" operator="eq"/>   
    </filter>           
    <link-entity name='company' from='companyid' to='meetingid' link-type='outer'>          
        <attribute name='meetingid' />      
        <attribute name="topic"/>       
        <attribute name="createdon"/>       
        <order descending="false" attribute="topic"/>       
    </link-entity>          
</entity>               

有关详细信息 - 显示的实体配置和所需的数据显示 - 请参见此图片。

enter image description here

2 个答案:

答案 0 :(得分:1)

根据您在问题中发布的图片,我认为您需要进行内部联接以显示两个表格中的数据。

替换此行:

<link-entity name='company' from='companyid' to='meetingid' link-type='outer'>

人:

<link-entity name='company' from='companyid' to='meetingid' link-type='inner'>

LEFT OUTER JOIN返回一个表中与其他表中的行无关的行。由于您想要加入这两个实体,因此不适合您的情况。

  

您可以在FetchXML中使用左外连接来执行查询   连接表上的过滤器,例如查找没有连接的所有联系人   过去两个月有任何竞选活动。

REFERENCE

如果有帮助,请告诉我。

答案 1 :(得分:0)

esperanish, 是的FetchXML支持内部联接操作。

您是否手动创建了上述FetchXML?或在Dynamics CRM在线使用高级查找视图?。

我建议你使用高级查找视图来创建更准确的FetchXML。

根据您提供的FethXML代码,我可以看到您的主要实体“公司”,您的链接实体也是“公司”,链接到同一个实体并不是'在这里有任何意义。

尝试使用这些FetchXML:

    <fetch mapping='logical'>                   
<entity name='company'>             
    <attribute name='name'/>            
    <attribute name='createdon'/>           
    <attribute name='companyid'/>           
    <order descending="false" attribute="name"/>            
    <filter type="and">         
            <condition attribute="infocode" value="0" operator="eq"/>   
    </filter>           
    <link-entity name='meeting' from='meetingid' to='companyid' link-type='inner'>          
        <attribute name='meetingid' />      
        <attribute name="topic"/>       
        <attribute name="createdon"/>       
        <order descending="false" attribute="topic"/>       
    </link-entity>          
</entity>

    <fetch mapping='logical'>                   
<entity name='company'>             
    <attribute name='name'/>            
    <attribute name='createdon'/>           
    <attribute name='companyid'/>           
    <order descending="false" attribute="name"/>            
    <filter type="and">         
            <condition attribute="infocode" value="0" operator="eq"/>   
    </filter>           
    <link-entity name='meeting' from='companyid' to='meetingid' link-type='inner'>          
        <attribute name='meetingid' />      
        <attribute name="topic"/>       
        <attribute name="createdon"/>       
        <order descending="false" attribute="topic"/>       
    </link-entity>          
</entity>

注意:我不确定我提供的FetchXML是否适合您,因为我不知道您的CRM中使用的映射。您可以将其视为解决方法的示例。