手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

excel报表工具FineReport之嵌套模板并设置联动

时间:2025-01-07 23:55:40

1、1制作html页面在html中定义frameset标签,组织多个窗口,通过frame设置特定的窗口区域,通过js判断对不同窗口区域设置不同模板地址,详细代码如下:<HTML><HEAD><TITLE>NewDocument</TITLE><scripttype="text/javascript">//在主模板加载结束事件触发zhu(classno)方法,并把classno传到htmlfunctionzhu(classno){varclassno=classno;//把获取参数classno赋值给表2模板varzi1="/WebReport/ReportServer?reportlet=zi1.cpt&op=write&__showtoolbar__=false&classno="+classno;document.getElementById("zi1").src=zi1;}//主模板和表2模板加载完触发aa(stuno)方法functionaa(stuno){varstuno=stuno;//如果stuno为空的时候,则表3窗口赋值为空,不为空则动态给表3模板设置urlif(stuno=='null'){varreportURL="";document.getElementById("zi2").src=reportURL;returnfalse;}else{varreportURL="/WebReport/ReportServer?reportlet=zi2.cpt&op=write&__showtoolbar__=false&stuno="+stuno;document.getElementById("zi2").src=reportURL;}}</script><basetarget="browserframe"/></HEAD><framesetrows="40%,60%"><frameid="reportFrame"name="reportFrame"src="/WebReport/ReportServer?reportlet=zhu.cpt&op=write"></frame><framesetname="zi"cols="35%,65%"><frameid="zi1"name="zi1"title="zi1"src=""><frameid="zi2"src=""></frameset></frameset><body></body></HTML>

2、2主表设置·超级链接在主表点击超级链接传值到子表,设置超级链接>网页链接,URL地址则是输入本身模板地址,链接打开于选择当前窗口,参数则把点击的值传到子模板中,如classno=B2,如果不希望模板分页,则可添加参数op=write,设置如下图:

excel报表工具FineReport之嵌套模板并设置联动

3、·加载结束事件因为不希望分页,则在填报预览下添加加载结束事件,根据个人情况而定是否显示工具栏,在加载结束事件中添加参数classno=$classno,在公式中使用$classno则可动态获取到点击超级链接的值,所以首先要在模板中定义报表参数classno;在三个窗口都显示值的情况下,又点击了主表中超级链接,这时就需要清空表3中的数据,所以添加参数stuno=null,传到html进行判断,清空表3数据。在js中判断是否第一次访问主模板,不是则加载完触发html中定义js方法,代码如下:if(classno!='null'){varzhu=parent.window;zhu.zhu(classno);zhu.aa(stuno);}设置的效果图如下:

excel报表工具FineReport之嵌套模板并设置联动

4、3 表2设计通过主表传递参数,对表2进行过滤,进而展示数据。

5、·超级链接跟主表设置基本相同,添加网页链接,链接到本身模板,并把参数传值给本身和表3模板中,设置如下:

excel报表工具FineReport之嵌套模板并设置联动

6、·加载结束事件只要控制表三模板即可,添加参数stuno=$stuno(首先定义报表参数stuno),在js中判断stuno不为空的情况下触发html中的方法,动态把url地址赋值给表3模块,js代码如下:

7、if(stuno!='null'){varzhu=parent.window;zhu.aa(stuno);}

8、4表3设计只需通过表2传递过来的参数进行过滤即可。

© 手抄报圈