除了特例用户,其他用户只能看到自己填报的数据

权限细粒度参数控制,SELECT * FROM 销量 where 英文简称='${fine_username}',可以控制用户自己能看到自己数据,如果要增加某些用户可以看到所有数据应该如何写SQL,请回复具体SQL,谢谢

FineReport liyh13 发布于 2023-6-9 10:18
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
2
snrtuemcLv8专家互助
发布于2023-6-9 10:22

SELECT * FROM 销量 where 1=1

${if(fine_username=="admin"||fine_username=="admin1",""," and 英文简称='"+fine_username+"'")}

这个格式去设置

最佳回答
0
MV科技Lv5见习互助
发布于2023-6-9 10:23

where后面判断if(特例用户,"","英文简称='+fine_username+'")

最佳回答
0
用户k6280494Lv6资深互助
发布于2023-6-9 10:23(编辑于 2023-6-9 10:29)

SELECT * FROM 销量 where 1=1

${if(fr_username='admin',"","英文简称='"+fine_username+"'")}

最佳回答
0
ss2021Lv5见习互助
发布于2023-6-9 10:38

首先把能某些用户放到一个表格里面,一般把这类用户定义为某一类 角色,根据登陆的账号判断这个账号的角色,来自由拼sql

如下,角色超级管理员不控制,角色为其它自定义可查看所有数据的也不控制,否则只看自己相关的数据

${if(fine_role="superusers","",if(sql("dcresult","select count(fr_roles_id) from dim_user_roles ro where ro.fr_roles_id=1 and ro.user_fr_name='"+fine_username+"'",1,1)<>0," "," and t.employees_id in (select ro.employ_id from dim_user_roles ro where  ro.user_fr_name='"+fine_username+"')"))}

  • 4关注人数
  • 361浏览人数
  • 最后回答于:2023-6-9 10:38
    请选择关闭问题的原因
    确定 取消
    返回顶部