Page tree
Skip to end of metadata
Go to start of metadata

1.概述



报表设计中,经常需要根据用户身份,决定显示哪些数据。

Wyn报表提供的 UserContext 表达式不仅可以取到当前登录报表系统的用户名,还可以获得用户所属角色、电子邮件地址等信息。

用户上下文

这里我们用表达式  {UserContext.GetValue("keyName ")} 来获取用户上下文,其中keyname为用户属性名,可以是系统内置的用户属性也可以使用扩展属性。

如果使用系统内置属性的话,属性与keyname对应关系如下:

  • 用户名对应“name”,即表达式为 {UserContext.GetValue("name")}
  • 角色对应"role",即表达式为 {UserContext.GetValues("role")},请注意如果keyname为“role”的话,表达式中需带有“s”。
  • 邮箱对应“email”,即表达式为 {UserContext.GetValue("email")}

如果使用扩展属性的话,将表达式中的keyname直接换成扩展属性名即可,如果扩展属性为多值属性,那么也需要在表达式中加"s"。

有关具体应用方法请见用户/组织上下文信息

组织上下文

在报表中使用组织上下文与使用用户上下文的方法类似,只是调用组织上下文信息的表达式为:

组织上下文为单值时:{UserContext.GetValue("tenant$组织属性")}

组织上下文为多值时:UserContext.GetValues("tenant$组织属性")   

有关具体应用方法请见用户/组织上下文信息


2.更多



通过定制开发安全提供程序,甚至可以获取任何有关当前用户的信息,比如所属部门、职务、业务区域等任何希望用于业务报表数据过滤的信息。获取到这些信息后,再利用扩展属性的功能进行使用。

有关自定义安全提供程序的详细信息,请参见:

编写自定义安全提供程序

配置自定义安全提供程序



  • No labels