You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Qlik前端条形图处理:合并‘Active-in progress’与‘Submitted’条形

Qlik条形图维度合并解决方案

问题分析

你原代码的核心问题在于第二个if的逻辑错误:Status='Active 1' and status = 'Submitted'要求一个字段同时等于两个不同值,这永远无法成立,所以合并逻辑不会触发。另外代码缺少闭合括号,存在语法问题。

正确维度表达式

方法1:嵌套If语句

直接判断目标状态,返回统一维度名称:

If(Status = '', Null(), 
  If(Status = 'Active-in progress' Or Status = 'Submitted', 'Active-in progress & Submitted', Status)
)
  • 第一部分If(Status = '', Null(), ...):过滤空Status值,和你原需求的非空过滤一致。
  • 第二部分If(Status = 'Active-in progress' Or Status = 'Submitted', ...):匹配需要合并的两个状态,返回自定义的合并名称(可根据需求修改),其他状态保留原Status值。

方法2:Pick + Match(更简洁)

当需要合并的状态较多时,用Pick和Match组合更清晰:

If(Status = '', Null(),
  Pick(Match(Status, 'Active-in progress', 'Submitted', 'Active 1'), 
       '合并状态', '合并状态', 'Active 1')
)
  • Match函数返回状态在列表中的位置,Pick根据位置返回对应名称,相同位置返回同一个合并名称即可实现合并。

效果验证

应用上述表达式后,条形图会显示两个条形:

  • 'Active 1':对应数值90
  • 自定义合并名称:对应数值79+34=113

内容的提问来源于stack exchange,提问作者VizJunkie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 07:13:14