商用报表工具大部分都供应这个功能,运用中可以通过集成报表工具来获取相应的能力

我们就以润乾报表为例来看一下如何在运用中添加通用查询功能

为什么以润乾报表为例呢,由于润乾报表 3 高!
专业报表 20 年,功能好,手艺高;用的人多,市场霸占率高;价格低、性价比高

jsp拼接json字符串如何在运用中实现通用查询功效 Vue.js

整体解释

润乾通用查询页面由通用查询模块(上半部分) 和报表模块(下半部分) 两个独立部分组合而成

) 通用查询模块(上半部分)的核心包括元数据 JSON 和查询 JSON

如上图中,通用查询模块的左边部分是由 “元数据 Json+ 通用查询标签(commonQuery)”天生,用户拖拽完后天生的右边部分终极会天生“查询 JSON”, 然后报表模块解析后输出报表

集成步骤1 集成运用包并配置授权

把润乾标准的 j2ee 运用包,拷贝到自己的运用目录下

把稳:web.xml 文件不能拷贝,而是打开润乾的 web.xml 文件,把个中的内容拷贝到您的 web.xml 文件中并按哀求的顺序合并

打开 [WEB 运用根目录]/WEB-INF/raqsoftConfig.xml 文件,配置授权和数据源信息

分别在安装目录下找到以下三个 jsp 文件,后续步骤会陆续用到这些文件,

1、通用查询页面 cqIndex.jsp(路径:demo\raqsoft\guide\jsp);

2、查询模块页面 cq.jsp(路径:demo\raqsoft\guide\jsp)

3、报表模块页面 cqReport.jsp(路径:demo\reportJsp)

通用查询页面 (cqIndex.jsp)由查询模块(cq.jsp)和报表模块 (cqReport.jsp) 两部分组成,模块间相互独立,互不影响

2 准备元数据 JSON 并配置标签

元数据 JSON 的天生办法有很多种,本例以利用直接供应 json 字符串为例,初始化通用查询模块

编辑 cq.jsp,利用 json 字符串天生元数据 JSON:

String metadata = “[{name:‘group1’,fields:[{name:‘EID’,title:‘员工编号’},{name:‘GENDER’,title:‘性别’},{name:‘SALARY’,title:‘人为’}]}]”;

然后在 jsp 中定义 Tag 标签raqsoft:commonQuery的属性及其值,用 Tag 标签完成通用查询的解析及运算,按用户配置的属性哀求将 HTML 文件流输出到客户端

<raqsoft:commonQuery

metadata=“<%=metadata%&gt;”

/>

3 解析查询 JSON

点击查询后会天生一个 json 串,通称查询 JSON,通过集算器脚本(润乾独占的开源打算引擎)解析该 json,然后把结果通报给报表

示例:新建脚本文件 QueryDS.dfx,内容如下:

在 cqReport.jsp 中已将查询 json 赋值给了 queryJSON 参数,因此需在集算器脚本中定义名为 queryJSON 的参数,用于吸收通用查询返回的查询 json:

4 制作报表模块展示数据

新建报表 Query.rpx,利用上一步的集算器脚本作为数据集,报表模板如下:

数据集定义:

参数定义:

5 发布报表并查看

在 cqReport.jsp 中定义报表标签

<report:html name=“report1”

srcType=“file”

reportFileName=“<%=report%>”

/>

然后浏览器中访问通用查询的主页面 cqIndex.jsp

http://localhost:6868/demo/raqsoft/guide/jsp/cqIndex.jsp?rpx=commonQuery/Query.rpx

到此一个完全的通用查询功能就集成完毕了,可以自由定义查询条件了

拖拽左上角列出的元数据 json 中的指标到右侧,对指标进行查询、汇总、条件过滤等操作,点击查询按钮,结果报表就出来了

更多的,数据库数据怎么天生 json,动态元数据 json 怎么做,集算器脚本还能做什么,可以参考: 通用查询控件利用方法 - 乾学院