方法说明
用户可以根据VR用法说明手写JSP代码,也可以通过VRdemo页面生成展现源码的功能,设置好展现标签后,生成展现源码,将源码保存至JSP来进行报表展现。
VRdemo页面访问地址:http://localhost:8800/reportmis/mis2/vrsr/demo/vrDemo.jsp。
使用VR进行报表展现包含至少以下两步:1.声明标签库文件;2.调用报表展现标签进行报表展现。具体说明及示例代码如下:
声明标签库文件
声明标签库文件语句的格式如下所示:
<%@ taglib uri="/WEB-INF/viewReport.tld" prefix="view" %> 或 <%@ taglib prefix="report" uri="/viewTag"%>
此定义语句必须写在JSP的开头。uri为标签库文件路径及名称;prefix为指定tag标签前缀名。
- 文件路径
指定标签库文件及其路径有两种方式,直接指定和间接引用。
1、直接指定
<%@ taglib prefix="report" uri="/WEB-INF/tld/viewReport.tld"%>
2、间接引用
间接引用的方式需要先在web.xml中定义标签库文件的路径,然后在JSP中直接引用定义好的标签名即可。间接引用的好处在于当标签库文件存放路径改变时,只需要修改
web.xml中的定义,而不用需要修改每个jsp。
a.web.xml中定义格式如下:
<taglib>
<taglib-uri>/viewTag</taglib-uri>
<taglib-location>/WEB-INF/tld/viewReport.tld</taglib-location> </taglib>
b.在JSP中的引用格式如下:
<%@ taglib prefix="report" uri="/viewTag"%>
- 标签前缀名
prefix的值可以自己指定,但tag标签中的前缀必须与其保持一致。
调用标签发布报表
调用标签发布报表的代码格式如下:
<view:report name="report1" .../>
其中view为声明标签库文件时指定的prefix的值。report为标签组名称,根据要展现的报表类型来设置,浏览式报表为report;填报表表为input;报表组为group;具体参见本节开头。
在其后可以设置其它标签属性的值。其中name、srcType 两个属性为必须设置的属性。
- 如要发布的报表源为报表文件,srcType值为file。
- 如要发布的报表源为经过API处理的报表设计对象,srcType值为bean。
注:srcType为file时fileName为必填,srcType为defineBean时beanName为必填
可以通过VRdemo页面,设置标签属性后生成展现报表的JSP代码,来进行报表展现。具体标签属性及其详细说明参见:报表展现标签与API->报表展现标签 。
示例代码可参考 场景示例。
JS事件
当客户希望使用VR展现报表过程中时某些操作触发自定义的js事件,可以通过添加VR事件来实现。
客户添加VR事件,添加的事件方法会在对应时候触发。
VR中JS事件调用方法及详细说明如下:
调用方法:
VR展现时,传递参数jsFiles=js文件名。
在js文件中使用“rptObj_report1.bind('事件名称', 方法名称,this)”的格式对报表js事件进行调用。
在js文件中使用“groupObj_report1.bind('事件名称', 方法名称,this)”的格式对报表组js事件进行调用。
- 事件名称:报表组和普通报表的事件名称是不相同的,触发条件也不同,具体的事件名称会在下面详细说明。
- 方法名称:为标签中定义的js方法名,例如:test1。
详细说明:
报表:
事件名称 |
触发条件 |
calc |
计算报表后触发 |
getPage |
得到当前页html代码后触发 |
submit |
报表提交完成时触发 |
报表组:
事件名称 |
触发条件 |
calcSheet |
计算sheet页之后触发 |
getSheetHTML |
得到当前页html代码后触发 |
groupSubmit |
报表组提交完成时触发 |
Init |
|
示例代码可参考 场景示例 示例2。