存储过程可直接用作数据集,无需在数据库查询中另行调用。FineReport支持将各类数据库的存储过程作为数据集使用,且定义方式统一。本文将以FineReport这一Java报表展示工具为平台,详细介绍如何利用其功能实现存储过程的数据集应用,操作简便,兼容性强。
1、 以Oracle为例,创建模板数据集,详细说明具体定义方法。
2、 在7.0.4版本中,存储过程被划分为模板和服务器两类数据集;而在此版本之前,仅支持服务器存储过程数据集。
3、 点击模板中的模板数据集,或在数据集面板点击+按钮,操作所示。
4、 切换至Oracle数据库连接,双击目标存储过程进行添加操作,所示。
5、 MySql、DB2、Oracle和SqlServer支持自动获取参数及其默认值,而Access、Hsql和Sybase不支持自动获取,需手动添加相应参数信息。
6、 存储过程定义后的数据集如下所示
7、 该存储过程的位置取决于定义处:若在模板数据集定义,则位于模板数据集;若在服务器数据集定义,则显示于对应服务器数据集的标签页中。
8、 FineReport中存储过程返回的是数据集,无法直接返回单个参数值。
9、 支持多结果集返回
10、 支持在存储过程中同时返回多个结果集。
11、 点击预览可查看多个结果集,所示。
12、 数据集支持同时展示多个结果,所示。
13、 多次结果集仅调用一次存储过程。
评论
更多评论