对应工厂的工作人员可以看到自己工厂下面的信息,其他的看不见,应该怎么修改数据集呢?

and   e.title in  (select factory from fr_access_app where 1=1

${if(len(factory)=0,"","and factory in('"+ factory+ "')")})

这个表我做了授权,对应工厂的工作人员可以看到自己工厂下面的信息,其他的看不见,但是我查询之后还是显示全部,应该怎么修改数据集呢?image.png

FineReport 百煮味香 发布于 2022-3-17 15:32
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共5回答
最佳回答
0
杰杰1108Lv6初级互助
发布于2022-3-17 15:37(编辑于 2022-3-17 15:42)

and   e.title in  (select factory from 工厂权限表 where username='${fr_username}')

需要定义一个人员工厂对应的权限表

  • 百煮味香 百煮味香(提问者) 为什么我写好以后预览出来数据为空呢 ?明明这个登录人下面有分配了对应的工厂
    2022-03-17 15:57 
最佳回答
0
巴拉巴拉1234Lv6初级互助
发布于2022-3-17 15:35

可以参考这个思路https://help.fanruan.com/finereport/doc-view-3040.html

最佳回答
0
@Lv6资深互助
发布于2022-3-17 15:46(编辑于 2022-3-17 15:49)

用${fine_username} 定义登录人可看到的数据

image.png

where 姓名 ='${fine_username}' 自动获取登录人的姓名了

  • 百煮味香 百煮味香(提问者) 为什么我写好以后预览出来数据为空呢 ?明明这个登录人下面有分配了对应的工厂
    2022-03-17 15:57 
  • @ @ 回复 百煮味香(提问者) 决策系统创建的用户名字没改错吧
    2022-03-17 16:04 
最佳回答
0
wayne_Lv6见习互助
发布于2022-3-17 16:32(编辑于 2022-3-17 16:34)

不建议通过用户名来达到权限控制,可以做一个填报页面来给系统内不同的用户增减你想要的权限

image.png

  • 百煮味香 百煮味香(提问者) fr_access_app这个表是权限填报表,做了的
    2022-03-17 17:02 
  • wayne_ wayne_ 回复 百煮味香(提问者) 我这里的用户名是读取FineDB的,而不是直接用的9版本的用户名fr_username。 https://help.fanruan.com/finereport/doc-view-3151.html 其他人给的方法都是可以的,估计是你哪里设置错了,带内置数据集的模板发上来看看
    2022-03-18 08:40 
最佳回答
0
CD20160914Lv8专家互助
发布于2022-3-17 16:41

select factory from fr_access_app where 1=1

${if(len(factory)=0,"","and factory in('"+ factory+ "')")})

你的语句这里没有做权限控制呢。哪里结合到了fr_username???

  • 百煮味香 百煮味香(提问者) fr_access_app这个表是权限填报表
    2022-03-17 17:02 
  • CD20160914 CD20160914 回复 百煮味香(提问者) 权限填报表,你都没有去结合登陆人的账号呀。大哥。。。。
    2022-03-17 17:03 
  • 6关注人数
  • 438浏览人数
  • 最后回答于:2022-3-17 16:41
    请选择关闭问题的原因
    确定 取消
    返回顶部