1. 概述
1.1 版本
报表服务器版本 | 功能变更 |
---|---|
11.0 | - |
1.2 预期效果
数据决策系统预览模板时,希望部分用户可以查看全部表内容,部分用户不可查看指定列。
销售部员工和用户Tom登录数据决策系统,看不到「进价」列。
其他用户登录数据决策系统,能看到全部报表内容。
1.3 实现思路
利用条件属性和权限细粒度参数来实现。
设置条件属性中,行高/列宽为0。
若是限制账号,则$fine_username = "用户名";
若是限制部门,则GETUSERDEPARTMENTS() = "部门名称"。
2. 示例
2.1 设计模板
新建一张普通报表,新建数据集ds1:SELECT * FROM S订单明细
模板样式如下表所示:
2.2 设置条件属性
选中E2单元格,点击右侧「条件属性」,新增一个条件属性。
1)设置属性「列=0毫米」
2)设置两个公式条件,条件间为「or」关系
GETUSERDEPARTMENTS() = "销售部"
$fine_username = "Tom"
2.3 分配目录查看权限
管理员登录数据决策系统,点击「管理系统>目录管理>管理目录」,点击「添加模板」,选择上一节设置好的模板。
管理员登录数据决策系统,点击「管理系统>权限管理>普通权限管理>权限快速配置」,为「所有部门」分配模板目录的查看权限。
2.4 效果预览
不同用户登录系统,查看该模板,看到的内容不同。如1.2节所示。
3. 已完成模板
点击下载模板:条件属性实现列权限控制.cpt