权限细粒度的模板内容权限控制包括四个方面的控制:单元格是否可见与新值的控制、控件可见可用的控制、行列的隐藏控制以及sheet的可见控制,下面我们详细介绍这三个权限的使用方式。
工具/原料
excel报表工具FineReport
1.示例之单元格
1、1模板准备在上一节模板的基础上,往单元格中添加数据,模板样式如下图:
2、我们要实现的效果是,用户技术支持一线技术支持Anna登录系统时,只能看见B1单元格,技术支持部长Alice登录系统时,只能看到B2单元格,技术支持总调度Cherry登录系统时,只能看到B3单元格。
3、2权限设置·单元格可见设置点击模板>进入权限编辑,在右侧的角色面板中选择技术支持一线技术支持,选中B2和B3单元格,在右侧的权限编辑中去掉单元格可见前面的勾选,如下图:
4、以同样的方法设置技术支持部长的权限为B1和B3单元格不可见,技术支持总调度的权限为B1和B2单元格不可见。
5、·单元格新值设置单元格新值就是同一个单元格不同角色登录可以看到的内容不一样,比如说,我们在上面模板的A1单元格中设置技术支持部长登录系统时,A1单元格显示Alice这个值,设置如下图:
6、以同样的方法设置技术支持总调度的A1单元格新值为Cherry,技术支持一线技术支持的A1单元格新值为Anna。
7、·注:删除单元格的权限,可右键清除权限。·另:由于在上面已经将模板放在数据决策系统中了,并且模板查看的权限也已经配置好,这里不再重复操作。
8、3效果查看分别用三个角色的账号登录,可以看到,技术支持一线技术支持Anna只能看到B1单元格的数据Anna,A1单元格的值显示为Anna,技术支持长部长Alice只能看到B2单元格的数据Alice,A1单元格的值显示为Alice,技术支持总调度Cherry只能看到B3单元格的数据CHerry,A1单元格的值显示为Cherry,如下图:
2.示例之控件
1、FineReport控件的权限控制支持各种控件类型,包括填报控件和表单控件。以填报控件为例:在上面模板基础上,为每个单元格后面添加一个按钮控件,如下图:
2、我们要实现的效果是填报预览模板时,技术支持一线技术支持Anna只能看到B1单元格中的数据和C1单元格的数据和控件,技术支持部长Alice只能看到B2单元格中的数据和C2单元格中的数据,对C2单元格中的控件不可见,技术支持总调度Cherry只能看到B3单元格中的数据和C3单元格中的数据和控件,但是控件不可用。
3、1 权限设置点击模板>进入权限编辑,在角色面板中选中技术支持总调度,将B1单元格到C2单元格均设为不可见,选中C3单元格,在权限编辑面板中设置控件不可用,如下图:
4、2 数据决策系统配置由于报表主体中的控件无法用分页预览查看,需要用填报预览的方式查看效果,故需要在数据决策系统中修改模板的预览方式,用管理员账号登录系统,点击管理系统>报表管理,在报表目录中选中FRTest,点击报表管理面板中权限粒度之工具栏后面的编辑按钮,修改类型为填报,如下图:
5、3效果查看分别用三个角色的账号登录系统,可以看到如下效果:
6、·注:控件设置不可见,单元格设置可见的时候,如果控件类型是单选按钮组、复选框、复选框组等等加载结束就已经初始化的控件的话,那么其单元格中的数据不会显示,加载结束就已经初始化的控件请查看控件类型
3.示例之行列隐藏
1、1权限设置点击模板>进入权限编辑,选择技术支持一线技术支持,选中第2行单元格,在右侧的权限编辑面板中勾选隐藏单选框,如下图:
2、以同样的方法设置,技术支持总调度隐藏第1行,技术支持部长隐藏第3行。
3、2效果查看分别用三个角色的账号登录系统,可以看到如下效果:
4. 示例之多sheet
1、如上示例,新增一个sheet2,其中sheet2中可以不放任何数据,保存模板,如下图:
2、1权限配置点击模板。进入权限编辑,选择技术支持一线技术支持角色,选中sheet2,在右侧的权限编辑面板中去掉可见前面的勾选,那么技术支持一线技术支持登录系统时就只能看到sheet1,如下图:
3、2效果查看分别用技术支持一线技术支持Anna和技术支持总调度Cherry登录系统,可以看到Anna只能看到sheet1,而Cherry可以看到sheet1和sheet2,如下图: