找回密码
 立即注册

QQ登录

只需一步,快速开始

MatrixTian 讲师达人认证 悬赏达人认证

高级会员

141

主题

211

帖子

1380

积分

高级会员

积分
1380

微信认证勋章讲师达人元老葡萄悬赏达人

MatrixTian 讲师达人认证 悬赏达人认证
高级会员   /  发表于:2020-4-24 12:21  /   查看:3364  /  回复:0
本帖最后由 James.Lv 于 2023-1-5 19:11 编辑

在设计报表过程中,需要从报表的表格或者交叉报表跳转到仪表板,通过仪表板图表展示数据。
这种场景,需要将报表数据对应的信息传递给仪表板的参数,仪表板通过全局参数进行数据筛选过滤。
如果报表数据为不包含特殊字符的普通文本,则可以参照帮助文档链接:
交互式报表并动态传参:https://help.grapecity.com.cn/pages/viewpage.action?pageId=42086123

如果数据中有包含如:#、@、%、!等特殊字符,则需要进行特殊处理。
需要将特殊字符使用报表表达式中的 Replace函数转换为UrlEncode编码之后的格式。
特殊字符UrlEncode对照表:
image.png21601561.png

具体示例:
1.以示例销售数据为例,货主地区字段值中存在特殊符号“#”、“&”。
image.png248255004.png

2.设计报表,设置 货主地区 单元格的钻取操作为URL。
注意:参考:交互式报表并动态传参:https://help.grapecity.com.cn/pages/viewpage.action?pageId=42086123,提前设计好跳转的仪表板。
image.png940662841.png image.png76134947.png

此处,跳转Url的属性值需要使用表达式:
="http://localhost:51980/dashboards/view/36ca768c-e2d2-4e53-bc2c-a8224494b540?theme=default&lng=zh-CN&dp={%22area%22:[%22" & Fields!货主地区.Value.replace("#","%23").replace("&","%26") & "%22]}"

和帮助文档中的差异是:参数值不是直接使用字段值Fields!货主地区.Value,而是:Fields!货主地区.Value.replace("#","%23") ,
此处对特殊字符进行处理。如有多个特殊字符,则多次处理:Fields!货主地区.Value.replace("#","%23").replce("&","%26")。
image.png591256408.png

替换之后的效果:
image.png129308775.png

3.点击或者地区,查看调整之后的仪表板参数过滤效果。
点击报表中货主地区列:"#西北",成功跳转到仪表板,并实现数据过滤,参数值传递成功。
image.png526118468.png

0 个回复

您需要登录后才可以回帖 登录 | 立即注册
返回顶部