zhangdaiscott 发表于 2022-4-25 19:05:51

制作报表原来可以这么简单—积木报表使用分享

在我们日常工作生活中,都会遇到需要做报表的情况;但是有时候我们费时费力做完以后,领导并不满意,那就来试试积木报表吧。下面呢,我们来分享一下积木报表使用的方法。
如何实现分栏报表?在我们报表使用过程中,经常会用到将数据分成多栏进行展示的情况,这个时候就用到了分栏。
1.效果展示
https://oscimg.oschina.net/oscnet/up-4cd46363ebc0fe6a23c04218616b6da85d0.png
2.设计步骤

2.1创建一个名为“员工信息”的数据报表
创建一个员工表,主要有四个字段:员工名称、员工性别、员工年龄、入职时间https://oscimg.oschina.net/oscnet/up-ed38d78f7df30a2029fda7af648c73f717d.png
2.1.1 为员工信息创建一个SQL数据源名字叫做员工信息统计https://oscimg.oschina.net/oscnet/up-f3f88f0377d8e32747bf67dbba746b0287b.png
2.1.2 将字段拖拽到报表设计器
https://oscimg.oschina.net/oscnet/up-7f1d7fe18596522c2349fd4e18ac1211fc9.png

2.1.3 重点来了-> 分栏设置选中要循环的区域右键“循环块->设定并指定次数”,如下图https://oscimg.oschina.net/oscnet/up-3db88a950debeb74e9c68546851622451a6.png注:序号列idx是固定取值,当需要递增序号时必须使用#{ygxxtj.idx},ygxxtj为数据集的key设置之后设计界面如下图https://oscimg.oschina.net/oscnet/up-69a85b59605a6b8a5292b8f0567fb2f5726.png

如何实现自定义分页?设置自定义分页非常简单,只要点击设计器上方的“预览工具条设置”,再设置“每页显示条数”,即可重新定义每页分页条数。如下图所示:https://oscimg.oschina.net/oscnet/up-68b50cce5b138128bf88e44fccf6c984323.png

如何使用存储过程?
1.在数据库中创建存储过程或函数
CREATEPROCEDURE `jmdemo`(name varchar(32))
BEGIN
-- 通过用户名查询列表
SELECT * FROM user
WHERE username = name;
END
2.创建数据集
2.1 创建数据集在设计界面,点击“数据集管理 ->SQL数据集”,进入SQL 数据集配置界面,如下图:https://oscimg.oschina.net/oscnet/up-cf5f1353400080e4815943e0114eeef6ee9.png
2.2 选择好数据源:下方如果有表,会显示表名称https://oscimg.oschina.net/oscnet/up-69ad8c8556078c8e93e76bef41442e0419e.png
3.调用存储过程
3.1 调用在SQL 数据集配置界面,在报表SQL栏输入表达式 CALL name( ${parma},...) 如下图:
[*]name:存储过程名称
[*]parma:传入的参数1
[*]...:代表后面可以写多个参数,如${name},中间用,隔开 示例:
CALL jmdemo('${name}')https://oscimg.oschina.net/oscnet/up-29e7bebac0d1e9a82ec4143a7d0235cd113.png
3.2 点击‘SQL解析’,如果有传参,会提示解析失败或数据为空 如下图:
https://oscimg.oschina.net/oscnet/up-1b3c7d6c97da48f7ae0122db4ee06abfc3f.png

3.3 输入参数默认值后,再次点击SQL解析,出现如下图效果,则解析正常 如下图:
https://oscimg.oschina.net/oscnet/up-7ee0407ac5d7d2cbaf4e3341d2f896a582a.png字段会自动解析出来:https://oscimg.oschina.net/oscnet/up-df81bf08744e25a7d727fb2b6e8cc6744c9.png
4 oracle存储过程的使用4.1 创建存储过程需要存在输出游标sys_refcursor,且写在括号里面最后一个,xb性别为参数,可以写多个,其中用逗号分开begin
open out_result_cursor for
      select ID,NAME,SEX from demo where SEX = xb;
end;

数据集页面写法参考如下:
[*]CALL 存储过程名称(param1,{param...},?)
[*]参数,多个用逗号拼接,字符串需要有param参数,多个用逗号拼接,字符串需要有{param}单引号
[*]? 游标,需要在参数后面填写
CALL jmtest('${sex}',?)https://oscimg.oschina.net/oscnet/up-c7f19dd2c03725723b45694a86c30178fd6.png
点击sql解析https://oscimg.oschina.net/oscnet/up-dc10ccf0c0feae707432ee5d9959beca080.png数据预览效果展示https://oscimg.oschina.net/oscnet/up-a5fe7c85bf0c1c56d99d67b8a7d7e65a936.png
附录 更多体验
[*]体验地址:http://jimureport.com/
[*]文档地址:http://report.jeecg.com/




页: [1]
查看完整版本: 制作报表原来可以这么简单—积木报表使用分享