下拉选项选“否”时,取不到值,问题出在哪?是casewhen转化的数据不能被数据字典用吗?

image.png

FineReport rbk333 发布于 2022-8-18 10:44 (编辑于 2022-8-18 12:08)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
Z4u3z1Lv6专家互助
发布于2022-8-18 10:47(编辑于 2022-8-18 11:45)

你应该是在SQL数据集上写的条件吧? 那为否时 ZICYY4707 IN ('','0')image.png

--------------------------

${if(len(ZICYY4707)==0,"",IF(ZICYY4707==0," AND ZICYY4707 IN ('','0')"," AND ZICYY4707 ='"+ZICYY4707+"'"))}

image.png

  • rbk333 rbk333(提问者) CASE WHEN ZICYY4707 IN (\'\',\'0\') ELSE ZICYY4707 END 好像报错
    2022-08-18 10:53 
  • Z4u3z1 Z4u3z1 回复 rbk333(提问者) 我们都不是说的同一个地方。算了传模板上来吧
    2022-08-18 10:56 
  • rbk333 rbk333(提问者) 回复 Z4u3z1 传了哥
    2022-08-18 11:32 
  • Z4u3z1 Z4u3z1 回复 rbk333(提问者) 再来个原始报表的(非内置数据集),现在你的模板里面没做条件属性、过滤。那就是你在SQL数据集上处理的,需要看你SQL
    2022-08-18 11:36 
  • rbk333 rbk333(提问者) 回复 Z4u3z1 传了
    2022-08-18 11:39 
最佳回答
0
lishengtaoLv3初级互助
发布于2022-8-18 10:52(编辑于 2022-8-18 11:16)

1、首先,是否类型的筛选框,数据字典里可以不用数据查询,直接用自定义,然后写上1 是 0 否 更方便

2、然后 是否世博会 的这个参数 应该传入 查询SQL的 WHERE 语句后面 写成 

AND CASE WHEN ZICYY4740 = 1 THEN 1 ELSE 0 END IN '(${s_ZICYY4740 })'

  • rbk333 rbk333(提问者) 不用在select后面写case when 了?
    2022-08-18 10:55 
  • lishengtao lishengtao 回复 rbk333(提问者) 如果你报表里不需要展示是和否就不需要了,如果需要,那还是要在select 后面写上CASE WHEN ZICYY4740 = 1 THEN \'是\' ELSE \'否\' END as ZICYY4740 然后拖到单元格做展示比较好
    2022-08-18 11:16 
  • 2关注人数
  • 304浏览人数
  • 最后回答于:2022-8-18 12:08
    请选择关闭问题的原因
    确定 取消
    返回顶部