使用 SQL Server Data Tools 新建报表
SQL Server Data Tools 是用于在 Visual Studio 中创建或编辑 SQL Server Reporting Services 报表的报表创作环境。 最终结果是包含报表定义的报表定义 .rdl 文件,您可以发布它以查看报表。
还可以使用常用文本编辑器创作报表。 若要减少创建自定义报表的工作,请修改提供大多数所需功能的现有 .rdl 文件。 有关 .rdl 文件中 XML 元素格式的详细信息,请参阅报表定义语言参考。 修改的报表 XML 可以通过指定的 XML 架构进行验证。 尝试上传报表时,Reporting Services 还将验证报表定义并拒绝定义无效的报表。
备注
如果 .rdl 文件包含 FetchXML 查询,RDL 中的查询将由 Microsoft Dynamics CRM 2016 报表创作扩展验证,其会从内部针对 FetchXML 架构对查询进行验证。
创建基于 Fetch 的自定义报表
若要创建基于 Fetch 的自定义报表,请执行以下操作:
确保拥有受支持的 Visual Studio、SQL Server Data Tools、Microsoft Dynamics CRM 2016 报表创作扩展版本和必需权限。 更多信息:使用 SQL Server Data Tools 的报表编写环境
打开 Visual Studio,然后创建一个报表服务器项目。
在解决方案资源管理器中,右键单击报表文件夹,然后选择添加新报表。
选择下一步。
在选择数据源页上,选择新建数据源,然后指定以下详细信息:
名称:键入数据源的名称。
类型:选择 Microsoft Dynamics 365 Fetch。
连接字符串:指定连接字符串。 必须采用下面的格式指定连接字符串:
ServerURL;OrganizationName;HomeRealmURL
在此连接字符串中,只有 ServerURL 是必需的。 如果未指定 OrganizationName,则使用运行此查询的用户所属的第一个组织。 HomeRealmURL 是您的组织使用的标识提供者的主页领域 URL,当您的组织使用联合身份验证功能进行标识管理时需要此 URL。 请与您的网络管理员联系以确定主页领域 URL。
选择凭据指定连接到 Dynamics 365 for Customer Engagement 应用或 Dynamics 365 for Customer Engagement 应用的凭据,然后选择下一步。
在设计查询页上,在查询框中键入 FetchXML 查询。 若要获取该查询,您可以执行以下操作之一:
从高级查找查询获取 FetchXML。 为此,请打开 Customer Engagement (on-premises) 应用,选择高级查找,创建所需的查询,然后在高级查找选项卡上选择下载 Fetch XML。 将 FetchXML 复制到 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>
选择下一步。
验证要包括在报表中的字段,然后选择下一步。
- 报表创作扩展根据数据类型添加额外的字段。 数字、日期、查找和选项集有一个额外的 fieldNameValue 字段。 例如,如果 FetchXML 包含 createdon 属性,会有两个字段可用:createdon 和 createdonValue。
- fieldName(示例:createdon)
- 此字段是根据用户的格式设置设定格式的字符串。 只用于显示。 将此值转换为原始数据类型可能会导致错误。 例如,如果日期格式与 Report Server 上的区域设置不匹配,
=CDate(Fields!createdon.Value)
等表达式可能会失败或给出不正确的日期。 - 对于选项集字段,此值是选项集值的显示文本。
- 对于查找字段,此值是链接记录的主名称字段。
- 此字段是根据用户的格式设置设定格式的字符串。 只用于显示。 将此值转换为原始数据类型可能会导致错误。 例如,如果日期格式与 Report Server 上的区域设置不匹配,
- 字段名称Value(示例:createdonValue)
- 此字段是根据数据类型显示的未设定格式的字段的原始值。 可以使用隐藏的 CRM_ 格式参数为特定于用户的显示调整字段并设置格式。
- 对于日期/时间字段,它是 UTC 值。
- 对于数字或货币字段,它是未设定格式的数值。
- 对于选项集字段,它是选项编号值。
- 对于查找字段,它是查找字段的 Guid。
- fieldName(示例:createdon)
- 报表创作扩展根据数据类型添加额外的字段。 数字、日期、查找和选项集有一个额外的 fieldNameValue 字段。 例如,如果 FetchXML 包含 createdon 属性,会有两个字段可用:createdon 和 createdonValue。
选择要应用于报表的样式,然后选择下一步。
验证将包含在报表中的字段,然后输入一个报表名称,如拥有 5,000 多名员工的客户。 选择完成。
如果希望看到报表在运行时将如何显示,选择预览选项卡。
这将使用指定的报表名称生成 .rdl 文件。 您可以使用此文件在 Dynamics 365 for Customer Engagement 应用中通过报表向导发布自定义报表。 详细信息:发布报表