数据筛选问题,

我现在的需求是,如果我当前登录人是admin,就执行sql1,否则执行sql2.

这现在是可以了的,还有一个问题就是,当我执行sql1的时候,如图二所示,我想要筛选名字,预览的时候默认是显示全部,筛选一个具体的时候,并没有生效,组件的名称和参数名称是一样的,这个应该怎么改,还需要改sql接受参数吗?image.pngimage.pngimage.pngimage.pngimage.png

FineReport 九九九九九 发布于 2021-12-13 15:26 (编辑于 2021-12-13 17:17)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
0
axingLv6专家互助
发布于2022-6-8 01:05

第一个红框里面的内容可以删掉,第二个红框的name前面加上sd.

image.png

最佳回答
0
snrtuemcLv8专家互助
发布于2021-12-13 15:29(编辑于 2021-12-13 16:53)

你把sql1再拼接啊

${if(role='admin',"select * from 表 where 字段='"+参数名+"'","sql2")}

====================

${if(role='admin',"select * from 表 where  1=1 "+if(len(参数名)=0,""," and 字段='"+参数名+"'"),"sql2")}

  • 九九九九九 九九九九九(提问者) 你看下我完善了一张图,这样如果不传参数的话,就没有数据了
    2021-12-13 16:47 
  • snrtuemc snrtuemc 回复 九九九九九(提问者) 那就判断下,看修改答案
    2021-12-13 16:53 
  • 九九九九九 九九九九九(提问者) 回复 snrtuemc 不行呀,看我补了一个图,还是没有数据
    2021-12-13 17:17 
最佳回答
0
Z4u3z1Lv6专家互助
发布于2021-12-13 15:30

sql没截全,简单的SQL应该会写吧。改日志级别后预览,在日志里面看SQL 缺什么加什么,SQL 中那一段不对改那一段

image.png

最佳回答
0
FuFuLv5初级互助
发布于2021-12-13 15:33

${IF(role='admin','','/*')}

SQL1

${IF(role='admin','','*/')}

${IF(role!='admin','','/*')}

SQL2

${IF(role!='admin','','*/')}

你可以这样写SQL,这样两边是互不影响的也可以分别测试

  • 4关注人数
  • 408浏览人数
  • 最后回答于:2022-6-8 01:05
    请选择关闭问题的原因
    确定 取消
    返回顶部