我用IE打印报表打印控件出现下面的提示

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
您的访问请求被拒绝 403 Forbidden - ITeye技术社区
您的访问请求被拒绝
亲爱的会员,您的IP地址所在网段被ITeye拒绝服务,这可能是以下两种情况导致:
一、您所在的网段内有网络爬虫大量抓取ITeye网页,为保证其他人流畅的访问ITeye,该网段被ITeye拒绝
二、您通过某个代理服务器访问ITeye网站,该代理服务器被网络爬虫利用,大量抓取ITeye网页
请您点击按钮解除封锁&查看: 13928|回复: 2
Java报表工具打印方案集锦
论坛徽章:2
本文试图对市面上流行的纯java实现的web报表工具,jasperreport 、 stylereport 、杰表、润乾报表、快逸、finererport为例,分析各报表工具采用的web打印技术的异同、优劣、及对用户需求的适应性,供大家参考。
打印是报表工具的基本功能之一,有些报表工具就是从一个专门的打印程序中发展而来,如用友华表。因为想当然地简单,所以,在报表工具选型时用户常常忽略这个问题,特别是有些报表工具厂商,明知自己的打印方案在满足某些需求时,存在缺陷,但没有尽明确告知义务,而故意事先做好花里胡哨的有关打印方面的文档,欺骗客户。我曾不至一次地听说,有些开发商选用的报表工具,其打印功能不能满足需求,不得不另外找打印工具的事情,实在是吃尽苦头。
报表打印在c/s时代,确实非常简单,vb,vc,Delphi,pb,都有很好用的打印api,有的甚至用报表控件方式,搞定打印更是分分秒的事情,但今天是b/s的天下,报表都是在网页浏览器中显示,但当今的浏览器打印功能一般非常弱(谁让你叫他“浏览”器呢?“浏览”就是让你用眼睛看,“打印”属于兼职),要做到精确分页打印,几乎不可能,所以当前的报表工具,一般不会让你使用浏览器的打印菜单来打印报表,都有自己的解决方案,这下可好,各报表工具厂商由是乎,八仙过海,各显神通,各家都说自己的好,对于web打印了解不深的客户,总有雾里看花的感觉。
归纳来说,当今java报表工具采用的打印技术不外乎三类:Applet打印、导出成pdf/excel打印、控件打印。用户选用的重点是:尽量选择插件小的打印软件,因为文件小意味着安装迅速,启动速度快。插件大小除了插件本身的大小外,还需要考虑支持软件的大小,如有些插件很小,支持软件却很大。
Applet打印
本文开始处提及的报表工具,除违规广告外都支持Applet打印。之所以多数厂商支持Applet方式打印,因为Applet是java实现,与java后台、java报表设计器的兼容性较好,代码容易维护,实现也方便。然而,厂商省事,用户就得多事。Applet方式打印,用户最多的抱怨是需要安装jre(而当前的操作系统,一般不是默认安装的),虽然说,多数厂商已经做到可以自动安装jre,但对于10几M(JRE1.4有15M,JRE1.5为16M))的安装,这意味着用户需要较长时间的等待。
另一个问题是Applet配置复杂,使用不稳定。1995年,正是因为给人们无穷的视觉和脑力震荡的Applet ,使人们认识了java,认识了Games Gosling。所以在b/s早期,人们为了展现html的富客户效果,Applet是唯一之选。但现如今,Applet已经是昨日黄花,早已被ajax、flex取代,是什么原因?战略层面的东西,我也不太说得清楚,但作为程序员,经过几番折腾后,也不会愿意再用Applet了。如经常莫名其妙地出现“小应用程序,… notinited”的错误,还得清理ie缓存,对于Applet打印,还需要设置jre的安全策略等等。不是靠终端用户能完成的,这就必须额外地增加开发商的服务成本。
Applet打印,启动速度慢。Applet打印原理是,当你点击打印按钮时,浏览器启动Applet,Applet根据参数访问后台页面信息,后台返回页面,Applet加载页面后,调用jre的打印服务进行打印。这就意味着,每次打印都需要调用后台服务程序,就必然影响打印的响应速度。
Applet打印很安全,言下之意是ActiveX打印不安全,这是采用Applet打印的厂商津津乐道的,实际上,这是一个伪命题。Applet和ActiveX都是浏览器的插件,我们当然不希望下载插件后,该插件可以为所欲为,比如,删除你磁盘里的文件,或启动一个木马,从这点来说,Applet确实比ActiveX安全,因为Applet是在一个受限的环境里运行,而ActiveX是不受限的。所以,当你访问一个陌生的网站时,出于安全考虑,你可能会允许下载运行Applet,而阻止ActiveX。但当用户访问自己的网站系统,时,这种担心就没必要,这好比,当你与陌生人打交道时,很自然地会问自己,这人可信嘛?但如果你与家里人打交道,这个问题就不成其为问题了。
Applet打印,除了可以设置打印机,设置纸张页面大小等常规打印功能外,往往也集成与打印不相关的功能,比如,打印前修改(有人说,是为了做假帐方便,中国特色,国产报表工具一般都具备,jasperreport,stylereport不支持),按行分页,自由定位,这些本来由设计器完成的功能,挪到打印功能上来,来掩盖上面指出的Applet的种种不足。实际上,Applet功能强弱完全取决于Applet的大小,有些报表厂商甚至用Applet或web start 的方式,提供所谓的基于web的报表设计,前提是下载 40多M的jar包,实际上,这种方案远非一般意义上的纯web 的报表设计,完全是混淆概念。作为用户最希望常规的,他们熟悉的打印功能,不需要不相关的,理解困难的打印功能。
PDF/EXCEL打印
Pdf打印方式,就是用户点击打印后,浏览器会自动弹出adobe reader,再利用adobe的打印按钮进行打印,由于国外adobe reader安装非常普及,国外的java报表工具多提供这种打印方案,比如 stylereport,jasperreport,国内报表工具违规广告也采用这种方式(让人不解),pdf方式打印的好处是能做到精确打印,而且报表预览与打印一气呵成。但不足是需要在客户的机子里,事先安装有adobe reader,作为程序员,一般不太会有问题,因为程序员可能经常要浏览一些pdf文档,多数已经装了adobe reader,但国内的终端用户,大多不知pdf是何物,更谈不上安装。
Pdf打印的另一个问题是必须弹出adobe reader,不能做到无预览打印,这可能由于pdf缺少相应api的缘故吧。
轻量级的ActiveX打印
这里之所以强调“轻量级”,目的是与传统意义上的ActiveX报表相区别。ActiveX技术可以说是报表工具家族里的没落贵族,c/s时代,报表工具一般都被做成控件形式,水晶报表就是如此,在b/s时代,报表工具里仍然能看到ActiveX的身影,但风光大不如从前,如数巨,明宇,用友华表,inforeport。用ActiveX实现报表的不足,在网上你能轻易找到,在此不再详述。ActiveX 报表虽深受诟责,但从打印功能来说,却都是近乎完美,处理得却非常好,非常稳定。
既然,ActiveX打印是长处,能不能扬长避短地使用ActiveX技术?有人提出这样的问题。于是,有些厂商,比如杰表,采用了浏览时用html,打印时用插件的方式。这种方案的需要解决的问题是,ActiveX打印控件,不能太大,否则报表工具成了ActiveX报表了。
与Applet相比,轻量级ActiveX打印具有以下优势:
1.& && & 下载时间短,(大小是Applet的1/250);
2.& && & 本地打印,打印时,不需要访问后台服务程序,不占用服务器资源;
3.& && & 启动速度快,由于控件小,且本地打印,所以打印速度是优于以上两中打印方案,打印速度与你点击浏览器打印菜单相差无几。
采用轻量级的ActiveX打印的不足是,只有ie 5.5 及以上版本支持,其他版本的浏览器不支持。好在ie5.5浏览器已非常普及,在用户那里应该不是大问题。
杰表采用的打印方案,用一个jatoolsPrinter的控件,大小是60k,是经过数字签名的。这个打印控件采用ie特有的打印技术(templateprinter)实现打印功能,支持打印,预览,边距设置,重复打印,批量打印功能。
目前,jatoolsPrinter已经从杰表中独立出来,任何报表工具或第三方软件都利用该控件,实现web打印,推出至今,免费加收费用户上万。
下表总结三种方式的采用者及优劣对比,对于ie5.5客户来说,我们推荐使用ActiveX打印方案.
报表厂商列表
[ 本帖最后由 java8825 于
10:08 编辑 ]
论坛徽章:349
论坛徽章:0
求职 : 论坛徽章:184
后面几个没用过
itpub.net All Right Reserved. 北京皓辰网域网络信息技术有限公司版权所有    
 北京市公安局海淀分局网监中心备案编号: 广播电视节目制作经营许可证:编号(京)字第1149号报表插件 IE 安全设置要求
