润乾报表批量打印不用触发直接打印.docx_第1页
润乾报表批量打印不用触发直接打印.docx_第2页
润乾报表批量打印不用触发直接打印.docx_第3页
润乾报表批量打印不用触发直接打印.docx_第4页
润乾报表批量打印不用触发直接打印.docx_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1. 问题概述 润乾提供批量打印的方案, 在jsp中用标签来直接调用applet程序进行批量打印,但还是需要点打印按钮来触发打印这个事件, 客户希望不用触发,不需要点打印按钮直接执行批量打印,然后提示打印完成直接关闭页面。 难点: 此问题以前也有客户提过,但当时没有找到好的解决办法。查找了一些相关资料,原来发现用JS去触发不行,但是applet自己的start()是可以. 2. 案例 中国登记结算上海分公司 3. 解决思路 1.重写一个打印的类DirectPrintWithoutShow.java,这个类要继承原来的直接打印的类DirectPrintApplet,然后在这个类中直接调用DirectPrintApplet.java中的print方法,跳过触发的步骤直接打印所传的报表文件 2.将这个类打入runqianReport4Applet.jar,注意:打包时先把包解压缩,然后删掉mete这个文件夹。 3.对新包进行签名。 4. 在directprint.jsp代码里把 改为: 为了打印完直接关闭,可以在jsp最后面加上一些js来关闭页面,如: alert(打印完成!); window.close(); 4. 具体设计步骤 1.写DirectPrintWithoutShow.java代码: package com.runqian.report4.view.applet; public class DirectPrintWithoutShow extends DirectPrintApplet public void start() super.start(); super.print(); 2.编译java文件打包到runqianReport4Applet.jar中 3.对修改后的新包进行签名 在命令行中执行: keytool -genkey -alias RUNQIAN -keypass 你的密码 -keyalg RSA / RUNQIAN是证书的别名,这里随便起,但是要和下面的签名过程保持一致 / 如果提示找不到命令请检查环境变量. Enter keystore password: 输入证书库密码 What is your first and last name? Unknown: 北京润乾信息系统技术有限公司 What is the name of your organizational unit? Unknown: What is the name of your organization? Unknown: What is the name of your City or Locality? Unknown: BJ What is the name of your State or Province? Unknown: BJ What is the two-letter country code for this unit? Unknown: CN Is ; correct? no: yes 中间的输入过程也可以输入别的内容。 在客户端运行applet时会弹出一个许可协议,这些内容会显示出来。 证书创建完成后,就可以用它来签名jar包了: JARsigner -verbose runqianReportApplet.jar RUNQIAN / RUNQIAN是证书别名,要和上面的一致 4.修改原有directprint.jsp代码里 的值为如下红色字体。 是否打印? object classid=clsid:8AD9C840-044E-11D1-B3E9-00805F499D93 codebase=/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=archive value=/runqianReport4Applet.jar param name=appRoot value= param name=needPrintPrompt value=    取消 /此函数返回的格式为:无参数报表名报表1(参数1=value1;参数2=value2;.)报表2(参数1=value1;参数2=value2;.). function runqian_getPrintReports() /请在此函数里加上打印前需要的处理,最后返回需要打印的报表 return ; function C() alert(打印完成!); window.close(); 4. 正常调用applet程序程序成功,后台会有日志信息提示:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论