示例:使报表上下文相关

 

发布日期: 2017年1月

适用于: Dynamics 365 (online),Dynamics 365 (on-premises),Dynamics CRM 2016,Dynamics CRM Online

下列步骤说明如何在 Microsoft Dynamics 365 中设置上下文相关报表。

例如,如果报表显示特定客户的所有活动,并且您希望在“Microsoft Dynamics 365客户”窗体上显示此报表,则必须在“相关记录类型”分类中包含“活动”和“客户”,并在“报表:新建”窗体字段的“显示”中指定“相关记录类型的窗体”。

创建和配置上下文相关报表

  1. 创建包含 Filtered<entity> 数据库视图中字段的报表,并根据需要与其他相关筛选视图建立一个或多个 SQL JOIN。

  2. 在报表的 SQL 查询语句中,将 CRMAF_Filtered<实体> 用作别名。 下面是一个示例。

    SELECT CRMAF_FilteredActivityPointer.activitytypecodename as
    activitytypecodename,
    CRMAF_FilteredActivityPointer.regardingobjectidname as regardingobjectidname,
    CRMAF_FilteredActivityPointer.subject as subject,
    CRMAF_FilteredAccount.name
    FROM FilteredActivityPointer AS CRMAF_FilteredActivityPointer
    INNER JOIN FilteredAccount As CRMAF_FilteredAccount on
    CRMAF_FilteredAccount.accountid = 
    CRMAF_FilteredActivityPointer.regardingobjectid
    

    如果有基于 Fetch 的报表,则可以使用以下 FetchXML 查询来代替 SQL 查询。

    <fetch>
      <entity name="activitypointer" enableprefiltering="1" >
        <attribute name="activitytypecode" />
        <attribute name="regardingobjectid" />
        <attribute name="subject" alias="subject" />
        <link-entity name="account" from="accountid" to="regardingobjectid" link-type='inner' alias="accountLink">
          <attribute name="name" alias="name" />
        </link-entity>
    </entity>
    </fetch>
    
  3. 通过“报表: 新建”窗体将报表上载到 Microsoft Dynamics 365时,选择“相关记录类型”分类中在报表的 SQL 代码中引用筛选视图的所有实体。

  4. 在“显示于”字段中,选择“相关记录类型的窗体”或“相关记录类型的列表”。 如果选择“相关记录类型的列表”,将允许您从实体列表网格中运行报表。 如果选择“相关记录类型的窗体”,将允许您从实体窗体中运行报表。

另请参阅

示例报表
在 Microsoft Dynamics 365(本地)部署之间复制报表
使用 Dynamics 365 报告和分析

© 2017 Microsoft。 保留所有权利。 版权