js调用FR打印方法

编辑
文档创建者:文档助手1 (67727 )     浏览次数:11195次     编辑次数:16次     最近更新:jiangsr 于 2018-06-07     

目录:

1. 描述编辑

在进行报表集成时,常常需要通过js来调用FR的打印事件,如实例:不查看报表直接打印自定打印按钮批量打印等等。
FR实现了Flash、Pdf、Applet三种客户端打印js方法,doURLFlashPrint、doURLPDFPrint、doURLAppletPrint。
在实现具体实例前,您需要了解js调用FR打印方法的语法。
注:支持的浏览器和常规打印方式一致,详细请看:[老]报表打印方式、对比及使用
注:在jar包版本为2018-04-09及以上版本时,请使用新的打印方式,详情参照:[新]打印

2. js调用FR打印方法编辑

调用以下方法前,需要先引入finereport.js,再通过doURLxxxxPrint()进行调用。
1)doURLxxxxPrint(printurl)
说明:printurl为需要打印的报表路径,printurl以get方式传递给服务器,服务器将报表结果返回给客户端,弹出打印选项框及打印对话框,供用户选择打印范围及打印机,然后进行打印。
示例
FR.doURLFlashPrint("/WebReport/ReportServer?reportlet=report.cpt")
2)doURLxxxxPrint(printurl,isPopUp)
说明:printurl为需要打印的报表路径
isPopUp布尔值(true/false),表示是否进行静默打印,true为弹出打印对话框,false为不弹出。
示例
FR.doURLFlashPrint("/WebReport/ReportServer?reportlet=report.cpt",true);
Flash打印不支持静默打印,true/false效果相同
FR.doURLPDFPrint("/WebReport/ReportServer?reportlet=report.cpt",true);
pdf打印,true时弹出打印对话框,false不弹出
FR.doURLAppletPrint("/WebReport/ReportServer?reportlet=report.cpt",true);
applet打印,true时弹出打印对话框,false不弹出
3)doURLxxxxPrint(config)
post传参
说明:config为参数配置,参数可以以post方式传递给服务器,config数据格式为 {url : url,isPopUp : isPopUp,data:{reportlets:reportlets}}.
url为需要打印的报表路径,isPopUp布尔值(true/false),表示是否进行静默打印,true为弹出打印对话框,false为不弹出,data为需要打印的报表以及报表参数。
示例
var printurl="http://localhost:8077/TestCase/ReportServer"; var reportlets ="[{reportlet: '1.cpt', p1: 'a'}, {reportlet: '1.cpt', p1: 'b'}]"; var config = { url : printurl, isPopUp : false, data : { reportlets: reportlets } }; FR.doURLPDFPrint(config);
详细示例可查看批量打印_(Get/Post)
get传参
说明:config为参数配置,参数可以以get方式传递给服务器,config数据格式为 {url : url,isPopUp : isPopUp}.
url为需要打印的报表路径,isPopUp布尔值(true/false),表示是否进行静默打印,true为弹出打印对话框,false为不弹出。
示例
var  url="http://localhost:8075/WebReport/ReportServer?reportlet=";   url+=document.report.cpt.value;   var  isPopUp = false;   var  config = {url : url,isPopUp : isPopUp}   FR.doURLPDFPrint(config);
详细示例可查看js调用打印_不查看直接打印
注:post传参与get传参的区别请查看post传参和get传参

附件列表


主题: 专题总结
如果您认为本文档还有待完善,请编辑

文档内容仅供参考,如果你需要获取更多帮助,付费/准付费客户请咨询帆软技术支持
关于技术问题,您还可以前往帆软社区,点击顶部搜索框旁边的提问按钮
若您还有其他非技术类问题,可以联系帆软传说哥(qq:1745114201

此页面有帮助吗?