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

Cognos Analytics 11.1.x中Case When多条件置零问题技术求助

Cognos 11.1.x列表报表数值置零问题解决

思路可行性确认

你的思路完全可行:通过计算字段[SUMTEMPBUDG_SALES_REV_5]判断是否存在第5级收入账户(非0即代表存在),以此作为触发置零的前置条件,这个逻辑是通顺的。

当前表达式的问题

你当前的Case When表达式里多了一个冗余的AND ([ACCOUNT_TYPE_LEVEL_1] IN ('50'))条件,这直接限制了只有账户类型为'50'的行才会被置零,所以'60'、'70'、'80'的行无法触发置零逻辑。

正确的Case When表达式

修正后的表达式将账户类型的判断合并为一个范围,同时保留前置判断条件:

case
  when ([SUMTEMPBUDG_SALES_REV_5] <> 0) AND ([ACCOUNT_TYPE_LEVEL_1] IN ('50', '60', '70', '80'))
  then 0
  else coalesce([SUM_TEMPORARY_BUDGET], 0)
end

逻辑说明

  • 当[SUMTEMPBUDG_SALES_REV_5]不为0(即存在第5级收入账户),且当前行账户类型属于'50'、'60'、'70'、'80'中的任意一种时,返回0
  • 其他情况返回[SUM_TEMPORARY_BUDGET]的数值,空值则替换为0

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 17:15:02