利用超链接传递下拉数据集的值作为参数

Web报表下拉数据集中的数据常常被当作参数来选择,然后再传递到用到参数的地方,在一般情况下,报表参数是通过参数填报表单传递的,但有的时候,参数是从超链接里传递过来的,那么超链接传递的过程该怎么实现呢?
在快逸报表中实现这个功能,需要分三步走:

第一步是制作一个下拉数据集

第二是获取下拉数据集的值

第三是通过超链接把获取到的值传递出去

第一步:
制作一个下拉数据集,并做一个超链接。

快逸报表<a href=设计器界面.PNG" src="http://www.runqian.com.cn/know-how/wp-content/uploads/2009/09/xn-m7r34t37b0x3a20vpje1fm35a1xq.png" />

设置B1单元格的填报属性–编辑风格为下拉数据集,如下图:

快逸报表下拉数据集设置.PNG

B1的单元格变量名为param:

快逸报表变量名设置.PNG

设置B2单元格为超链接为调用JavaScript函数:javascript:getValue(),如下图:

快逸报表超链接设置.PNG

第二步:
需要建立一个jsp,这个jsp是为了展现下拉数据集报表用的。在此jsp上还要包含之前提到的javaScript函数,用来获取下拉数据集的值。
下拉数据集报表的jsp写法:(参考: \quieeReport\documents\zh\学习教程\应用开发\jsp—–1.1.1.a.jsp)。
< script launguage=”javascript”>
function getValue(){
var B1Vlalue = document.all['report1_B1′].value; //获取B1单元格的值
window.location.href=”test1.jsp?param=”+B1Vlalue; //超链接至test1.jsp
}
< /script>

第三步:
建立一个上面提到的test1.jsp,这个jsp的作用是用来展现从超链接传递过来的参数。
test1.jsp的写法:
< %@ page contentType=”text/html;charset=GBK”%>
< %@ taglib uri=”/WEB-INF/runqianReport4.tld” prefix=”report”%>
< html>
< head>
< title>例子jsp< /title>
< /head>
< body>
< %
String param = request.getParameter( “param”); //通过request取超链接中的参数
out.println(”传递过来的参数是:”+param); //展现到页面中
%>
< /body>
< /html>
在页面上展现的效果:
1.选择下拉数据集数据的界面:

快逸报表超链接传参前效果.PNG

2.传参后的效果展示界面:

快逸报表超链接传参后效果.PNG

例子中仅仅是把传递过来的参数用jsp作了简单的展现处理,实际应用中jsp文件是发布报表的载体,jsp接受到的参数会被传到报表中作相应的计算并最终展现相应的报表,如接受的参数为”颖静”报表就会自动计算并显示”颖静”的相关信息。

通过超链接传参,简单灵活,调试方便。在一些参数表单和主报表不在一张jsp上的时候,用参数池的方式取参数会比较繁琐,用超链接的方式可以轻而易举的把参数通过地址栏传递到目标jsp,再通过目标jsp获取参数,用不同的方法实现了同样的传参功能。

本文标签: