如何自定义填报表导出的文件名

需求:

在报表或填报表页面,我们经常有导出的需求,而导出的文件名默认为报表名称。可能有的时候并不符合客户想要的,这时要如何自定义导出文件名称呢?

实现方式

1、固定导出文件名称

利用润乾报表 html 标签中提供的“saveAsName”属性,就可以指定报表另存为 EXCEL 时的文件名称。
拿自带的 showInput.jsp 为例,添加标签 saveAsName=”员工基本信息”:

1png

按上面的设置我们添加好标签后,在页面再导出 EXCEL 文件,可以看到文件名默认就是我们指定的文件名称了。

2png

2、指定报表中某个单元格的值为导出文件名称

直接在展示报表 jsp 中添加获取单元格值的代码,并赋值给 saveAsName 标签。
代码如下:
var cell =_getInputCell(sgid,“A4”,0);
var zhi=cell.getAttribute(“value”);
saveAsName=zhi;

3png

测试为获取 A4 单元格的值做为导出的文件名称。

4png

3、动态赋值

例如,通过 url 传递导出的名称,需要在 jsp 定义一个变量,如下;
String n = request.getParameter(“n”);
然后添加标签 saveAsName=“<%=n%>”

5png

6png

这时导出报表,在 url 给变量 n 传递值,可以看到导出的结果为指定的 n 的名称。

7png

注意:
因所有报表文件展示时默认使用同一 jsp 文件,所以在使用方式 1 和方式 2 时,导出结果文件时都会使用那个固定的文件名或者是单元格名称。
所以方式 3,通过变量赋值的方式还是比较合适。不仅可以通过 url 传递,也可以自己去定义导出的规则,最后将结果名称赋值给 saveAsName 标签即可。