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

2.设计步骤
2.1创建一个名为员工信息 的数据报表
创建一个员工表,主要有四个字段:员工名称、员工性别、员工年龄、入职时间

2.1.1 为员工信息创建一个SQL数据源
名字叫做员工信息统计

2.1.2 将字段拖拽到报表设计器

2.1.3 重点来了-> 分栏设置
选中要循环的区域右键“循环块->设定并指定次数”,如下图

注:序号列idx是固定取值,当需要递增序号时必须使用#{ygxxtj.idx},ygxxtj为数据集的key
设置之后设计界面如下图

如何实现自定义分页?
设置自定义分页非常简单,只要点击设计器上方的“预览工具条设置”,再设置“每页显示条数”,即可重新定义每页分页条数。如下图所示:

如何使用存储过程?
1.在数据库中创建存储过程或函数
CREATE PROCEDURE `jmdemo`(name varchar(32))
BEGIN
-- 通过用户名查询列表
SELECT * FROM user
WHERE username = name;
END
2.创建数据集
2.1 创建数据集
在设计界面,点击“数据集管理 ->SQL数据集”,进入SQL 数据集配置界面,如下图:

2.2 选择好数据源:
下方如果有表,会显示表名称

3.调用存储过程
3.1 调用
在SQL 数据集配置界面,在报表SQL栏输入表达式 CALL name( ${parma},...) 如下图:
- name:存储过程名称
- parma:传入的参数1
- ...:代表后面可以写多个参数,如${name},中间用,隔开
示例:
CALL jmdemo('${name}')

3.2 点击‘SQL解析’,如果有传参,会提示解析失败或数据为空 如下图:

3.3 输入参数默认值后,再次点击SQL解析,出现如下图效果,则解析正常 如下图:
[图片上传失败...(image-56c10a-1652266341521)]
字段会自动解析出来:

4 oracle存储过程的使用
4.1 创建存储过程
需要存在输出游标sys_refcursor,且写在括号里面最后一个,xb性别为参数,可以写多个,其中用逗号分开
begin
open out_result_cursor for
select ID,NAME,SEX from demo where SEX = xb;
end;
数据集页面写法参考如下:
- CALL 存储过程名称(
{param...},?)
-
{param}单引号
- ? 游标,需要在参数后面填写
CALL jmtest('${sex}',?)
image.png
点击sql解析

数据预览效果展示

附录 更多体验
网友评论