概览
内容工具
设计报表时,经常需要根据用户的身份来决定显示哪些数据,也即根据用户的某些属性值(用户/组织上下文信息)进行数据过滤。
接下来通过示例为您介绍如何实现根据用户/组织信息上下文进行数据过滤。
(1) 添加一个用户扩展属性“大区”,并将admin的“大区”属性值改为“东北”。具体操作方法请见扩展属性。
(2) 新建报表,选择WynDemoDataV3数据源创建内嵌数据集。
将扩展属性“大区”以 {Usercontext.GetValue("大区")} 的形式传递给数据集查询参数1,然后将查询语句设置为“select * from 销售明细 where 销售大区=@查询参数1”。如下图所示。
提示
(3) 设计报表内容。比如我们使用表格组件,并绑定数据字段。
(4) 预览报表。当前用户扩展属性“大区”的值为“东北”,因此报表将销售大区为东北的数据过滤出来。
(1) 添加一个组织模型“大区组织”。
新建一个组织O1,并将O1组织的“大区组织”属性值设置为“东北”。
然后将admin加入到O1 组织中。
(2) 新建报表,选择WynDemoData数据源创建内嵌数据集。
将组织属性“大区组织”以 {Usercontext.GetValue("tenant$大区组织")} 的形式传递给数据集查询参数1,然后将查询语句设置为“select * from 销售明细 where 销售大区=@查询参数1”。如下图所示。
提示
(3) 设计报表内容。比如我们使用表格组件,并绑定数据字段。
(4) 预览报表。当前用户组织属性“大区组织”的值为“东北”,因此报表将销售大区为东北的数据过滤出来。