润乾报表批量打印实例
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
报表批量打印开发全过程(从零开始)
第一步:安装报表开发工具
下载地址:
ftp://172.18.33.219/URP开发必备软件/报表/可执行文件/报表工具客户端设计器的安装文件将该目录下的文件下载到本地并安装
目录内的”江苏金智内部开发版设计器v355.dat”注册用
第二步:开发报表
一般是在现有的报表基础上修改出自己的报表,这样可以快一些,这些报表可以从报表服务器上下载到,
地址::9093/report/console/index.jsp
host文件:172.18.33.250
用户名:amadmin/11111111
(1)配置数据源,数据源可以通过报表控制台查询
(2)进行宏定义(类似于系统变量,将来可以通过外部页面传递进报表)
(3)配置数据集(可以使用宏定义的变量)
(4)开发报表
第三步:将开发好的报表上传至报表服务器(1)找到要上传的位置,点击新增报表
(2)选择本地报表,完成后点击添加完成报表添加
第四步:开发批量打印程序,一般界面如下图所示
批量打印逻辑:先检查是否勾选,若勾选则打印勾选记录,若不存在则检查查询条件是否为空,不为空则打印所有满足查询条件的记录,否则提示“请选择要打印的记录”
涉及的文件:
开发服务器中:swms.propertie,BGTAG.jsp,JB.jsp
报表服务器中:batchPrint.jsp
(1)swms.propertie文件中增加报表服务器打印地址
#报表服务器打印地址
REPORT_PRINT=:9093/report/run/reportJsp/batchPrint.
jsp
(2)BGTAG.jsp
1)头文件中增加:
<%@ page import="com.wiscom.app.swms.service.factory.SwmsConfig" %>
2)toolbar中增加:
imgSrc="/epstar/web/swms/client/resources/images/toolbar/print.gif" action="printReport" styleClass="" hiliteStyleClass="" /> 3)Pane中增加(蓝色代码部分) <% String filterRep=""; if(request.getParameter("filter")!=null){ filterRep=request.getParameter("filter"); } %> var filterRep="<%=filterRep%>"; var printReportUrl="<%=SwmsConfig.getConfig("REPORT_PRINT")%>"; window.onresize = function (){ document.getElementById("div_V_DK_DKHTST").style.width = document.body.offsetWidth; }; window.onresize(); (3)JB.jsp中增加printReport()函数 备注:修改该函数中和自己模块相关的参数 //打印函数 function printReport(){ /*================================================================================ 功能描述 : 打印所有选中的报表 作用窗体 : 输入参数 : 无 输出参数 : 无 ================================================================================*/ var report=""; var objStr=DataGrid_GetSelectedRows("V_DK_DKHTST"); //首先检查过滤条件以及是否有勾选,若都不满足,直接返回 if((filterRep=="")&&(objStr==""||objStr==null)){ alert("提示:请选择要打印的记录!"); return false; } //然后检查是否有勾选,若有则处理勾选记录,否则处理过滤条件 if(!(objStr==""||objStr==null)){ for(var i=0;i report+="{学工系统/助学贷款管理/助学贷款申请审批 表.raq(condition_1='"+StringURLEncode(objStr[i].cells[1].XH)+"';condition_2='"+Stri ngURLEncode(objStr[i].cells[1].HTH)+"')}"; } report+="&prompt=yes"; }else{ if(filterRep!=""){ var objPath="SWMS/GJZXDKGLZXT/HTGL/V_DK_DKHTST"; var fieldName="XH,HTH"; //从filter中获取过滤条件 var filter=filterRep.substring(12,filterRep.length); var xmlDoc; xmlDoc=Page_GetServerDataXmlCP(objPath, fieldName, filter, "",""); var XH=xmlDoc.documentElement.selectNodes("//XH"); var HTH=xmlDoc.documentElement.selectNodes("//HTH"); if(xmlDoc.documentElement.selectNodes("//XH").length!=0){ for(var i=0;i report+="{学工系统/助学贷款管理/助学贷款申请审批 表.raq(condition_1='"+StringURLEncode(XH[i].text)+"';condition_2='"+StringURLEncode (HTH[i].text)+"')}"; } }else{ alert("提示:请选择要打印的记录!"); return false; } } } //此JSP参数格式为:report={无参数报表名}{报表1(参数1=value1;参数 2=value2;...)}{报表2(参数1=value1;参数2=value2;...)}...prompt=yes report="?report="+report; url =printReportUrl+report; window.showModalDialog(url,"","dialogHeight: 150px; dialogWidth: 250px; resizable:Yes; status:no;center:yes"); } (4)batchPrint.jsp见附件 第五步:打印测试 (1)在本地安装1.5.0以上(包含1.6.0)的jre,本进行相关设置,打印时可以看到Java控制台。在控制面板里将plug-in设为显示,在IE里将Applet选择1.5以上的JRE