数据级次维得配置方法

6181
3

土豆我是马铃薯 数据达人Lv4

发表于2019-10-25 18:42

楼主
如何利用用户属性设置数据级次维
一、获取用户(机构)的属性
BI中通过设置数据级次维可以实现按照用户的组织机构或其他维度来为用户分配数据权限,通常情况下数据级次维需要与用户(或机构)的属性结合使用。
用户(或机构)在系统中有内置的属性,例如用户id,用户名,用户所在机构id,用户所在机构名称等,也可以在系统中添加用户自定义属性。如何获取用户的这些属性呢?BI为我们提供了登录者对象login。login对象有一些固定的用法:login.id获取当前登录用户的id,login.name获取当前登录用户的名称,login.orgid获取当前登录用户所在机构的id,login.orgname获取当前登录用户的名称。
我们也可以利用login对象来获取用户或机构的其他属性,例如:login.user.email来获取当前登录用户的邮箱。如果是用户自定义属性,例如:用户在系统中添加了一个用户扩展字段,字段的属性名为yhqx,利用login对象获取这个扩展字段的写法为:login.user.yhqx。如果想要获取到当前登录用户的机构其他属性,可以使用login.org.xxx的方式。

二、设置用户的数据级次维
客户需求:
为用户赋权实现每个用户登录系统,只能看到自己所在地区的数据,系统中有地区维度。
实现方式:
1. 主题集上设置地区维度为数据级次维
1. 用户与权限中设置权限
A. 为机构分配资源权限(机构下的用户可以继承机构的权限,也可以利用角色来实现批量赋权)
B. 分配数据权限
C. 更改权限数据
在高级中找到刚刚添加的数据权限,修改
注意这里参数的写法:
='EBI$6$7$VQKY9QPBSWNM64UQJOJWS15BP3QT9WLY$地区$'+login.user.email
其中:我们在上一步勾选地区后,系统自动生成的参数值为:
EBI$6$7$VQKY9QPBSWNM64UQJOJWS15BP3QT9WLY$地区$000000
我们需要将其修改为:
=’EBI$6$7$VQKY9QPBSWNM64UQJOJWS15BP3QT9WLY$地区$'+login.user.email
示例中使用了login.user.email属性,这是因为示例中用户的机构id与地区维表中的地区id并不匹配。所以我们在用户的邮箱属性中,单独维护了用户所在机构的值进去。
参数写法的含义是让用户查看数据的权限与login.user.email字段的值相匹配。
如果客户的机构id和地区维表的值相匹配,那么这里可以写成
=’EBI$6$7$VQKY9QPBSWNM64UQJOJWS15BP3QT9WLY$地区$'+login.orgid
D. bj用户登录系统,计算报表会发现,系统自动按照用户的权限查询出了数据
如果需要在报表中添加一个地区参数,并且要求,参数列表只能显示用户权限范围内的地址,可以在报表中添加“单位级次下拉框”
再次使用bj用户登录系统,查看数据,可以看到地区参数的下拉列表中只显示出了“北京”地区


最近看过此主题的会员

xzm

韩冰_2

wxw

esen_4TKLR0DZ9F

esen_4XZXE83IO7

liwm

tanxzh

esen_4Y3L5ADO80

esen_4U34TH4AZW

chenzyd

dubq

3个回答

只看楼主

辰哥 管理员

发表于2019-12-5 14:33

只看该作者

取消 关注该作者的回复

沙发

很棒的分享,谢谢大神~

wenwenwen 初学数据Lv2

发表于2022-7-19 16:50

只看该作者

取消 关注该作者的回复

板凳

请问怎么对一个用户的多个分析表批量地进行数据级次的添加

土豆我是马铃薯 数据达人Lv4

发表于2022-9-6 22:08

只看该作者

取消 关注该作者的回复

地板

wenwenwen 发表于 2022-7-19 16:50
请问怎么对一个用户的多个分析表批量地进行数据级次的添加

可以在主题集节点下设置数据级次,则当前节点下的分析表均继承此权限设置

登录后可回答问题,请登录注册

快速回复 返回顶部 返回列表

小时

全天响应

分钟

快速处理问题

工程师强势助力

明星产品
解决方案
联系合作

400咨询:400-0011-866

技术支持QQ:400-0011-866(工作日9:00-18:00)

产品建议邮箱yixin@esensoft.com

关注我们

扫TA学习更多干货

一对一专家交流

版权所有© 2006-2024 北京亿信华辰软件有限责任公司 京ICP备07017321号 京公网安备11010802016281号