润乾填报表利用外部参数进行权限控制

简介: 填报表可完成数据录入、补录等的数据采集工作,但其过程中还包括很多细节的功能,比如数据校验、使用编辑控件等。另外比较重要的一点则是权限控制,毕竟不能任何人访问同一个填报表都可随意编辑、所有内容都可见等,且往往这些权限控制的参数均来自外部,比如系统的会话变量 或者 报表 url 中带来的外部参数。

填报表可完成数据录入、补录等的数据采集工作,但其过程中还包括很多细节的功能,比如数据校验、使用编辑控件等。另外比较重要的一点则是权限控制,毕竟不能任何人访问同一个填报表都可随意编辑、所有内容都可见等,且往往这些权限控制的参数均来自外部,比如系统的会话变量 或者 报表 url 中带来的外部参数。

本文将结合实例,分享下在润乾报表 v2024 版本中如何通过外部参数实现填报表的权限控制。

说明:以访问填报表 url http://ip/demo/reportJsp/showInput.jsp?sht=input.sht&userID=xxx 为例,访问填报表 input.sht 的同时,传入用户 ID(userID),基于 userID 做控制。

图片1.png

填报表内容如上,当公司财务人员(userID:lili)维护员工信息时,“工资”项可修改,作为员工本人(userID:xuzhaoyang)仅能编辑“工资”外的其他信息。

接下来看下具体做法:

1、 准备填报表

说明中填报表的具体做法不再描述,可参考:自由格式填报 - 制作自由格式填报表 (raqsoft.com.cn)

2、 设置是否可编辑表达式

表达式:userID==”lili”,返回 true 则可编辑,否则不可编辑。

3、 userID 传入“lili”效果

http://ip/demo/reportJsp/showInput.jsp?sht=input.sht&userID=lili

图片3.png

4、 userID 传入“xuzhaoyang”效果

图片4.png

另外,可视权限也可以轻松实现。

增加“是否可视表达式”:userID==”lili”,当 lili 访问此报表,可看到工资数据,其他人不可见。

相关文章
|
SQL 数据安全/隐私保护
通用数据级别权限的框架设计与实现(3)-数据列表的权限过滤
查看上篇文章通用数据级别权限的框架设计与实现(2)-数据权限的准备工作,我们开始数据列表的权限过滤. 原理:我们在做过滤列表时,根据用户权限自动注入到相关SQL中,实现相关过滤,如果拥有全部权限,则不生成相关SQL片段 首先我们来分析一下数据列表的SQL 能看到所有数据的SQL SELECT role.
1205 0
|
4月前
|
Oracle 关系型数据库 MySQL
数据源表权限:实现数据消费的精细化权限管理
为满足数据消费中单表消费的场景,Dataphin在V4.3 版本支持对MySQL和Oracle类型的数据源表进行权限管控。
128 31
|
计算机视觉
VS2019如何添加已有的配置表(使得之前已经配置好的属性可以无需配置直接使用)
VS2019如何添加已有的配置表(使得之前已经配置好的属性可以无需配置直接使用)
197 0
|
存储 数据库
【视频】配置信息管理 的 使用方法(三):查看和修改元数据、查看数据库的表视图存储过程等信息
  这个是查看和修改我们在上一个视频里添加的元数据的方法。   感谢 svnhost.cn 提供空间。  
878 0
|
BI 数据库 数据处理
数据填报修改时如何增加操作人员信息
填报 修改人信息 数据填报修改时如何增加操作人员信息
1330 0
|
SQL 数据安全/隐私保护
通用数据级别权限的框架设计与实现(4)-单条记录的权限控制
查看上篇文章通用数据级别权限的框架设计与实现(3)-数据列表的权限过滤,我们开始在原来的基础上实现单条权记录的权限控制。 相信前面的列表权限控制,很多系统都可以做到,但如何在上面列表的权限过滤中实现通用性 原理:我们在权限过滤中,通过AOP接截相关记录,拦截的时候,我们先判断当前人员是否有角色权限,没有的话,我们生成查询权限的SQL,进行权限查找.
1317 0