组合分析是基于数据源或是业务主题来创建的。
所以其根据来源不同需设置不同的数据权限,比如组合分析基于数据源创建,则需对其数据源进行数据权限设置。若基于业务主题创建,则需对其业务主题创建数据权限。
下面我们演示基于业务主题创建的组合分析如何设置数据权限。
1、 设置系统用户和机构的关系。
此处我们在创建用户的时候,设置其所属组即是其机构。即我们根据用户所属组的信息可以得到其机构信息。
如下图,我们设置用户test的属于组"华北"。
2、 设置数据权限。建立数据库表中的机构字段和当前用户的关联关系。
在需要设置数据权限的业务主题 的右键菜单中选择 设置数据权限。则会进入数据权限设置界面
在右侧设置区内,选择业务主题对应数据源下的"顾客"表右键选择 设置 按钮,则右侧会出现数据权限设置界面。
从左侧拖拽"顾客"表中的"区域"字段到表达式区域,然后输入等于号,再从左侧资源树下拖拽系统函数获取当前用户默认值名称CurrentUserDefaultDepartmentName()到表达式区域。如下图:
3、 (可选) 设置应用范围,此处我们设置管理员用户不受此数据权限的影响。
我们在数据权限的范围定义区域,选择用户按钮,则会弹出 用户范围 对话框。我们从左侧可选用户列表中选中"管理员"用户到被选择用户区域。
设置完成后点击 保存 按钮,则完成对数据源数据权限的设置。设置数据权限的表会有锁的显示标注。
4、 效果演示,此处我们分别使用管理员用户和test用户查看效果。
管理员用户:使用管理员用户登录选择“订单主题”创建组合分析,并选择"顾客"表中的字段。
因管理员用户不在数据权限控制范围内,因此其对应的组合分析不受数据权限控制。
test用户:使用test用户登录选择“订单主题”创建组合分析,并选择"顾客"表中的字段。
因为test用户所属组为"华北"。则我们通过数据权限会会区域字段中的华北值进行限制。
查看SQL。可以发现其SQL语句把通过函数获取到的用户所属组名称放到where条件。