关于报表参数权限控制的请教

各位大神,小弟遇到一个问题,自己无法实现了,现请教一下大家,感谢!

需求:

1、用户user1有两个角色,分别为零售一部、零售二部

2、用户user2有三个角色,分别为零售一部、零售二部、零售三部

3、报表需要权限控制,查询条件栏,有一个下拉复选框:值为 零售一部、零售二部、零售三部,想要实现user1只能勾选零售一部、零售二部,user2能勾选零售一部、零售二部、零售三部

我尝试了在SQL或者在数据字典中写$fine_role内置函数来获取用户的角色,角色获取到了,但是查询条件栏里的值被并成一行了,无法分开单独显示,造成无法进行勾选。

FineReport timeshift2011 发布于 2019-6-5 12:25
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
张洪威Lv6高级互助
发布于2019-6-5 12:35

你用SQL添加一个查询,里面加上判断,然后把返回的值放到下拉框里面。

下面的sql你试一试。


select  零售部门  from  表名 where 零售部门 in ( '零售一部','零售二部') and $fine_role='user1'

union all 

select  零售部门  from  表名 where 零售部门 in ( '零售一部','零售二部','零售三部') and $fine_role='user2'

最佳回答
0
doudekaixinLv6中级互助
发布于2019-6-5 16:55

取出来的角色是以逗号隔开的,把逗号替换成‘,’,然后 sql后面 in 一下不就可以了么?

最佳回答
0
timeshift2011Lv4见习互助
发布于2019-6-12 12:42

谢谢,我已经找到更好的方法解决了。

  • 2关注人数
  • 586浏览人数
  • 最后回答于:2019-6-12 12:42
    请选择关闭问题的原因
    确定 取消
    返回顶部