发布
发布
自定义功能按钮
报表做好后,就可以通过jsp发布报表了。 在3.10章节中我们讲到了如何在jsp中来发布报表,并举例说明了如何在tag中引用用户自定义的按钮图片。这一节,我们在3.11.jsp基础上稍作修改,功能按钮不通过tag传入的方式,而是通过在JSP文件中放HTML元素的方式来实现这些功能按钮。 通过在JSP文件中放HTML元素的方式来定义功能按钮,该方式实现的关键就是在按钮的onClick方法里调用我们的javascript函数,这些函数在5.1.5.3中有详细说明。 在5.1.jsp基础上加上如下一段代码:
<table id=titleTable width=100% cellspacing=0 cellpadding=0 border=0 ><tr><td height="22" width=100% valign="middle" style="font-size:13px" background="../images/ta51top.jpg"><table width="100%"><tr ><td width=53% align="left" style="font-size:13px" > </td><td width="47%" align="center" valign="middle" style="font-size:12px" >共<span id="t_page_span"></span>页/第<span id="c_page_span"></span>页 <a href="#" onClick="report1_print();return false;"><%=printImage%></a><a href="#" onClick="report1_saveAsExcel();return false;"><%=excelImage%></a><a href="#" onClick="report1_saveAsPdf();return false;"><%=pdfImage%></a><a href="#" onClick="report1_saveAsWord();return false;"><%=wordImage%></a><a href="#" onClick="_submitTable( report1 );return false;"><%=submitImage%></a><a href="#" onClick="report1_importExcel();return false;"><%=submitImage%></a><a href="#" onClick="try{report1_toPage( 1 );}catch(e){}return false;"><%=firstPageImage%></a><a href="#" onClick="try{report1_toPage(report1_getCurrPage()-1);}catch(e){}returnfalse;"><%=prevPageImage%></a><a href="#" onClick="try{report1_toPage(report1_getCurrPage()+1);}catch(e){}return false;"><%=nextPageImage%></a><a href="#" onClick="try{report1_toPage(report1_getTotalPage());}catch(e){}return false;"><%=lastPageImage%></a></td></tr></table></td></table>
并加上如下一段javascript,用于显示页码:
<script language="javascript">document.getElementById( "t_page_span" ).innerHTML=report1_getTotalPage();document.getElementById( "c_page_span" ).innerHTML=report1_getCurrPage();</script>
这样在页面上就会多出一排功能按钮,而这排按钮不是在报表的正上方或者正下方,而是在你页面设置的位置。这样一来,你就可以根据实际需要,将功能按钮放在页面的任何位置了。
部署与发布
把5.1.jsp文件放在%reportHome%\webapps\demo\jsp\下,做好的自由格式填报表就可以发布了。
有了自定义的一排按钮,通过tag显示的按钮就可以屏蔽掉了。 修改tag中属性:
<report:html name="report1" reportFileName="5.1.4.raq" funcBarLocation=""/>
润乾的几个常见javaScript函数
润乾报表在发布时,通过Tag标签的选项值,可以在页面上出现打印,保存,导出等功能链接。点击这些链接,会调用润乾报表预定义的javaScript脚本函数,完成相应的功能,用户可以在自定义脚本函数中对这些脚本直接调用,以满足特定需求。下面对打印,保存,导出,翻页等javaScript函数逐一介绍。
-
打印 _print()函数说明
在发布报表时,如果标签 needPrint = yes,则页面出现打印按钮,并自动在页面中输出打印javaScript函数。
打印函数名如下:报表发布时tag标签发布名 + _print()。
例如:<report:html name="report1" reportFileName="<%=report%>"/>
那么,打印函数名为report1 _print()。函数通过请求,调用applet实现打印功能。
-
导出函数说明
在发布报表时,tag属性中的needSaveAsExcel,needSaveAsPdf,needSaveAsWord,needSaveAsText 分别对应导出excel,导出pdf,导出word,导出txt 四项功能。 导出功能函数名如下:报表发布时tag标签发布名 + _saveAsExcel(),
报表发布时tag标签发布名 + _saveAsWord(), 报表发布时tag标签发布名 + _saveAsPdft(),
报表发布时tag标签发布名 + _saveAsText ()。
例如:<report:html name="report1" reportFileName="<%=report%>" />
那么,打印函数名为 report1_saveAsExcel(),report1_saveAsWord(),report1_saveAsPdf(),report1_saveAsText()。
-
提交保存函数说明
提交保存函数与 tag中的submit属性相关。
提交保存函数名如下:报表发布时tag标签发布名 + _save ()。
例如:<report:html name="report1" reportFileName="<%=report%>"
那么,保存函数名为 report1_save()。
-
翻页函数说明
翻页可以通过预定义的翻页函数实现。
例如:<report:html name="report1" reportFileName="<%=report%>" />
那么, report1_getCurrPage() 得到当前是第几页 report1_getTotalPage() 得到报表总的页数 report1_toPage( N ) 翻页到第N页
举例:report1_toPage(report1_getCurrPage()+1) 翻到下一页 report1_toPage(report1_getTotalPage()) 翻到最后一页