Web 报表初次运行需要下载一个 ActiveX 插件。因为 IE 安全设置的原因,这个插件有可能不能正常下载,在这种情况下就要对 IE 的安全设置进行修改。
IE 网页浏览器安全设置, 具体步骤:
1、打开 IE 浏览器-〉工具-〉Internet(或本地Intranet)选项-〉安全-〉自定义级别,找到窗口中的“ActiveX 控件与插件”类别。
如果是广域网应该选“Internet”,如果是局域网应该选“本地Intranet”。
2、“对标记为安全的 ActiveX 控件进行初始化和脚本运行”这项设为“启用”。
3、“下载已签名的 ActiveX 控件”这项设为“提示”或“启用”。见下图。
4、点击报表工具栏上的“打印”按钮,提示如②所示提示
5、再次进入报表后,会提示选项,点击“安装”按钮进行安装
总部报表插件
2、卸载IE插件
&&&&&&& 报表插件是通过正规数字签名的,绝对安全,对你的系统也没有任何危害,除了两个 DLL 文件会占据约 3M 硬盘空间外,不会占用任何系统资源,请放心使用。参照下面说明也可以完全将报表插件从您的电脑中清理掉,在您的电脑中不遗留任何数据。
rem 取消注册...
regsvr32 /u griectl.dll
regsvr32 /u griedes.dll
rem 删除文件...
del C:\WINDOWS\system32\griectl.dll
del C:\WINDOWS\system32\griedes.dll
del C:\WINDOWS\system32\grcht50.dll
del C:\WINDOWS\system32\gren50.dll
将以上红色标注的文字拷贝到一个文本文件中,并修改其扩展名为“.bat”,然后双击这个文件就可以执行清理任务。
这个文件,并修改其扩展名为“.bat”,然后双击这个文件也可以执行清理任务。
3、常见问题
3.1、错误提示:创建网络连接组件不成功。
解决办法:系统的DLL丢失了COM注册信息 regsvr32 msxml3.dll> 水晶报表在ie客户端无法打印,解决办法
水晶报表在ie客户端无法打印,解决办法
gys0283 & &
发布时间: & &
浏览:6 & &
回复:9 & &
悬赏:0.0希赛币
水晶报表在ie客户端无法打印,急急急点打印按钮,弹出一个空窗口闪一下就什么反应也没有了,试了两台机器都这样。我用的是vs & 2005自带的水晶报表,而且已经PrintMode=activex
是不是弹出窗口被屏蔽了?
gyt521 & &
21:45:36 & &
& & (0)(0)引用activex 要安装,而且要注册比较麻烦!而且99%被客户端拦住,所以用水晶报表的document对象在代码中编写打印比较好!
gyshun & &
21:45:36 & &
& & (0)(0)引用跟进去看看怎么回事
gyt_wz & &
21:45:36 & &
& & (0)(0)引用关注+帮顶!
21:45:36 & &
& & (0)(0)引用IE的设置,还有安装插件了吗?机器有连网吗?
gyt1110 & &
21:45:36 & &
& & (0)(0)引用关注中
lvlvlvlv & &
21:45:36 & &
& & (0)(1)引用第一次运行打印只所以会出现出来又消失的现象是因为第一次水晶报表会检测客户端是否装了打印插件,如果没有的话,会自动安装;关闭ie重新打开打印就可以了
lvlvlive & &
21:45:36 & &
& & (0)(0)引用怎么解决的,我也遇到这个问题?老大给说说lvlu2008 & &
21:45:36 & &
& & (0)(0)引用IE,弹出窗口如果已关闭,窗口还是闪一下,请查看网站的WEB.CONFIG文件。&businessObjects&&crystalReports&&printControl&&add key=&url& value=&http://127.0.0.1/PrintControl.cab&/&&/printControl&&/crystalReports&&/businessObjects& 查看URL配置是否正确PrintControl.cab 该文件如果存在发布网站根目录(同Web.Config位置下同),URL可改为 &add key=&url& value=&/PrintControl.cab&/&客户端IE Activex 需启用。g7242033 & &
12:35:07 & &
& & (1)(0)引用
本问题标题:
本问题地址:
温馨提示:本问答中心的任何言论仅代表发言者个人的观点,与希赛网立场无关。请对您的言论负责,遵守中华人民共和国有关法律、法规。如果您的言论违反希赛网问答中心的规则,将会被删除。
暂无合适的专家
&&&&&&&&&&&&&&&
希赛网 版权所有 & &&

我要回帖

更多关于 水晶报表ie不兼容问题 的文章

 

随机推荐