现在随着NoSQL数据库越来越流行,MongoDB数据库作为NoSQL数据库中的领头羊,使用也越来越广泛。但是在FineReport的标准功能中,无法连接和使用MongoDB数据库,随着FineReport V8.0版本发布提供了数据连接和数据集接口后,就可以开发一款MongoDB数据集,可以连接和使用的MongoDB数据库的插件了,目前不支持skip和limit功能。
2. 操作步骤编辑
2.1 安装插件
设计器插件安装方法参照设计器插件管理
服务器安装插件方法参照服务器插件管理
2.2 定义数据连接
点击服务器>定义数据连接,新建一个MongoDB类型的数据连接,按实际情况填写好数据库地址、端口、用户名(没有则不填)、密码(没有则不填)、认证类型(根据实际认证类型选择)、默认数据库名(不需要则不填)、选项(不需要则不填),如下图:

点击测试连接,连接成功即可使用该数据库中的数据了。

2.3 添加MongoDB明细数据集
进入报表设计界面,在左下角添加数据集的地方,选择添加一个“MongoDB明细数据集”,然后选择需要查询的数据库,并输入表名和查询条件,即可预览到MongoDB数据库表中的数据。

(1)简单型数据
MongoDB数据库表的初始数据:

选择数据库,输入表名和查询条件(查询条件如果为空则表示执行语句),简单型数据没有纬度可以不填写,过滤条件和排序条件根据需求填写,一个简单的示例,如下图:

点击预览,结果如下图:

(2)数组型数据
MongoDB是文档型数据库,每个文档(doc)表示数据的一项记录。相比关系型DB的row只能使用简单的数据类型,doc能够使用复杂的数据类型:内嵌doc,数组。
MongoDB的数组是一系列元素的集合,使用中括号 [] 表示数组,例如:[1,2,3]的元素是整数值,[{name:"t5"}, {name:"t7"}],[ {name:"t5", age:21}, {name:"t7", age:22} ]的元素是doc。
注:MongoDB数据集插件V8.1及往后的版本支持数组类型的元素,自动扩展
MongoDB数据库表的初始数据:

选择数据库,输入表名,设计器中预览,数组可以自动扩展,如下图:

(3)对象型数据
MongoDB数据库表的初始数据:

选择数据库,输入表名,纬度筛选根据需求,显式的填写需要展示的维度,如 name.O,name.P,如下图:

2.4 添加MongoDB聚合数据集
进入报表设计界面,在左下角添加数据集的地方,选择添加一个“MongoDB聚合数据集”,然后选择需要查询的数据库,并输入表名和聚合条件,即可预览到MongoDB数据库表中的数据。
注:MongoDB数据集插件V9.0及往后的版本支持聚合数据集

MongoDB数据库表的初始数据:

选择数据库,输入表名,选择聚合操作符,输入值(这里是根据作者计算他所写的文章数),点击预览,如下图:

3. 注意事项编辑
当添加的参数为时间参数时:
在MongoDB中要转换为ISO标准格式的时间格式,如下图所示,查询日志中2017年2月18日以前的记录:

请及时采纳,您的采纳,是我的动力啦