1 背景
目前,在设置数据模型的行权限时,只能针对单个表/查询中的字段进行设置。如果在维表中设置了行权限,这一权限会自动应用到关联的事实表,导致事实表也受到行权限的控制。查询中的字段进行设置。
如果在维表中设置了行权限,这一权限会自动应用到关联的事实表,导致事实表也受到行权限的控制,这种设置行权限的做法是最常用的做法;
然而,有时候如果客户只想控制事实表的输出结果,并不想控制维表的输出结果,那么就直接在事实表上设置行权限。
信息 |
---|
需要开启1、需要开启数据模型引擎V2.0才能正常使用该功能。 |
2 示例说明
...
2、在用户管理中创建另外一个用户:demo,赋予它能引用查看该模型以及基于它做的的报表的权限。
2.1 在维度表上设置行权限
在维表中设置了行权限,这一权限会自动应用到关联的事实表;根据筛选方向,能传递到的事实表均会受到行权限的控制。这种设置行权限的做法是最常用的做法。
1、假设我们在 ”客户表“中设置行了权限,设置行权限操作可查看:数据模型行权限。
...
或者直接只查看"贷款信息"表的信息,发现也只能查看”客户A、客户B“
直接查”“客户信息”表,能查看所有客户的信息:
通过示例可以看到:如果只想控制事实表的输出结果,并不想控制维表的输出结果,可以在事实表中设置行权限,并且可以设置多个字段的直接是and 或OR的关系。
信息 |
---|
如果在某些特殊情况下,在事实表中设置了行权限,还想控制维表的数据,这时需要在维表再设置一次行权限: 如果同时查询维表与事实表之间的字段,由于多个表之间设置的行权限是AND关系,可能会导致数据变少。这时可以勾选“权限仅作用于XX”,勾选之后,该表设置的行权限不会传递到他关联的表上,仅仅是查询这个表的字段数据时才会生效。 注意:如果要在维表设置行权限影响与之关联的事实表的时,不需要勾选“权限仅作用于XX”。 |
3 在”高级模式“下设置行权限
在设置行权限时,选择高级模式,高级模式的逻辑与简单模式一致,在高级模式下,也能使用子图的字段进行条件控制,并且在SQL的子查询中,可以使用不在子图中表的字段。
...