使用 SQL Server 数据工具创建新报表

 

发布日期: 2017年1月

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

SQL Server Data Tools 是用于在 Microsoft Visual Studio 中创建或编辑 Microsoft SQL Server Reporting Services 报表的报表创作环境。 最终结果是包含报表定义的报表定义 .rdl 文件,您可以在 Microsoft Dynamics 365 中发布它以查看报表。

还可以使用常用文本编辑器创作报表。 若要减少创建自定义报表的工作,请修改提供大多数所需功能的现有 .rdl 文件。 有关 .rdl 文件中的 XML 元素格式的详细信息,请参阅 报表定义语言参考。 修改的报表 XML 可以通过指定的 XML 架构进行验证。 尝试在 Microsoft Dynamics 365 中上载报表时,Reporting Services 还将验证报表定义并拒绝定义无效的报表。

备注

如果 .rdl 文件包含 FetchXML 查询,RDL 中的查询将由 Microsoft Dynamics 365报表创作扩展 验证,其会从内部针对 FetchXML 架构对查询进行验证。 有关详细信息,请参阅 MSDN:Fetch XML 架构

本主题内容

创建基于 Fetch 的自定义报表(Dynamics 365(联机)和 Dynamics 365 本地)

创建基于 SQL 的自定义报表(仅 Dynamics 365 本地)

创建基于 Fetch 的自定义报表(Dynamics 365(联机)和 Dynamics 365 本地)

创建基于 Fetch 的自定义报表:

  1. 确保拥有受支持的 Microsoft Visual Studio、SQL Server Data Tools、Microsoft Dynamics 365报表创作扩展 版本和必需权限。详细信息:使用 SQL Server 数据工具的报表编写环境

  2. 打开 Microsoft Visual Studio,然后创建一个报表服务器项目。

  3. 在解决方案资源管理器中,右键单击“报表”文件夹,然后单击“添加新报表”。

  4. 单击“下一步”。

  5. 在“选择数据源”页上,单击“新建数据源”,然后指定以下详细信息:

    • 名称:键入数据源的名称。

    • “类型”:选择“Microsoft Dynamics 365 Fetch”。

    • 连接字符串:指定连接字符串。 必须采用下面的格式指定连接字符串:

      ServerURL;OrganizationName;HomeRealmURL

      在此连接字符串中,只有 ServerURL 是必需的。 如果未指定 OrganizationName ,则使用运行此查询的用户所属的第一个组织。HomeRealmURL 是您的组织使用的身份提供程序的主页领域 URL,当您的组织使用 Federation 进行身份管理时需要此 URL。 请与您的网络管理员联系以确定主页领域 URL。

      单击”凭据“以指定要连接到 Microsoft Dynamics 365 或 Microsoft Dynamics 365 (online) 的凭据,然后单击“下一步”。

  6. 在“设计查询”页上,在“查询”框中键入 FetchXML 查询。 若要获取该查询,您可以执行以下操作之一:

    • 从高级查找查询获取 FetchXML。 为此,请打开 Microsoft Dynamics 365,单击“高级查找”,创建所需的查询,然后在“高级查找”选项卡上单击“下载 Fetch XML”。 将 FetchXML 复制到 Microsoft Visual Studio 中数据集属性的“查询”框中。

    • 手动输入 FetchXML 查询。 以下示例显示如何创建显示有 5,000 名或更多员工的所有客户的报表。

      <fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="false">
        <entity name="account">
          <attribute name="name" />    
          <attribute name="numberofemployees" />
          <attribute name="accountnumber" />
          <order attribute="name" descending="false" />
          <filter type="and">
            <condition attribute="numberofemployees" operator="gt" value="5000" />
          </filter>
        </entity>
      </fetch>
      

      详细信息:MSDN:使用 FetchXML 构建查询

    单击“下一步”。

  7. 验证要包括在报表中的字段,然后单击“下一步”。

  8. 选择要应用于报表的样式,然后单击“下一步”。

  9. 验证将包含在报表中的字段,然后输入一个报表名称,如拥有 5,000 多名员工的客户。 单击“完成”。

  10. 如果希望看到报表在运行时将如何显示,请单击”预览“选项卡。

这将使用指定的报表名称生成 .rdl 文件。 您可以使用该文件在 Microsoft Dynamics 365 (online) 中通过报表向导发布自定义报表。详细信息:发布报表

创建基于 SQL 的自定义报表(仅 Dynamics 365 本地)

若要使用 SQL Server Data Tools 创建 基于 SQL 自定义报表,请执行以下操作:

  1. 确保拥有受支持的 Microsoft Visual Studio、SQL Server Data Tools 版本和必需权限。详细信息:使用 SQL Server 数据工具的报表编写环境

  2. 打开 Microsoft Visual Studio,然后创建一个报表服务器项目。

  3. 在解决方案资源管理器中,右键单击“报表”文件夹,然后单击“添加新报表”。

  4. 单击“下一步”。

  5. 在“选择数据源”页上,单击“新建数据源”,然后指定以下详细信息:

    • 名称:键入数据源的名称。

    • 类型:选择“Microsoft SQL Server”。

    • 连接字符串:指定用于连接到 Microsoft SQL Server 数据库实例的连接字符串。 要构建连接字符串,选择“编辑”键入 SQL Server 名称和 organizationName MSCRM 数据库。 若要提供凭据,请选择“凭据”。 单击“下一步”。

  6. 在“设计查询”页上,键入用于报表的 SQL 查询,然后单击“下一步”。 例如,要创建显示所有拥有 5000 名或更多员工的客户的报表,其中 OrgName_MSCRM 是组织数据库的名称,请使用此查询。

    Use OrgName_MSCRM Select Name, AccountNumber, NumberofEmployees from AccountBase where NumberofEmployees > 5000 order by NumberofEmployees desc
    

    或者,您可以通过选择“查询生成器”来设计查询。

  7. 在“选择报表类型”页上,选择“表格”报表或“矩阵”报表,然后单击“下一步”。

  8. 验证要包括在报表中的字段,然后单击“下一步”。

  9. 选择要应用于报表的样式,然后单击“下一步”。

  10. 验证将包含在报表中的字段,然后输入一个报表名称,如拥有 5,000 多名员工的客户。 单击“完成”。

  11. 如果希望看到报表在运行时将如何显示,请单击”预览“选项卡。

这将使用指定的报表名称生成 .rdl 文件。 您可以使用该 .rdl 文件在 Microsoft Dynamics 365 中发布自定义报表。详细信息:发布报表

有关如何使用报表设计器创建报表的详细信息,请参阅创建基本表报表(SSRS 教程)

另请参阅

使用 SQL Server 数据工具的报表编写环境
使用 SQL Server 数据工具,修改现有的基于 SQL 的报表
博客:开始在云中使用自定义报表

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