字段权限控制

请问大家,我有一个报表有50多个字段,想实现根据不同的用户决定用户是否可见此字段,其中:

1、用户a看A-B列,b看B-C列,c看C-D列等等,一共17个用户,每个用户字段权限不一样

2、17个用户都是一个角色“人力资源专员”;

3、如果用条件属性方法,则配置复杂且维护困难;

4、如果用权限编辑,则只能通过角色区分,如果想实现效果就要重新建立17个角色

请问有没有其他可行的方案?

FineReport ran1025 发布于 2024-4-18 11:07
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
CD20160914Lv8专家互助
发布于2024-4-18 11:10(编辑于 2024-4-18 11:18)

1、麻烦就是你说的创建多个条件属性

2、不然自己维护一个权限表,记录人员与对应的列,然后再用这个表的结果去匹配列,但是也是设置条件属性动态隐藏列,只是维护在前端页面后,报表会自动更新,人员离职新增的话这样方便

填报页面类似的表

image.png

你的查询报表最上面增加一行,隐藏起来,返回每一列的字母

CHAR(COL()+64)

image.png

image.png

ds1就返回你对应填报页面的数据。

依次写条件格式

image.png

  • ran1025 ran1025(提问者) 请问方法2有具体的示例吗
    2024-04-18 11:13 
  • CD20160914 CD20160914 回复 ran1025(提问者) 自己创建一个填报维护对应的列,然后公式查询就行了!参考上面截图
    2024-04-18 11:18 
  • CD20160914 CD20160914 回复 ran1025(提问者) 这个条件属性增加还是要多列,只是后面维护方便,人员离职与新增只是填报页面一修改就会自动生效了,而不用每次修改条件属性的!!
    2024-04-18 11:19 
  • ran1025 ran1025(提问者) 回复 CD20160914 比如我后台有一张表permisson 记录用户A 只有字段【姓名】权限;在数据库中能实现查询 select 【姓名】,【年龄】 from table 能怎么关联 permisson 表后得到 select 【姓名】,null as【年龄】 from table 的结果吗?也就是用户A进入能看到2个字段,但是字段【年龄】为空。这样就不用在模板中设置了
    2024-04-18 11:24 
  • CD20160914 CD20160914 回复 ran1025(提问者) sql中你按人员id关联起来。。要用case when 判断。。如果没有就为null。。。
    2024-04-18 11:31 
最佳回答
0
CovidLv3高级互助
发布于2024-4-18 11:11

数据库里面新建一张数据表,存储每个用户查看的字段,然后直接从数据库里面去根据用户查询,最后把不能看的隐藏

最佳回答
0
华莉星宸Lv7资深互助
发布于2024-4-18 11:11

没什么好办法

角色控制是最方便的

就是多设置一下

  • 3关注人数
  • 259浏览人数
  • 最后回答于:2024-4-18 11:18
    请选择关闭问题的原因
    确定 取消
    返回顶部