首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在FetchXML中实现以聚合为系统视图的自定义Dynamics365

如何在FetchXML中实现以聚合为系统视图的自定义Dynamics365
EN

Stack Overflow用户
提问于 2017-09-11 03:29:44
回答 2查看 1.5K关注 0票数 3

我有一个名为课程注册的定制实体,它可以查找联系人实体。

我想了解一下那些积极参加课程的人。

我不认为这可以从联系实体,所以我必须创建一个积极的课程招生视图,其中只显示联系字段。

这样做会使我重复接触,如果他们有超过一个课程的入学,而我不希望。

为了避免这种情况,我尝试在FetchXML中创建一个聚合查询:

代码语言:javascript
运行
复制
<fetch version="1.0" aggregate="true" >
  <entity name="flr_courseenrolment" >
    <link-entity name="contact" from="contactid" to="flr_contact" alias="a_69c0f6b80d94e711812ae0071b66a541" >
      <attribute name="emailaddress1" alias="contactemailaddress1" groupby="true" />
      <attribute name="fullname" alias="contactfullname" groupby="true" />
      <filter type="and" >
        <condition attribute="statecode" operator="eq" value="0" />
        <condition attribute="flr_islearner" operator="eq" value="1" />
        <condition attribute="flr_advisor" operator="eq" uiname="Test User" uitype="systemuser" value="{28C0D53B-5E19-E611-8106-C5346CC262D1}" />
      </filter>
    </link-entity>
    <attribute name="flr_courseenrolmentid" alias="aggregateflr_enrolmentid" groupby="true" />
  </entity>
</fetch>

此查询在XRM工具箱FetchXML测试器中工作。但是,当我将它导入CRM时,它将无法工作。

我是通过导出一个包含相同字段的视图的解决方案将它导入到客户关系管理中的;并将系统生成的FetchXML替换为我创建的FetchXML,然后重新导入它。

在再次导入该视图后,当我试图查看该视图时,我会收到一个通用的CRM错误,即“应该始终在检索多个视图上指定列”。

代码语言:javascript
运行
复制
<OrganizationServiceFault xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/xrm/2011/Contracts">
  <ActivityId>b3b1d783-a8be-4454-9ed5-b71c42053299</ActivityId>
  <ErrorCode>-2147220970</ErrorCode>
  <ErrorDetails xmlns:d2p1="http://schemas.datacontract.org/2004/07/System.Collections.Generic" />
  <Message>System.Xml.XmlException: Microsoft Dynamics CRM has experienced an error. Reference number for administrators or support: #2955ADDE</Message>
  <Timestamp>2017-09-11T03:22:55.50674Z</Timestamp>
  <ExceptionRetriable>false</ExceptionRetriable>
  <ExceptionSource i:nil="true" />
  <InnerFault>
    <ActivityId>b3b1d783-a8be-4454-9ed5-b71c42053299</ActivityId>
    <ErrorCode>-2147220970</ErrorCode>
    <ErrorDetails xmlns:d3p1="http://schemas.datacontract.org/2004/07/System.Collections.Generic" />
    <Message>Columns should always be specified on RetrieveMultiple.</Message>
    <Timestamp>2017-09-11T03:22:55.50674Z</Timestamp>
    <ExceptionRetriable>false</ExceptionRetriable>
    <ExceptionSource i:nil="true" />
    <InnerFault>
      <ActivityId>b3b1d783-a8be-4454-9ed5-b71c42053299</ActivityId>
      <ErrorCode>-2147220970</ErrorCode>
      <ErrorDetails xmlns:d4p1="http://schemas.datacontract.org/2004/07/System.Collections.Generic" />
      <Message>System.InvalidOperationException: Microsoft Dynamics CRM has experienced an error. Reference number for administrators or support: #F043AB2E</Message>
      <Timestamp>2017-09-11T03:22:55.50674Z</Timestamp>
      <ExceptionRetriable>false</ExceptionRetriable>
      <ExceptionSource i:nil="true" />
      <InnerFault i:nil="true" />
      <OriginalException i:nil="true" />
      <TraceText i:nil="true" />
    </InnerFault>
    <OriginalException i:nil="true" />
    <TraceText i:nil="true" />
  </InnerFault>
  <OriginalException i:nil="true" />
  <TraceText i:nil="true" />
</OrganizationServiceFault>

我有一种感觉:

  • flr_courseenrolmentid上的别名导致视图中断。
  • 在CRM视图中根本不支持聚合/组比。
  • 我需要在某种程度上定制LayoutXML以及FetchXML

我想达到的目标是可能的吗?是否有一种方法在客户关系管理中的视图中显示此FetchXML,还是有其他方法来实现我需要的视图?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-09-11 08:21:14

创建联系人下的视图。

作为条件,选择相关实体“课程注册(联系人)”(我在这里假设名称),并将"Contact包含数据“和”状态等于活动“作为条件。

这与使用活动联系人获取所有帐户相同。

票数 2
EN

Stack Overflow用户

发布于 2017-09-11 08:10:54

不幸的是,不能在视图中使用聚合查询。如果将distinct="true"添加到fetch元素,而不使用聚合,可能会有所帮助。

测试不同选项的最简单方法是在FetchXML Builder插件中使用XrmToolBox,这样您就可以打开要更改的视图,更改查询,然后将其保存回客户关系管理系统。无需导入解决方案或手动customizations.xml编辑。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46147772

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档