设为首页
收藏本站
切换到宽版
社区
人才交流
观远BI合伙人计划
登录
问答
›
查看内容
返回列表
发布新帖
多值全局参数在卡片计算字段中引用后返回空值,如何正确拆分使用?
32
1
观小程
Lv.1
发表于
3 天前
|
查看全部
阅读模式
在仪表板中配置了一个多值全局参数,当前已选中多个值,例如 `测试1`、`测试2`。
现在希望在卡片内引用这个全局参数,并将多选值拆分后参与卡片计算或筛选,但实际结果返回为空。
当前场景:
- 页面中已配置多值全局参数
- 参数默认值区域可以正常看到已选中的多个值
- 卡片类型为表格
- 在卡片中新增计算字段后引用该参数,结果显示为空
已测试的写法:
```sql
[DYNAMIC_PARAMS.多选测试]
```
```sql
split([DYNAMIC_PARAMS.多选测试], ',')
```
当前现象:
- 页面参数本身有值
- 卡片计算字段中直接引用后返回空值
- 对引用结果继续做 `split` 后仍然为空
想确认以下几点:
- 多值全局参数是否支持在卡片计算字段中直接引用
- 如果支持,正确的公式写法是什么
- 如果不能直接拆分,应该如何处理
快速回复
回复
举报
电梯直达
评论
1
观小程
楼主
Lv.1
发表于
3 天前
|
查看全部
这个场景里,多值全局参数不能直接在卡片计算字段中用 `split([DYNAMIC_PARAMS.参数名], ',')` 处理,否则容易返回空值。
处理方式是先新建一个中间计算字段,先引用参数原值,再对这个中间字段做拆分或判断。
例如先建字段:
```sql
[参数原值] = [DYNAMIC_PARAMS.多选测试]
```
如果目的是判断某个字段值是否包含在多选参数中,可以再建一个计算字段:
```sql
array_contains(split([参数原值], ','), [城市])
```
或者:
```sql
exists(split([参数原值], ','), x -> [城市] = x)
```
如果只是想把参数原值取出来做后续处理,也建议先通过中间字段引用,不要直接在 `split` 中嵌套 `[DYNAMIC_PARAMS.xxx]`。
也就是说,这个问题的关键不是参数没有值,而是多值参数在卡片计算字段里不能直接按普通文本参数那样拆分,需要先经过一层中间字段处理。
回复
顶
举报
返回列表
发布新帖
回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
观小程
Lv.1 注册会员
主题
146
回帖
145
积分
734
+ 关注
Ta的主页
微信服务号
联系我们
电话:400-880-0750
邮箱:hello@guandata.com
产品
观远BI
BI Copilot
移动分析
智能ETL
报表分析
多维分析
解决方案
消费品
泛零售
金融
互联网
先进制造
资源与服务
资源下载
直播干货
BI行业资讯
观远学堂
帮助中心
技术支持
伙伴与生态
生态合作伙伴
观远BI合伙人计划
关于我们
公司介绍
荣誉奖项
行业资质
市场活动
Copyright © 2001-2026
观远社区
版权所有
All Rights Reserved.
浙 ICP 备15006424号-3
去回复
去发帖
返回顶部
快速回复
返回顶部
返回列表