Dynamics 365使用FetchXML创建自定义报表

1367 字
7 分钟
Dynamics 365使用FetchXML创建自定义报表

本文是 Dynamics 365 SSRS 报表开发的完整指南,不仅涵盖从 Visual Studio 环境搭建到使用 FetchXML 创建自定义报表的全过程,还包含“获取用户最后一次登录时间”的实例、连接字符串配置及报表发布步骤

1. 环境搭建#

请按下面的顺序执行以下步骤,否则会出现意想不到的问题

  1. Visual studio 2019 → 开发环境
  2. SQL Server Data Tools → 报表设计基础工具
  3. Microsoft Reporting Services Projects 下载
  4. 重启电脑 → 确保组件正确加载
  5. 安装 Dynamics 365 Report Authoring Extension 下载
Tip

完成第3步安装后必须重启计算机!

重启后再继续安装 Dynamics 365 Report Authoring Extension 扩展

2. 实例:获取用户最后一次登录时间#

Step 1. 创建报表项目#

  1. 打开 Visual Studio 2019,选择 “创建新项目”
  2. 在搜索框中输入 “报表”,选择 “报表服务器项目”
  3. 点击 “下一步”,输入一个有意义的项目名称,然后创建项目

Visual studio 2019 创建报表项目
Visual studio 2019 创建报表项目

项目创建成功后,文件结构如下:

Visual studio 2019 报表项目文件结构
Visual studio 2019 报表项目文件结构

Step 2. 添加报表文件#

  1. 右击报表项目下的 “报表” 文件夹(上面截图中D365CrmSampleCode.Reports项目下的报表文件夹)
  2. 选择 “添加” → “新建项”
  3. 选择 “报表” 模板,输入一个有意义的报表名称(中文、英文都可以)

Visual studio 2019 添加报表
Visual studio 2019 添加报表

Step 3. 配置数据源#

  1. 右击左侧报表数据面板中的 “数据源” 文件夹 → 选择 “添加新数据源”
  2. 设置数据源属性,请看下方表格
#数据源属性
1名称输入一个有意义的名称就行,一般我写的是 “DynamicsCRMDataSource
2类型选择 “Microsoft Dynamics 365 Fetch
3连接字符串根据实际情况填写,格式为 {环境URL}/{环境唯一名称}
Tip

(1) 如果不小心关掉了左侧的“报表数据”,可以通过快捷键重新打开,快捷键:Ctrl + Alt + D

(2) 连接字符串获取方法可以参考本文补充说明章节中的 “获取连接字符串”

点击添加数据源
点击添加数据源
填写数据源属性信息
填写数据源属性信息

Step 4. 准备 FetchXML 查询#

本实例使用到的 FetchXML 如下

<fetch aggregate="true">
<entity name="audit">
<attribute name="createdon" alias="LastLoginDate" aggregate="max" />
<filter>
<condition attribute="operation" operator="eq" value="4" />
</filter>
<link-entity name="systemuser" from="systemuserid" to="objectid" link-type="inner" alias="SystemUser">
<attribute name="fullname" alias="FullName" groupby="true" />
<attribute name="domainname" alias="DomainName" groupby="true" />
<attribute name="isdisabled" alias="IsDisabled" groupby="true" />
<attribute name="accessmode" alias="AccessMode" groupby="true" />
<attribute name="userlicensetype" alias="UserLicenseType" groupby="true" />
</link-entity>
</entity>
</fetch>

Step 5. 创建数据集#

  1. 右击右击左侧报表数据面板中的 “数据集” 文件夹 → 选择 “添加数据集”

添加数据集
添加数据集

  1. 配置数据集属性:
    • 使用 “嵌入在报表中的数据集”
    • 选择之前创建的数据源(DynamicsCRMDataSource)
    • 查询类型选择 “文本”
    • 粘贴 Step 4 中的 FetchXML
Tip

首次连接时会弹出 Dynamics 365 登录框,请使用开发账号登录

填写数据集信息
填写数据集信息

Step 6. 设计报表界面#

  1. 添加标题:从工具箱拖拽 “文本框” 控件,输入报表标题

添加文本框组件
添加文本框组件

  1. 添加表格:拖拽 “表(Table)” 控件到设计区域,设计列标题和样式

添加表格组件
添加表格组件

Step 7. 绑定数据字段#

以 “用户名称” 列为例,后续是列操作都是差不多的,相信你能搞定的!

  1. 右击单元格 → 选择 “表达式”
  2. 在表达式编辑器中,双击 “字段” 下的 “FullName”
  3. 点击 “确定” 完成绑定。

数据绑定
数据绑定

重复上述步骤,为所有列绑定对应字段:

为各列添加表达式
为各列添加表达式

Step 8. 预览报表#

点击 “Preview” 选项卡查看报表效果:

预览报表
预览报表

最终的效果如下:

效果
效果

Step 9. 发布到 Dynamics 365#

  1. 进入 Power Apps 门户,创建或打开解决方案
  2. 点击 “新建” → 选择 “报表”

在解决方案新添报表
在解决方案新添报表

  1. 上传 .rdl 文件,填写一个有意义的报表名称

填写报表信息
填写报表信息

完成后将会看到我们新建的报表,打开报表就可以查看了

在环境中打开报表
在环境中打开报表

补充说明#

自定义报表的分类#

Dynamics 365 中,自定义报表主要分为两类:

  • 全局类报表,如本例所示,可通过报表实体或视图工具栏访问
  • 单记录类报表,通常嵌入在业务记录表单中,接收特定记录的 GUID 作为参数

获取连接字符串#

连接字符串格式:{环境URL}/{环境唯一名称}

例如你的环境 URLhttps://sample.crm.dynamics.cn,你的环境唯一名称是 123456789,那么完整的连接字符串应该是 https://sample.crm.dynamics.cn/123456789

方法一:UCI 界面(推荐)#

  1. 登录 Power Apps
Tip

注意区分 Power Apps 版本:

国际版:https://make.powerapps.com

世纪互联版:https://make.powerapps.cn

  1. 点击右上角设置按钮(⚙️) → 选择 “开发人员资源”

UCI界面获取环境唯一名称
UCI界面获取环境唯一名称

在这里就能看到环境唯一名称:

环境唯一名称
环境唯一名称

方法二:经典 UI 界面#

  1. 设置 → 自定义项 → 开发人员资源

经典UI界面打开自定义项
经典UI界面打开自定义项

选择自定义项
选择自定义项

  1. 在页面中查找”实例唯一名称”

环境唯一名称
环境唯一名称

支持与分享

如果这篇文章对你有帮助,欢迎分享给更多人或打赏支持!

打赏
Dynamics 365使用FetchXML创建自定义报表
https://mgrowup.com/posts/dynamics365/developing-ssrs-reports-using-fetch/
作者
Donghai
发布于
2024-10-17
许可协议
CC BY-NC-SA 4.0

评论区

Profile Image of the Author
Donghai
Hello, I'm Donghai.
公告
欢迎来到我的博客!这是一则示例公告。
分类
标签
最新动态
站点统计
文章
62
分类
9
标签
37
总字数
76,949
运行时长
0
最后活动
0 天前
站点信息
构建平台
Vercel
博客版本
Firefly v6.16.5
文章许可
CC BY-NC-SA 4.0