web报表开发FineReport:[14]查看不同报表
1、实现思路使用3张模板来实现:参数模板、子模板1、子报表模板2。参数界面单独制作一张模板,使用下拉框控件选择要查看的报表,点击查询时触发点击事件,跳转到对应报表,并将其余参数也传递给报表。js中使用window.location=url;来实现当前页面的刷新
2、子釉涑杵抑表准备子模板1使用%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\Father.cpt模竣淠仝螃板,在该模板基础上添加参数ID,用于过滤出对应订单ID的数据,具体实现方法可参考报表参数章节。子报表2使用%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\Son.cpt模板,该模板已经包含参数ID,筛选出对应订单ID的数据。
3、制作参数界面模板参数界面单独制作一张模板,新建皤材装肢工作簿,点击模板>报表参数,定义两个参数分别为orderID,cptName。参数界面设置设置orderID的控件类型为下拉框,其值选择数据库表中的订单表,实际值与显示值都选择订单ID。设置cptName的控件类型为下拉框,其值选择自定义,列出需要查看的报表名称,实际值为对应报表路径,如下图:查询按钮事件设置给查询按钮增加点击事件,具体js如下:varorderID=this.options.form.getWidgetByName("orderID").getValue();varcptName=this.options.form.getWidgetByName("cptName").getValue();window.location="/WebReport/ReportServer?reportlet="+cptName+"&ID="+orderID;
4、保存参数模板,并点击分页预览,选择订单ID及需要查看的报表,就可以跳转到对应报表。在线查看模板效果请点击Father.cpt