怎样实现同一份报表,不同人看不同数据

做了一个报表,根据销售员作为限制条件,销售员只能查看自己订单的内容,现在要实现销售员A要查看A,B,C的订单,不能看到D,E的订单

FineReport 帆软用户OIyq5yEcu2 发布于 2023-7-19 14:01
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
坚定的小帆薯Lv7高级互助
发布于2023-7-19 14:07(编辑于 2023-7-19 16:55)

fine_username获取的是系统登录名,你需要确保系统登录名和底层表的存放的销售名保持一致的,否则不能实现过滤的

image.png

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

如楼上,详细的看对应文档

最简单直接的方法,就是限制对应查询下拉框或者SQL

以SQL为例,对应数据集加个过滤条件

and 销售员='${fine_username}'

其中销售员指数据库对应人员列,'${fine_username}'是系统登录名,如果两列属性不一致,还需要转换一下

更多系统参数及用法,参考 https://help.fanruan.com/finereport/doc-view-865.html

  • 帆软用户OIyq5yEcu2 帆软用户OIyq5yEcu2(提问者) 我现在设置条件就是销售员=\'${fine_username}\',每个销售员只能查看自己的,现在需要设置销售员A可以查看销售员A,B,C的订单,不能看到销售员D,E,F的订单
    2023-07-19 14:13 
  • 坚定的小帆薯 坚定的小帆薯 回复 帆软用户OIyq5yEcu2(提问者) 这种在加个条件即可的,例如 1=1 ${if(fine_username=\'销售员A\',\"and 销售员 IN (\'销售员A\',\'销售员B\',\'销售员C\')\",\"and 销售员=\'\" + fine_username+ \"\' \")}
    2023-07-19 14:33 
  • 坚定的小帆薯 坚定的小帆薯 回复 帆软用户OIyq5yEcu2(提问者) 如果这种类似特殊权限很多,可以直接配置一个权限表,都对应到数据库销售员字段,进行分配维护;SQL统一写一个逻辑即可的
    2023-07-19 14:34 
  • 帆软用户OIyq5yEcu2 帆软用户OIyq5yEcu2(提问者) 回复 坚定的小帆薯 我设置好了之后没起作用
    2023-07-19 15:40 
  • 坚定的小帆薯 坚定的小帆薯 回复 帆软用户OIyq5yEcu2(提问者) 上面的\\要去掉哦,这个是平台自己带的,还有要用登录的用户进行查看
    2023-07-19 15:50 
最佳回答
0
用户k6280494Lv6专家互助
发布于2023-7-19 14:02(编辑于 2023-7-19 14:03)
最佳回答
0
小潘同學Lv5初级互助
发布于2023-7-19 17:13

image.png

再创建一张权限表,A可以查看ABC就分别写入3行数据,然后SQL代码中JOIN这张权限表,同时获取登录账户

  • 5关注人数
  • 478浏览人数
  • 最后回答于:2023-7-19 17:13
    请选择关闭问题的原因
    确定 取消
    返回顶部