报表批量打印

背景说明

在应用中,经常遇到,批量打印的需求,批量打印,顾名思义,就是点击一次打印按钮,能打印多张报表。

下面,我们来介绍一下怎么样实现批量打印的

应用举例:

Jsp代码

<%

//report的参数格式为:report={无参数报表名}{报表1(参数1=value1;参数2=value2;…)}{报表2(参数1=value1;参数2=value2;…)}…prompt=yes

request.setCharacterEncoding( “GBK” );

String report = request.getParameter( “report” );

if( report == null || report.trim().length() == 0 ) throw new Exception( “report=null” );

String prompt = request.getParameter( “prompt” );

String appmap = request.getContextPath();

String serverPort = String.valueOf( request.getServerPort() );

String serverName = request.getServerName();

String appRoot = “http://” + serverName + “:” + serverPort + appmap;

%>

<object classid=”clsid:8AD9C840-044E-11D1-B3E9-00805F499D93″ codebase=”<%=appRoot%>/j2re-1_4_1-windows-i586-i.exe#Version=1,4,1,0″ width=”40″ height=”16″ id=”report1_directPrintApplet” style=”vertical-align:middle”>

<param name=”name” value=”report1_directPrintApplet”>

<param name=”code” value=”com.runqian.report4.view.applet.DirectPrintApplet.class”>

<param name=”archive” value=”<%=appmap%>/runqianReport4Applet.jar”>

<param name=”type” value=”application/x-java-applet;version=1.4″>

<param name=”appRoot” value=”<%=appRoot%>”>

<param name=”dataServlet” value=”/reportServlet?action=1″>

<param name=”srcType” value=”file”>

<param name=”fontFace” value=”宋体“>

<param name=”fontSize” value=”18pt”>

<param name=”fontColor” value=”#0000FF”>

<param name=”backColor” value=”#12632256″>

<param name=”icon” value= “<%=appmap%>/images/print.gif”>

<param name=”label” value=”打印“>

<param name=”needPrintPrompt” value=”<%=prompt%>”>

<param name=”scriptable” value=”true”>

</object>

&nbsp;&nbsp; <a href=”javascript:window.close()” class=”style3 style5″>取消</a>

<script language=javascript>

function runqian_getPrintReports() {

return “<%=report%>”;

}

</script>

将这个jsp文件放在应用中的相应目录下,发布浏览

在浏览器中,输入urlhttp://localhost:8080/demo/jsp/dayin.jsp?report={1.raq}{2.raq(arg1=”1″)}就可以了。参数report={1.raq}{2.raq(arg1=”1″)}就是我们需要打印的报表,多个报表是由”{}“分隔的;报表内的参数,是在报表名称后用”()”标识,参数之间用”;”分隔。

在页面中,你就会看见一个打印按钮,你点击,多张报表就都在打印机中打印出来了。

总结:有了批量打印,一点按钮,打印多张报表就可以实现了,是不是感觉特别方便呢。

热门文章