该帖子主要实现的功能是:
第一次展现报表不显示全部数据,通过参数模板输入参数查询到数据之后,当所有的参数再次置空的时候要做到显示全部数据。
第一步:制作主报表的,拿我们的自带的数据库表雇员表举例:
之前我们的 sql 写 or ? is null 是当参数为空的时候 时候查询全部, 然后我们在这个 sql 语句后面拼接一个动态参数 ${ifSelect}
sql 语句为 : SELECT * FROM 雇员 where 雇员 ID =? or ? is null ${ifSelect}
1) 在数据集参数增加两个参数 arg1.
2) 报表参数增加两个普通参数 arg1 和 selectFlag ,增加一个动态参数 ifSelect 动态参数的值表达式写 if(selectFlag!=“1”,“and 1=2”,"")
第二步:制作参数表单。
1)设置一个单元格的 web 变量名为 arg1 。 用来给主报表的雇员 ID 传递参数值
2) 给某一个单元格默认值,直接在单元格写 1 。 然后设置 web 变量名为 selectFlag。然后隐藏这个单元格。
保存报表和参数模板。发布报表即可。