页面树结构

版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。

1 背景

目前,设置数据模型的行权限时,只能针对单个表/查询中的字段进行设置,如果在维表中设置了行权限,这一权限会自动应用到关联的事实表,导致事实表也受到行权限的控制。
然而,如果客户只想控制事实表的输出结果,并不想控制维表的输出结果。
目前,在设置数据模型的行权限时,只能针对单个表/查询中的字段进行设置。

如果在维表中设置了行权限,这一权限会自动应用到关联的事实表,导致事实表也受到行权限的控制。

然而,有时候如果客户只想控制事实表的输出结果,并不想控制维表的输出结果,那么就直接在事实表上设置行权限。

信息

1、需要开启数据模型引擎V2.0才能正常使用该功能。

2、如果在维表中设置了行权限,这一权限会自动应用到关联的事实表。如果不想把维表的权限应用到事实表中可以勾选:

Image Added


2 示例说明

场景描述:有4张表:客户表、贷款明细、贷款与担保关系、担保明细表

1个客户可能有0到多笔贷款、1笔贷款有0到多笔担保、1笔担保也可能是1到多笔贷款。一个客户可以有零或多笔贷款,一笔贷款可以有零或多笔担保,而一笔担保可以关联到一笔或多笔贷款

客户表数据:

贷款明细:

贷款与担保关系:

担保明细表:

...

2、在用户管理中创建另外一个用户:demo,赋予它能引用查看该模型以及基于它做的的报表的权限。


2.1 在维度表上设置行权限

在维表中设置了行权限,这一权限会自动应用到关联的事实表;根据筛选方向,能传递到的事实表均会受到行权限的控制。

...

对”客户表“来说,”贷款信息“表是它的事实表,它是”贷款信息“表的维表,  并且能通过筛选方向传递到”贷款与担保关系“表,    所有即使没有勾选维表”客户表“的字段,行权限仍然会生效。


2.2  在事实表中设置维表的行权限

1、把“贷款与担保模型” 另存一份,并且把2.1 设置的行权限删除。

...

或者直接只查看"贷款信息"表的信息,发现也只能查看”客户A、客户B“

再来查看贷款与担保信息,会发现,也只能查看:客户A、客户B的信息:
差一张图,有bug:

直接查”“客户信息”表,能查看所有客户的信息:

信息

通过示例可以看到:如果只想控制事实表的输出结果,并不想控制维表的输出结果,可以在事实表中设置行权限,并且可以设置多个字段的直接是and 或OR的关系:


3 在”高级模式“下设置行权限

在设置行权限时,选择高级模式,高级模式的逻辑与简单模式一致,在高级模式下,也能使用子图的字段进行条件控制,并且在SQL的子查询中,可以使用不在子图中表的字段。

Image Added