能让一个筛选框同时匹配两个字段的数据吗?详情请看下文的图和文字

比如说一条数据有id,flag1和flag2三个字段,flag1是快报标志,flag2是月报标志,有的数据既是快报又是月报,通过指标类型进行筛选,选快报出id为1和2的数据,选月报出1和3的数据          

image.png

FineReport LZ 发布于 2020-10-22 17:54 (编辑于 2020-10-23 14:53)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
0
snrtuemcLv8专家互助
发布于2020-10-23 15:50(编辑于 2020-10-23 16:26)

你这个很简单啊,选快报,那就是快报字段不为空,选月报就是月报字段不为空数据

select * from 表 where 

${if(指标类型控件名="快报","快报字段名is not null","月报字段名 is not null")}



选择下拉框,添加一个初始化事件,写一下js语句。

var self = this;  

self.options.name4Empty = "全选"  ;//默认为不选 可以自定义修改


  • LZ LZ(提问者) ${if(flag=\"1\",\"flag1 is not null\",\"flag2 is not null\")} 这样吗?
    2020-10-23 16:00 
  • snrtuemc snrtuemc 回复 LZ(提问者) 是的,这样,快报,就查询快报不为空的数据,月报查询月报不为空的数据
    2020-10-23 16:02 
  • LZ LZ(提问者) 回复 snrtuemc 可这样,我全选的时候出不来所有数据啊
    2020-10-23 16:05 
  • snrtuemc snrtuemc 回复 LZ(提问者) 那就${if(len(flag)=0,\"1=1\",if(flag=\"1\",\"flag1 is not null\",\"flag2 is not null\"))}
    2020-10-23 16:10 
  • LZ LZ(提问者) 回复 snrtuemc len(flag)=0是不选,不是全选
    2020-10-23 16:23 
最佳回答
0
krystal033Lv7高级互助
发布于2020-10-22 18:07

把两个字段拼接成一个字段当参数就好了

  • LZ LZ(提问者) 拼成一个字段,那既是快报又是月报的怎么处理?假设值为3,再加一个筛选项“既是快报又是月报”?
    2020-10-22 18:41 
最佳回答
0
海拉鲁魔头Lv6中级互助
发布于2020-10-23 14:57

在加一个即是快报又是月报的列不就好了吗?多写几个case when

  • LZ LZ(提问者) 麻烦请讲的具体一点,怎么写case when?
    2020-10-23 15:55 
最佳回答
0
lincoderLv5初级互助
发布于2020-10-23 18:29

image.png

  • LZ LZ(提问者) 这样写的话帆软会认为是一个值,就是1‘,’2
    2020-10-26 09:27 
  • lincoder lincoder 回复 LZ(提问者) 你直接传到sql里是两个值
    2020-10-26 10:19 
  • 5关注人数
  • 562浏览人数
  • 最后回答于:2020-10-23 18:29
    请选择关闭问题的原因
    确定 取消
    返回顶部