FetchXML基于链接实体的属性排序结果和分页

时间:2018-05-18 09:04:56

标签: c# dynamics-crm fetchxml

我正在编写一个FetchXML查询来检索要在表格中显示的人员列表。该表应该能够在所有列上提供搜索,分页和排序。这里的问题是,person实体将父亲作为链接实体,父亲的父亲作为第一名称"已经是我目前正在构建的表中的一列。我需要一个查询,使我能够检索由父亲" firstName"排序的结果,根据相同的属性过滤结果并应用分页(跳过和拍摄)而不必获取所有行并在之后应用过滤。 到目前为止我尝试的是从这篇文章中提到的方法得到的所有可能的东西: https://nishantrana.me/2012/04/27/sorting-on-link-entitys-attribute-in-fetch-xml-crm-2011/

不幸的是,没有工作。有什么建议吗?

1 个答案:

答案 0 :(得分:0)

我猜你有这样的查询(虽然这是简化的):

<fetch count='50' returntotalrecordcount='true' page='2' >
  <entity name='contact' >
    <attribute name='firstname' />
    <attribute name='lastname' />
    <filter>
      <condition entityname='father' attribute='firstname' operator='like' value='Jonas%' />
    </filter>
    <link-entity name='contact' from='parentcustomerid' to='contactid' alias='father' >
      <attribute name='firstname' />
      <order attribute='firstname' />
    </link-entity>
  </entity>
</fetch>

过滤条件可以使用link-entity的别名来实现,也可以在link-entity元素下添加过滤器/条件。

此示例中在链接实体下添加的订单元素有效指定,但它似乎没有任何效果。

因此,为了能够按链接实体的信息进行排序,您必须在客户端进行排序。