玩转报表超链接

还不知道报表可以实现超链接?还玩不转超链接?加入润乾战队,润乾带你开黑,揭开报表超链接的面纱,好好看清它的真面目。

其实报表实现超链接已经很久了,只需要你停下脚步看看它,你就会发现超链接的美,一向不搞事情只搞技术的润乾早就实现了在报表中加入链接功能,无论是普通报表还是附有统计图的报表都可以很轻松的通过在报表中加入超链接实现钻取功能,拥有一份展现清晰并且内容完善,不会让老板因为内容混乱而捉急抓狂的报表不会只是梦想。

噔噔噔【敲黑板】同学们注意了,润乾报表要放大招了….

下图在统计图 - 柱状图中加入了图形超链接,实现了在点击柱状图中的柱子图形时,就会在本页面动态展现出所点击柱子代表的地区销售表和地区订单金额图

玩转报表超链接_第1张图片

下图在统计图 - 柱状图中加入了图例超链接,实现了在点击右侧的图例时,就会在本页面动态展现出所点击图例代表的地区销售表和地区订单金额图

玩转报表超链接_第2张图片

不要停,继续往下点还有彩蛋哦,下图在单元格中加入了超链接实现了在点击李芳 - 地区销售中的某个地区时,就会跳转到李芳在相应地区的订单明细页面:

玩转报表超链接_第3张图片

现在我跟大家普及一下润乾报表是怎么实现这一切的,报表是自动扩展出来的,而不是一个静态的表格,所以不能也不需要在扩展出来的每个格子设置超链,只需在一个单元格设置超链接属性,那么该属性就会跟着扩展格复制到每个地区格子里,那我们点击每个地区,其实是把对应的地区,销售姓名这些信息传过明细报表了,从而实现了钻取明细,当然统计图原理也是一样的。

好哒,现在拿稳你有幸买来的润乾报表,不要被因为报表都做不好,马上要被炒鱿鱼得皮皮虾抢走。我要开始手把手教学了:

【1】制作报表,你懂的就不再详述。

【2】在统计图中加入超链接:

在合适的单元格【右击】—【统计图】—【显示外观】

在“图例超链接“中输入链接

=”{APPMAP}/reportJsp/showReport.jsp?rpx=”+urlencode (“特色报表 / 统计图钻取.rpx”,”UTF-8″)+”&”+urlencode (“姓名”,”UTF-8″)+”=”+urlencode(“@legend”,”UTF-8″)

在“图形超链接“中输入链接

=”{APPMAP}/reportJsp/showReport.jsp?rpx=”+urlencode(“特色报表 / 统计图钻取.rpx”,”UTF-8″)+”&”+urlencode(“姓名”,”UTF-8″)+”=”+urlencode(“@category”,”UTF-8″)

是不是看完这长长的路径有点儿懵了呢,没毛病,这就是一个以“=”开始的传递中文参数的图形 / 图例超链接。其中:

(1){APPMAP} 指代 web 应用的相对路径,在超链接中引用 {APPMAP},报表引擎运算时会将其替换成 web 应用的相对路径。

(2)reportJsp/showReport.jsp?rpx= 相对路径 \xx.rpx 表示要链接到 xx 页面。此页面的路径应该相对【报表安装目录】\raqsoft\report5\web\webapps\demo\WEB-INF\reportFiles 的相对路径。

(3)Urlencode 函数进行转码。

(4)@category 指代当前图例的分类值。在超链接中引用 @category,报表引擎运算时会将其替换成当前图例的分类值。@legend:指代当前图例的显示值。在超链接中引用 @legend, 报表引擎运算时会将其替换成当前图例的显示值。

   【3】 在单元格中加入超链接:

只需在你想要产生链接的单元格的超链接属性【值】或者【表达式】中写入链接,因为我们示例中的链接是动态的所以需要在【表达式】中写入链接:

“reportJsp/showReport.jsp?rpx=”+ urlencode(“特色报表 / 明细.rpx”,”UTF-8″) + “&name=”+@姓名 +”®ion=”+value()

其中:

(1)®ion 表示参数 - 地区,&name 表示参数 - 姓名如果超级链接中要传递多个参数时,各个参数中间用 & 符号分隔。明细.rpx 表示链接目标页面用于显示地区的订单明细,这个表中需要加入你从点击链接页面传入的地区和姓名这两个参数。

(2) 使用相对【报表安装目录】\raqsoft\report5\web\webapps\demo\WEB-INF\reportFiles 的相对路径。

收下这节课之后,是不是不需要外卖小哥自己轻而易举就可以搞定报表中的超链接了,哪里需要要链那里,So Easy,老板再也不用担心你的报表了。拿着这份因为加入超链接而变得完美无暇的报表去找老板显摆吧,哥以后再也不用吃土了。

你可能感兴趣的:(玩转报表超链接)