如何在uReport2的SQL语句中添加查询参数并且访问报表页面

       相信看过第二章link《uReport2报表工具的基础使用及注意事项》的读者们应该对uReport2的基础操作会有所了解的,本章就开始讲述一下,如何在uReport2的SQL语句中添加查询参数并且访问报表页面。

(一)添加查询参数

       因为uReport2的编写入口支持表达式解析,不难想到可以用${}的方式进行编写。当然,此处需要借助param()函数来获取用户提交的参数,具体如下所示:

(二)不确定传参方式

当我们直接预览数据时,因为没有传参,此处会根据我们参数设置里面的字段默认值传值过去进行查询。

       假如我们不清楚当前参数是否需要传入,此时需要把sql转化为表达式的方式来编写,并且使用三目运算来实现,此时就不需要设置下列的参数列表,具体代码如下:

${ 
  "select * from sys_role where 1=1"+
	(param("id")!=null && param("id")!="" ? " and id = \'"+param("id")+"\'":" ")
	#多个参数 直接添加在下方即可
	#(param("name")!=null && param("name")!="" ? " and name = \'"+param("name")+"\'":" ")
}

       注:此处编写时需要注意空格的使用,比如and前面不能省略空格,否则Sql语句将解析为:

select * from sys_role where 1=1and id = '1'

       则在运行时就会报错,具体问题可以通过查看控制台打印出来的SQL语句就能更快查找问题。
具体效果如下:

       此时浏览数据就能查询出全部数据,因为现在的预览相当于没有传入任何参数。

(三)如何传参及访问报表页面

       那我们要怎么去测试传入参数访问报表页面呢?还记得我们打开预览的报表文件时默认访问的链接是http://localhost:8080/ureport/preview?_u=p,因此我们需要修改当前链接的参数,如:http://localhost:8080/ureport/preview?_u=file:roleSelect1.ureport.xml,这里的file对应的就是我们所保存的报表文件,它是以xml文件的形式保存到webapp/WEB-INF/ureportfiles下的。
最后我们只需要在这个链接中添加参数即可,如下所示:

#不传入参数
http://localhost:8080/ureport/preview?_u=file:roleSelect1.ureport.xml
#传入参数
http://localhost:8080/ureport/preview?_u=file:roleSelect1.ureport.xml&id=1

       具体效果如下:

       如果需要设置访问报表居中,可以进行如下操作:

       设置完成,点击保存之后,再访问报表,效果如下:

完成!
       如有遇到什么问题,欢迎各位读者在评论区下留言,如果错误之处,请各位大佬多多指出,谢谢!

本文地址:https://blog.csdn.net/xuguoxing123/article/details/110953096

(0)
上一篇 2022年3月21日
下一篇 2022年3月21日

相关推荐